我保存的图像大小有问题。假设我有一个 1028 x 960 的 JPEG,我会将文件读入位图并进行一些编辑并再次将其另存为 JPEG。图像为 514 x 480。我能做些什么使尺寸保持不变?
这是我阅读文件时的代码:
private void choosePhoto() {
generalIntent = new Intent(Intent.ACTION_GET_CONTENT);
generalIntent.setType("image/*");
startActivityForResult(generalIntent, CHOOSE_PHOTO);
}
和这个
if (requestCode == CHOOSE_PHOTO) {
cleanUpImageView();
tempImageUri[1] = data.getData();
editPhotoImg.setImageURI(tempImageUri[1]);
}
这是保存文件的代码:
private void savePhoto() {
if (editPhotoImg.getDrawable() == null) {
Toast.makeText(EditPhoto.this, "No Photo Edited", Toast.LENGTH_SHORT).show();
} else {
try {
String filePath = getOutputMediaFile(RESULT).getPath();
editPhotoImg.setDrawingCacheEnabled(true);
Bitmap b = editPhotoImg.getDrawingCache(true);
b.compress(CompressFormat.JPEG, 100, new FileOutputStream(filePath));
Toast.makeText(EditPhoto.this, "Image saved to: " + filePath,
Toast.LENGTH_SHORT).show();
} catch (Exception e) {
Toast.makeText(EditPhoto.this, "Invalid File Path", Toast.LENGTH_SHORT).show();
}
}
}
图像质量也丢失了,但我认为这可能无济于事。但我真的希望至少尺寸不会减少。提前感谢您的帮助。我很感激。