以下代码会生成更大尺寸的图像。我的原始图像200x200是6 KB。在此之后我获得了100KB的输出。
当我再次将输出再次作为输入时,它不会改变大小
File imageFile = "path to image"
BufferedImage subImage= ImageIO.read(new FileInputStream(imageFile));
BufferedImage dest = new BufferedImage(200, 200, BufferedImage.TYPE_INT_ARGB);
Graphics2D g2 = dest.createGraphics();
g2.drawImage(subImage, 0, 0, 200, 200, null);
g2.dispose();
ByteArrayOutputStream out = new ByteArrayOutputStream();
ImageIO.write(dest, "png", out);
答案 0 :(得分:0)
图像大小取决于所选的格式,压缩和频道。
与JPEG相比,PNG通常使用更大的尺寸,因为它提供 alpha通道(您在此处使用)并执行无损压缩。
在编写图像时尝试选择"JPEG"
,并检查尺寸和质量是否更符合您的需求。