java中使用ImageIo获取图片信息


 File imgFile = new File("D:\\a.jpg");
        InputStream is = null;
        BufferedImage src = null;
        int wid = -1;
        int hig = -1;
        is = new FileInputStream(imgFile);
        src = ImageIO.read(is);
        wid = src.getWidth(); // 得到源图宽
        hig = src.getHeight();
                   src.****();
Java ImageIO提供了压缩图片的功能,可以将高分辨率的图片压缩成低分辨率的图片以减少图片的大小。以下是一个示例代码,演示如何使用ImageIO压缩图片: ```java import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; public class ImageCompressor { public static void main(String[] args) throws IOException { File inputFile = new File("input.jpg"); File outputFile = new File("output.jpg"); BufferedImage inputImage = ImageIO.read(inputFile); // 压缩比例 float compressionRatio = 0.5f; // 计算压缩后的尺寸 int newWidth = (int) (inputImage.getWidth() * compressionRatio); int newHeight = (int) (inputImage.getHeight() * compressionRatio); // 创建压缩后的图片 BufferedImage outputImage = new BufferedImage(newWidth, newHeight, inputImage.getType()); // 绘制压缩后的图片 outputImage.createGraphics().drawImage( inputImage.getScaledInstance(newWidth, newHeight, java.awt.Image.SCALE_SMOOTH), 0, 0, null ); // 写入文件 ImageIO.write(outputImage, "jpg", outputFile); } } ``` 在上面的代码,我们首先读取一个输入图片文件,并指定一个输出图片文件。然后我们计算压缩比例,根据压缩比例计算出新的图片尺寸。接着我们创建一个新的BufferedImage对象,指定新的尺寸和图片类型。最后我们使用`createGraphics()`方法获取到一个Graphics2D对象,并使用`drawImage()`方法将原始图片缩放到新的尺寸上,并绘制到新的BufferedImage对象上。最后我们使用`ImageIO.write()`方法将新的BufferedImage对象写入到输出文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值