【问题标题】:How to reduce the size of image in java如何在java中减小图像的大小
【发布时间】:2014-10-30 13:47:29
【问题描述】:

请帮助一些人如何减少java中图像的大小

我的问题是

我将一张图像作为 java 程序的输入并将输出作为 .bmp 图像

为了创建新图像,我使用以下代码

for (int i = 0; i < width; i++)     
         {    
              for (int j = 0; j < height; j++)   
              {  
                Color c = new Color(color2[i][j], color2[i][j], color2[i][j]);  
                image1.setRGB(i, j, c.getRGB());   
              }     
          }   
ImageIO.write(image1, "bmp", new File("hh5_binary_Adjust.bmp"));

但如果我使用上面的代码,我将获得 6.5 mb 大小的 A4 尺寸纸张 所以请帮我在不修改bmp文件扩展名的情况下获得最小长度的图像

【问题讨论】:

  • Resizing a bitmap 的可能重复项
  • 您不能神奇地压缩不支持压缩的格式。使用 PNG。
  • @DavidPostill 我认为您提供的那个是关于缩放图像,而这个是关于降低图像的大小(内存)。
  • @CodingChief 可能是......它可能是关于......这个问题有点不清楚。 OP 想要减小文件大小,但是降低分辨率或更改格式是否可以接受并不明显。 (显然其中一个最好是可以接受的......)
  • 如果你在两个方向上将其缩放 50%,它的大小(内存)将缩小大约 4 倍......

标签: java image size reduce


【解决方案1】:

如果您想降低分辨率,没有一个很好的方法可以做到这一点并在不使用外部库的情况下获得非常清晰的输出图像。我推荐imgscalr。我用它取得了非常好的结果。

但请注意,文件较大的主要原因是您使用 BMP 作为输出格式!如果您更改它,您将轻松且廉价地大幅减小文件大小。我会用 JPG 来处理照片,或者用 PNG 来处理图形。

ImageIO 类将保存给任何一个没有问题的人。

【讨论】:

    猜你喜欢
    • 2018-03-06
    • 1970-01-01
    • 2020-08-27
    • 2012-08-09
    • 1970-01-01
    • 1970-01-01
    • 2016-05-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多