繁体   English   中英

如何将SD卡中的图片以png格式保存到android画廊?

[英]How do you save an image from an SD-card to android gallery as png?

我想将图像从SD卡保存到android中的设备库中。 问题在于图像以jpeg而不是png的形式保存,并且质量下降并且看起来非常糟糕。

这是我的代码:

File sdCard = Environment.getExternalStorageDirectory();
File file = new File(sdCard, "fileName.png");
Bitmap top = BitmapFactory.decodeFile(file.getPath());
MediaStore.Images.Media.insertImage(getContentResolver(), top, "someText" , "someDescription");
Toast toast = Toast.makeText(getBaseContext(), "Image saved to gallery", Toast.LENGTH_SHORT);
toast.show();

为什么将图像保存为jpeg,如何保存而不损失质量? 顺便说一句-SD卡上的图像质量非常好,如果我将图像添加到意图中并通过电子邮件发送,则质量非常好。

您可以使用此代码将图片保存为png格式。

Bitmap bitmap = createYourBitmap();
OutputStream stream = new FileOutputStream("/sdcard/test.png");
/* Write bitmap to file using JPEG or PNG and 80% quality hint for JPEG. */
bitmap.compress(CompressFormat.PNG, 80, stream);
stream.close();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM