1

画像をblob型としてデータベースに書き込みたい。しかし、この画像をデータベースからロードすると、ソース画像とは異なります。次のようにソースイメージをデータベースに書き込みます。

  ByteArrayOutputStream bs = new ByteArrayOutputStream();
Bitmap medBmp = BitmapFactory.decodeStream(this.getResources().openRawResource(R.drawable.source_image));
            medBmp.compress(Bitmap.CompressFormat.JPEG, 100, bs);
            initialValues.put(IMAGE_COL,bs.toByteArray());  

そしてここに画像があります

ソース画像: ここに画像の説明を入力してください

画像はデータベースから読み込まれます ここに画像の説明を入力してください

ソース画像の背景は透明ですが、dbから読み込まれた画像の背景は黒です。なぜそれらが異なるのですか?私のコードの何が問題になっていますか?

助けてください、どうもありがとうございました。

4

1 に答える 1

7

画像をJPEGとして保存していますが、JPEGは透明度をサポートしていません。だから、あなたはその黒い背景を得るでしょう。PNG形式を使用してみてください。

于 2012-07-20T03:23:38.183 に答える