Java android更好的保存图像选项?

Java android更好的保存图像选项?,java,android,Java,Android,目前,我正在使用压缩方法将android手机上摄像头硬件拍摄的图像保存到SD卡 try { BitmapFactory.Options options=new BitmapFactory.Options(); options.inSampleSize = 10; Bitmap myImage = BitmapFactory.decodeByteArray(imageData, 0, imageData.length,options); fileOutputStream = new FileOu

目前,我正在使用压缩方法将android手机上摄像头硬件拍摄的图像保存到SD卡

try {
BitmapFactory.Options options=new BitmapFactory.Options();
options.inSampleSize = 10;
Bitmap myImage = BitmapFactory.decodeByteArray(imageData, 0,
imageData.length,options);

fileOutputStream = new FileOutputStream(
sdImageMainDirectory.toString() +"/"+fileName+".png");

BufferedOutputStream bos = new BufferedOutputStream(
fileOutputStream); 
myImage.compress(CompressFormat.PNG, 100, bos);
bos.flush();
bos.close();
现在这一切都很好,然而,它保存的图像质量很难让它值得一拍。我正在寻找一种更好的方法,以更高的质量保存图片

options.inSampleSize = 10;
这是您的质量损失:这将创建一个1/10英寸

从文档:

如果设置为大于1的值,则请求解码器对原始数据进行二次采样 图像,返回较小的图像以节省内存。样本量为 任一维中对应于单个像素的像素数 解码位图中的像素。例如,inSampleSize==4返回一个 图像的宽度/高度为原稿的1/4,宽度/高度为原稿的1/16
像素数。你确定原始图片质量好吗?保存为PNG。。您正在将映像压缩到最大容量。。ie 100%。。试试较小的值。@blackbelt:应用程序正在用droid手机上的摄像头硬件拍照。所以,是的,原始图片的质量很好。@userSeven7s:Negative。将其更改为较低的数字不会对质量产生好的影响,事实上,这会使质量更差。@userSeven7s 100表示压缩以获得最高质量,请查看dochanks。新的眼睛有帮助,我想我误解了inSampleSize到底在做什么。认为压缩质量越高,数字越大越好。。但我错了:P