将图像保存到sqlite数据库有什么问题?
问题描述:
我想以blob类型将图像写入数据库。但是当我从数据库加载这个图像时,它与源图像不同。我写的源图像到数据库如下:将图像保存到sqlite数据库有什么问题?
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加载具有黑色背景。为什么它们不同?我的代码有什么问题?
请帮助我,谢谢你。
答
您正在将图像保存为JPEG,而JPEG不支持透明度。所以,你会得到那个黑色的背景。尝试使用PNG格式。
谢谢你,它的工作原理。很简单,但为我节省了大量的时间。 – MichaelP 2012-07-20 03:26:16