SQLiteDatabase から画像 (.png) を取得し、このコードを使用して bytearray をビットマップにデコードしています。
Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
options.inDither = true;
options.inScaled = true;
options.inDensity = 240;
options.inTargetDensity = metrics.densityDpi;
Bitmap bmp = BitmapFactory.decodeStream(new ByteArrayInputStream(imageAsBytes), null, options);
ご覧のとおり、画像 (3) は (2) のようになるはずですが、そうではありません。
1)
= 縮尺なしの画像 (metrics.densityDpi = 240);
2)
= 上記と同じ .png ですが、res/drawable でコンパイルされています。
3)
= ダウン スケールのイメージ (metrics.densityDpi = 120);
も試しoptions.inDither = false;ましたが、違いはわかりません。
では、私のコードの何が問題なのですか?