【发布时间】:2013-12-20 04:48:19
【问题描述】:
我正在制作一个应用程序,在其中一项活动中我从图库中获取图像并将其显示在适配器中,如下图所示
我必须旋转该图像并将其保存到 SD 卡。我的代码运行良好,但将其保存到 sdcard 后,图像质量非常差。我的代码是:
viewHolder.imgViewRotate.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
imagePosition = (Integer) v.getTag();
Matrix matrix = new Matrix();
matrix.postRotate(90);
Bitmap rotated = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), matrix, true);
try {
FileOutputStream out = new FileOutputStream(new File(uriList.get(rotatePosition).toString()));
rotated.compress(Bitmap.CompressFormat.PNG, 100, out);
out.close();
} catch (Exception e) {
e.printStackTrace();
}
notifyDataSetChanged();
}
});
任何建议都会有很大帮助。
【问题讨论】:
-
尝试将压缩比从 100 降低到 50
-
图像仍然失真
-
@Raghunandan 有什么建议吗??
标签: android