Android_Bitmap_图片的二次采样并生成缩略图
2015-06-09 17:25
453 查看
Android系统支持几种图片(.png (preferred), .jpg (acceptable), .gif (discouraged)), 其中Bitmap位图#ffffffff,包括图片透明度Alpha和RGB,图片质量很好,每一个像素位占4个字节,如果图片很大将会占据很大的内存空间。存储在SDCard的image很小,加载进内存可能就会很大。因此,对bitmap图像进行操作,应该特别小心,可能出现内存溢出问题。为此对于大图片,应该引入该图片的二次采样生成缩略图。
首先尝试通过字节数组或者流,只去加载图片的外边缘,此时必须指定BitmapFactory.Options 的inJustDecodeBounds成员名,将其只为true,一旦设置为true,BitmapFactory解码后返回值为null,通过Options的outHeight和outWidth可以获得图片的宽高。然后根据大小制定合适的缩放比例,通过options.inSampleSize,大大降低加载图片导致内存溢出的风险!
首先尝试通过字节数组或者流,只去加载图片的外边缘,此时必须指定BitmapFactory.Options 的inJustDecodeBounds成员名,将其只为true,一旦设置为true,BitmapFactory解码后返回值为null,通过Options的outHeight和outWidth可以获得图片的宽高。然后根据大小制定合适的缩放比例,通过options.inSampleSize,大大降低加载图片导致内存溢出的风险!
相关文章推荐
- [Android] 图片裁剪总结——调用系统裁剪
- Android布局中ScrollView与ListView的冲突的方法
- Unable to execute dex: Multiple dex files define 解决方法
- Android Studio 获取数字签名的方法
- 可望不可及的开源:Google是如何逐步牢牢控制开源系统Android的?(下)
- 如何调试分析Android中发生的tombstone
- Android 线性布局(LinearLayout)性能相关
- Android zxing二维码扫描 扫描框适应各种分辨率
- Android中自动跳转到系统设置界面
- android editText 软键盘enter键图标的设置
- android 反编译初级
- Android 4.1 systrace使用方法(一)
- android addr2line + objdump定位crash 问题
- java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.badlogic.androidgames.
- Android中使用代码截图的各种方法总结
- android 一些开源项目
- 初识Android遇到的小问题
- android:descendantFocusability用法简析
- Android总结之drawable(hdpi,mdpi,ldpi)文件夹的使用
- Android JNI 数据类型转换