проблема: когда сохранить рисованный или растровое изображение на SDCard? - PullRequest
2 голосов
/ 08 декабря 2011

Я пытаюсь сохранить изображение на SD-карте как:

Bitmap bitmap=Bitmap.createBitmap(400, 300, Bitmap.Config.ARGB_8888);
Canvas canvas=new Canvas(bitmap);
imageView.draw(canvas);


 file = new File(folder, "temp.jpg");
 try {
        outStream = new FileOutputStream(file);
        bitmapP.compress(Bitmap.CompressFormat.JPEG, 100, outStream);
        outStream.flush();
        outStream.close();
        return file.toString();

    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        return null;

    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        return null;

    }

Теперь я получаю изображение как:

Bitmap bitmap = BitmapFactory.decodeFile(image);

У меня есть растровое изображение, но качество моего растрового изображения ухудшается ... Что я делаю не так?

Кто-нибудь может мне помочь? спасибо

Ответы [ 2 ]

2 голосов
/ 08 декабря 2011

JPEG не является форматом без потерь.Это нормально, что он немного размыт.Другие варианты: Bitmap.CompressFormat.WEBP & Bitmap.CompressFormat.PNG

0 голосов
/ 08 декабря 2011

попробуйте получить растровое изображение из файла следующим образом:

      bitmap= BitmapFactory.decodeStream(file.toURL().openStream());

надеюсь, это поможет вам!если вы еще не нашли ответ!

...