我正在动态添加Image&捕获照片的文本视图。下面是我添加视图后保存照片的代码。拍摄的照片尺寸为1.3MB(照片由300万像素相机拍摄)但保存的照片尺寸仅为50KB。如何增加结果文件大小以获得最大分辨率?
photoLayout.setDrawingCacheEnabled(true);
Bitmap b = Bitmap.createBitmap(photoLayout.getDrawingCache());
photoLayout.setDrawingCacheEnabled(false);
FileOutputStream fos = new FileOutputStream(path);
b.compress(CompressFormat.PNG, 100, fos);
fos.close();
答案 0 :(得分:0)
从位图格式转换为PNG格式会减小文件大小。查看输出图像是否具有所需的分辨率。位图格式是一种非压缩格式,用于存储有关图像每个像素的信息。
答案 1 :(得分:0)
答案 2 :(得分:0)
如果您的文件只有50k,请检查源位图 - 您可以使用图像缩略图而不是原始图像。如果您加载一个大文件但没有调整大小,则没有理由获得这么小的文件。文件大小应与原始文件大小相似。
你可以发布加载位图的代码吗?我几乎可以肯定你加载了缩略图!
编辑: 要从相机获取照片:Capture Image from Camera and Display in Activity