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是无损的,所以我的代码中是否有什么东西导致图像无法读取


提前谢谢

您是否解决了您的问题?仍然面临相同的问题图像不可读。我没有解决这个问题,但是这个项目暂时搁置,因为我不知道如何停止压缩。