【问题标题】:Android Image Compression Without Res Change无 Res 变化的 Android 图像压缩
【发布时间】:2015-03-04 00:25:10
【问题描述】:

我正在寻找我为 IOS 找到的解决方案 here 用于 android 应用程序。我已经开发了 IOS 应用程序,只是想知道是否有人对如何在 android 中实现这一类似目标有所了解。

我正在尝试在将图像上传到服务器之前对其进行压缩。我不需要降低分辨率,200 kb 或高达 400 kb 应该没问题,并且让手机看起来还不错。如果有人可以看看至少给我一个方向。我想我会先问这个问题,然后再深入研究我读过的一些更复杂的方法。如果有像IOS一样简单的东西那就更好了。

谢谢。

【问题讨论】:

    标签: android android-image image-compression


    【解决方案1】:

    使用 Bitmap.compress(Bitmap.CompressFormat format, int quality, OutputStream stream)Bitmap.CompressFormat.JPEG 并将质量设置为小于 100。尝试使用不同的质量值,直到在大小和质量之间取得适当的平衡。

    【讨论】:

    • 下面的代码是他的帖子的一个更多示例方法,他是第一个,所以我不得不让他接受,但是你拥有的文档和你说的 cmets 很有帮助。谢谢。
    【解决方案2】:

    试试

    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?

    【讨论】:

    • 这确实像我今天早些时候尝试过的那样有效,上面的帖子也是准确的,因为它们本质上描述的是同一件事。但是你提供了有用的代码示例,所以我必须给你接受。谢谢。
    • 第 4 行代码(Bitmap decoded = BitmapFactory...)帮助了我!谢谢!!
    猜你喜欢
    • 2017-12-11
    • 1970-01-01
    • 2015-02-24
    • 1970-01-01
    • 2011-09-21
    • 1970-01-01
    • 2021-02-01
    • 2012-05-16
    • 1970-01-01
    相关资源
    最近更新 更多