私の Android アプリケーションは、画像を読み込み、何らかの処理を行い、処理された画像を SD カードに保存します。バッファを使用する代わりに、一時ファイルを SD カードに保存します。たとえば、背景の読み取り、画像のスクロール、注釈の描画、保存された一時ファイルで背景と注釈をマージして次の背景として使用するなどです。典型的なスニペット:
bitmap = Bitmap.createBitmap(imageSizeX, imageSizeY, Bitmap.Config.ARGB_8888);
ビットマップ = BitmapFactory.decodeFile(パス、オプション);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, 出力);
すべて正常に動作しますが、場合によっては、保存された画像に次の記事で説明されているようなノイズが追加されることがあります: ビットマップのサイズ変更と回転: 線形ノイズ
引用された投稿の著者は、サブサンプリングによって問題を解決しましたが、私はそれをしたくありません。
私はここで提案された解決策を試しました: http://www.curious-creature.org/2010/12/08/bitmap-quality-banding-and-dithering/#more-1218 : getWindow().setFormat(PixelFormat.TRANSLUCENT); 32ビットを強制します。
これはあまり変わりません。ディザ フラグを設定しても設定しなくても、あまり変わらないようです。他のアイデアはありますか?