我尝试使用位图工厂选项 inScaled、inDensity、inTargetDensity 来缩放位图。例如,如果我的位图大小为 960 X 600,我想放大到 1440 X 900 的大小。所以我将密度设置为 2,目标密度设置为 3。返回的位图大小与第一个返回的大小相同decodeByteArray 函数。位图未根据密度因子进行缩放。我的代码有什么问题?
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeByteArray(imageData, 0, size, options);
int bmpWidth = options.outWidth;
int bmpHeight = options.outHeight;
options.inDensity = 2;
options.inTargetDensity = 3;
options.inPurgeable = true;
options.inInputShareable = true;
options.inScaled = true;
options.inJustDecodeBounds = false;
Bitmap bitmap = BitmapFactory.decodeByteArray(imageData, 0, size, options);
int scaledBmpWidth = bitmap.getWidth();
int scaledBmpHeight = bitmap.getHeight();