我通过 -
将应用的屏幕截图保存到图库//screenshot
private void screenshot()
{
Uri photo = lomography();
String photopath = photo.getPath();
try {
MediaStore.Images.Media.insertImage(getContentResolver(), photopath, "name" , "desc");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
存储在照相机上的图像质量很高:
但是当我导航到Gallery并打开相同的照片时,这是具有多种压缩工件的低JPEG版本:
为什么当原始文件是PNG时,图库会成为JPEG版本? 如何将高分辨率版本保存到图库?
我read here诀窍在'使用ContentResolver :: insert注册图像'。
但我正在使用getContentResolver。
答案 0 :(得分:1)
要解决此问题,请打开" MediaStore.Images.Media.insertImage"方法,将您需要的代码复制并粘贴到您自己的类中,然后将图像压缩为50%将其更改为100%。
答案 1 :(得分:-2)
这就是答案。 我的意思是'这个'是代码中缺少的部分。
而不是'MediaStore.Images.Media.insertImage( getContentResolver ()'。 我应该使用MediaStore.Images.Media.insertImage( this.getContentResolver ()
问题解决了。