我有一个加载的Bitmap,我想转换为将配置设置为Bitmap.Config.RGB_565.在Bitmap已经加载到内存中后,是否有一种将Bitmap转换为此配置的简单方法?例如,下面我有一个从应用程序资源解码的位图,但是,如何将已经加载的Bitmap转换为RGB_565?我相信这很简单,我对Bitmaps的工作相当新鲜,经过几个小时的在线观看,不幸的是找不到我需要的具体内容.
BitmapFactory.Options options = new BitmapFactory.Options(); options.inPreferredConfig=Bitmap.Config.RGB_565 bitmap=BitmapFactory.decodeResource(getResources(),R.drawable.myphoto,options);
解决方法
我没有测试过,但它应该工作:
private Bitmap convert(Bitmap bitmap,Bitmap.Config config) { Bitmap convertedBitmap = Bitmap.createBitmap(bitmap.getWidth(),bitmap.getHeight(),config); Canvas canvas = new Canvas(convertedBitmap); Paint paint = new Paint(); paint.setColor(Color.BLACK); canvas.drawBitmap(bitmap,paint); return convertedBitmap; }
Bitmap convertedBitmap = convert(bitmap,Bitmap.Config.RGB_565);
如果您使用带有矩阵的drawBitmap,则可以进行各种其他转换,如旋转,拉伸等.