图片缩放
来源:互联网 发布:lol for mac 编辑:程序博客网 时间:2024/06/16 12:06
# 缩放加载大图片 #
思路:
[1]获取图片的分辨率 2400 * 3200
[2]获取手机的分辨率 320 * 480
[3]计算缩放比 宽 : 7 高 : 6 高正好
按照大的去缩放
实现步骤
[1]获取手机的分辨率
WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
int width = wm.getDefaultDisplay().getWidth();
int height = wm.getDefaultDisplay().getHeight();
[2]获取图片的分辨率
//[2]创建位图工厂的配置参数
BitmapFactory.Options opts = new Options();
//不去真正的解析位图 返回null 但是还能够获取图片的宽和高的信息
opts.inJustDecodeBounds = true;
BitmapFactory.decodeFile("/mnt/sdcard/dog.jpg",opts);
//[3]获取图片的宽和高
int imgWidth = opts.outWidth;
int imgHeight = opts.outHeight;
System.out.println("图片的宽:"+imgWidth+"----"+imgHeight);
[3]计算缩放比
int scale = 1; //定义变量 就是我们的缩放比
int scaleX = imgWidth/width;
int scaleY = imgHeight/height;
if (scaleX>=scaleY && scaleX>scale) {
scale = scaleX;
}
if (scaleY > scaleX && scaleY >scale) {
scale = scaleY;
}
[4]按照缩放比去加载图片
//[5]按照我们计算出来的缩放比进行显示
opts.inSampleSize = scale;
//[6]开始真正的解析位图
opts.inJustDecodeBounds = false;
Bitmap bitmap = BitmapFactory.decodeFile("/mnt/sdcard/dog.jpg",opts);
//[7]显示到iv上
iv.setImageBitmap(bitmap);
思路:
[1]获取图片的分辨率 2400 * 3200
[2]获取手机的分辨率 320 * 480
[3]计算缩放比 宽 : 7 高 : 6 高正好
按照大的去缩放
实现步骤
[1]获取手机的分辨率
WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
int width = wm.getDefaultDisplay().getWidth();
int height = wm.getDefaultDisplay().getHeight();
[2]获取图片的分辨率
//[2]创建位图工厂的配置参数
BitmapFactory.Options opts = new Options();
//不去真正的解析位图 返回null 但是还能够获取图片的宽和高的信息
opts.inJustDecodeBounds = true;
BitmapFactory.decodeFile("/mnt/sdcard/dog.jpg",opts);
//[3]获取图片的宽和高
int imgWidth = opts.outWidth;
int imgHeight = opts.outHeight;
System.out.println("图片的宽:"+imgWidth+"----"+imgHeight);
[3]计算缩放比
int scale = 1; //定义变量 就是我们的缩放比
int scaleX = imgWidth/width;
int scaleY = imgHeight/height;
if (scaleX>=scaleY && scaleX>scale) {
scale = scaleX;
}
if (scaleY > scaleX && scaleY >scale) {
scale = scaleY;
}
[4]按照缩放比去加载图片
//[5]按照我们计算出来的缩放比进行显示
opts.inSampleSize = scale;
//[6]开始真正的解析位图
opts.inJustDecodeBounds = false;
Bitmap bitmap = BitmapFactory.decodeFile("/mnt/sdcard/dog.jpg",opts);
//[7]显示到iv上
iv.setImageBitmap(bitmap);
阅读全文
0 0
- 图片缩放
- 图片缩放
- 图片缩放
- 图片缩放
- 图片缩放
- 缩放图片
- 缩放图片
- 图片缩放
- 图片缩放
- 图片缩放
- 缩放图片
- 缩放图片
- 图片缩放
- 图片缩放
- 图片缩放
- 缩放图片
- 图片缩放
- 图片缩放
- Android与Html5交互第一篇章
- IT运维工程师们为什么选择使用Linux系统
- 大话数据结构 code 第三章 03静态链表_StaticLinkList
- UNIQUE 约束
- 懒癌必备-dplyr和data.table让你的数据分析事半功倍
- 图片缩放
- 学习vue
- Django 模版 各种实用方法
- POJ 2418 Hardwood Species
- 图处理:rigraph实现边介数社区发现算法(GN)
- 未能正确加载“ProviderPackage”包。
- 想要自己运营astgo网络电话系统,必须要掌握以下基本技术
- 大话数据结构 code 第四章 01顺序栈_Stack
- 一道笔试题引发的一系列js类型转换的坑