Android compress(compressFormat.PNG,100,fout)压缩捕获的图像并使其不可读
我目前正在制作一个应用程序,允许用户拍摄图像,然后将其保存到设备内存中。拍摄图像并保存的动作很好,但是我的问题是保存到内存中的图像被压缩,变得不可读 下面是一段代码,一旦捕获图像,它就会将其保存到文件位置Android compress(compressFormat.PNG,100,fout)压缩捕获的图像并使其不可读,android,image,bitmap,android-camera,Android,Image,Bitmap,Android Camera,我目前正在制作一个应用程序,允许用户拍摄图像,然后将其保存到设备内存中。拍摄图像并保存的动作很好,但是我的问题是保存到内存中的图像被压缩,变得不可读 下面是一段代码,一旦捕获图像,它就会将其保存到文件位置 protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == CAPTURE_IMAGE_CAPTURE_CODE) { i
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAPTURE_IMAGE_CAPTURE_CODE)
{
if (resultCode == RESULT_OK)
{
Bundle extras = data.getExtras();
// get bitmap
pic = (Bitmap) extras.get("data");
imageView1.setImageBitmap(pic);
String file_path = Environment.getExternalStorageDirectory().getAbsolutePath() +"/MyReceiptTracker";
File dir = new File(file_path);
File file = new File(dir,pic + ".png");
try {
fOut = new FileOutputStream(file);
pic.compress(CompressFormat.PNG, 100, fOut);
fOut.flush();
fOut.close();}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Toast.makeText(this, "Image Captured and Saved", Toast.LENGTH_LONG).show();
}
else if (resultCode == RESULT_CANCELED)
{
Toast.makeText(this, "Cancelled", Toast.LENGTH_LONG).show();
}
}
}
我的问题是:是否可以保存到一个文件,而不导致压缩,使文件无法读取?。我知道PNG是无损的,所以我的代码中是否有什么东西导致图像无法读取
提前谢谢 您是否解决了您的问题?仍然面临相同的问题图像不可读。我没有解决这个问题,但是这个项目暂时搁置,因为我不知道如何停止压缩。