Android 不改变分辨率的图像压缩
Android Image Compression Without Res Change
我正在寻找我为 android 应用程序 IOS 找到的 here 解决方案。我已经开发了 IOS 个应用程序,只是想知道是否有人对如何在 android.
中实现类似的目标有所了解
我试图在将图像上传到服务器之前压缩图像。我不需要降低分辨率,200 kb 或最多 400 kb 应该没问题,并且让 phone 看起来还不错。如果有人可以看看至少给我一个方向。我想在深入研究一些我已经阅读过的更复杂的方法之前,我会先问这个问题。如果有IOS这么简单的东西就更好了。
谢谢。
尝试
Bitmap original = BitmapFactory.decodeStream(getAssets().open("1024x768.jpg"));
ByteArrayOutputStream out = new ByteArrayOutputStream();
original.compress(Bitmap.CompressFormat.PNG, 100, out);
Bitmap decoded = BitmapFactory.decodeStream(new ByteArrayInputStream(out.toByteArray()));
来自 How to make Bitmap compress without change the bitmap size?
使用 Bitmap.compress(Bitmap.CompressFormat format, int quality, OutputStream stream) 和 Bitmap.CompressFormat.JPEG
并将质量设置为小于 100。尝试使用不同的质量值,直到在大小和质量之间取得正确的平衡。
我正在寻找我为 android 应用程序 IOS 找到的 here 解决方案。我已经开发了 IOS 个应用程序,只是想知道是否有人对如何在 android.
中实现类似的目标有所了解我试图在将图像上传到服务器之前压缩图像。我不需要降低分辨率,200 kb 或最多 400 kb 应该没问题,并且让 phone 看起来还不错。如果有人可以看看至少给我一个方向。我想在深入研究一些我已经阅读过的更复杂的方法之前,我会先问这个问题。如果有IOS这么简单的东西就更好了。
谢谢。
尝试
Bitmap original = BitmapFactory.decodeStream(getAssets().open("1024x768.jpg"));
ByteArrayOutputStream out = new ByteArrayOutputStream();
original.compress(Bitmap.CompressFormat.PNG, 100, out);
Bitmap decoded = BitmapFactory.decodeStream(new ByteArrayInputStream(out.toByteArray()));
来自 How to make Bitmap compress without change the bitmap size?
使用 Bitmap.compress(Bitmap.CompressFormat format, int quality, OutputStream stream) 和 Bitmap.CompressFormat.JPEG
并将质量设置为小于 100。尝试使用不同的质量值,直到在大小和质量之间取得正确的平衡。