我想在我的应用中编辑相机拍摄的照片。在拍摄照片并将图片保存到画廊方面,一切都正常工作;但是,我希望在保存之前获取该图片,以便我可以在其上叠加徽标。我的想法是在活动结果中运行这段代码:
/* Decode the JPEG file into a Bitmap */
Bitmap bitmap = BitmapFactory.decodeFile(mCurrentPhotoPath, bmOptions);
然后创建另一个带有我的徽标的位图,并在第一个位图上叠加。然而,图片和可绘制的源太大而无法解码为位图,我得到OutOfMemoryError
。我不想缩小我的图像,因为它必须是高分辨率的图像。现在的方法是什么?
答案 0 :(得分:0)
在Manifest文件中设置Android:LargeHeap =“true”选项。并且只有在有足够的可用内存时才允许图像加载操作。 (这个参数可用,我认为只有自Android 3.0以来)
没有魔力。如果图像超出可用内存,则可以读取和编辑图像的某些部分。但这并不是处理图像的最便捷方式。