android – 如何使用BitmapFactory.decode *()指定位图格式(例如RGBA_8888)?

我正在对BitmapFactory.decodeFile()和BitmapFactory.decodeResource()进行几次调用,我想指定将位图解码为如RGB_565或RGBA_8888的格式.

目前,解码的位图格式似乎取决于输入图像.或者,是否有一种将现有位图转换为特定格式的方法

原因很重要的是,当我尝试使用jnigraphics解码图像时,一些图像返回一个类型为ANDROID_BITMAP_FORMAT_NONE的AndroidBitmap格式,我认为这是无用的.有没有人有更深入的了解为什么格式不是已知的值?当这种情况发生时,内置的图像选择器会正确显示以这种方式解码的图像,因此我认为必须有一种处理方法.

感谢您的输入!

解决方法

这可能是您正在寻找的:
BitmapFactory.Options op = new BitmapFactory.Options();
op.inPreferredConfig = Bitmap.Config.ARGB_8888;
bitmap = BitmapFactory.decodeFile(path,op);

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...