【问题标题】:Compress image using JPEG Lossless and convert the image to Base64Encoded String使用JPEG无损压缩图像并将图像转换为Base64Encoded String
【发布时间】:2013-11-20 09:18:24
【问题描述】:

我们需要压缩一个大小约为 50 KB - 75 KB 的图像,限制在 25 KB 以内。我们遵循http://examples.javacodegeeks.com/desktop-java/imageio/compress-a-jpeg-file/ 中给出的示例。通过将质量指定为 0.1f,我们能够将图像的大小减小到 25 KB 以下。但是图像失去了它的质量。

我们需要您的建议:

  1. 我们如何将图像压缩到 25 KB 以内而不损失质量?
  2. 压缩后,我们将图像字节数组转换为 Base64Encoded String。在此之后,字符串内容超过了 25KB 的大小限制。我怎样才能控制这个尺寸呢?

我们需要您的帮助来解决这个问题。请帮忙。

【问题讨论】:

  • 您的要求听起来有些不切实际。在大多数情况下,这种幅度(50%-66% 之间)的压缩肯定是有损的。

标签: java image lossless-compression


【解决方案1】:

JPEG 不支持无损压缩。您最好的选择是使用新的Google WebP format。它压缩得很好并且是无损的。将其转换为 Base64 是没有意义的。当您试图使数据尽可能小时,这是一个荒谬的操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-22
    • 1970-01-01
    • 2018-09-14
    • 1970-01-01
    • 1970-01-01
    • 2011-02-07
    相关资源
    最近更新 更多