java图片缩放
来源:互联网 发布:天津网络歌曲 编辑:程序博客网 时间:2024/05/21 10:02
import java.awt.Graphics2D;import java.awt.geom.AffineTransform;import java.awt.image.BufferedImage;public final class ImageUtil {// 图片缩放。public static BufferedImage reSize(BufferedImage srcBufImage, int width,int height) {BufferedImage bufImg = new BufferedImage(width,height, BufferedImage.TYPE_INT_RGB);// 计算图片缩放比例float widthBo = (float) width / (float) srcBufImage.getWidth();float heightBo = (float) height / (float) srcBufImage.getHeight();AffineTransform transform = new AffineTransform(); transform.setToScale(widthBo, heightBo); // 根据原始图片生成处理后的图片。 //AffineTransformOp ato = new AffineTransformOp(transform, null); //ato.filter(srcBufImage, bufImg); Graphics2D g = (Graphics2D) bufImg.createGraphics();g.drawImage(srcBufImage, transform, null);g.dispose();return bufImg;}}
根据要缩放的宽度和高度分别除以原图像的宽度和高度得到缩放比例。
创建BufferedImage,得到它的Graphics2D对象,然后调用Graphics2D的
public abstract boolean drawImage(Image img, AffineTransform xform, ImageObserver obs)
- 呈现一个图像,在绘制前进行从图像空间到用户空间的转换。从用户空间到设备空间的转换使用
Graphics2D
中当前的Transform
完成。在应用Graphics2D
上下文中的 transform 属性之前,指定的转换被应用到图像。应用的呈现属性包括Clip
、Transform
和Composite
属性。注意,如果指定的转换不可逆,则不会完成呈现。- 参数:
img
- 要呈现的指定图像。如果img
为 null,则此方法不执行任何动作。xform
- 从图像空间到用户空间的转换obs
- 转换了多个Image
时要通知的ImageObserver
将转换后的图像画到BufferedImage。
不知为何,
// AffineTransformOp ato = new AffineTransformOp(transform, null);
// ato.filter(srcBufImage, bufImg);
这样会报错:抛出ImagingOpException异常。
- Java的图片缩放
- 使用java图片缩放
- java缩放图片
- Java的图片缩放
- java 图片缩放
- JAVA图片缩放类
- Java图片缩放类
- Java图片缩放
- 缩放图片 java
- Java图片缩放代码
- Java 图片缩放
- java 图片缩放
- java图片缩放
- java 图片压缩 缩放
- java图片高保真缩放
- Java图片缩放类
- Java图片缩放类
- java 缩放图片类
- C#实现对excel单元格的存取
- list反转
- HTTP协议详解
- 数据概要技术与FM Sketch方法
- extjs表格插件详解
- java图片缩放
- JS跨域访问操作iframe
- content based routing based on header value
- jsp基础知识点详解
- 【XP系统的网络设置技巧】
- MFC ListControl用法
- im2double和double函数的区别
- git源码管理初学笔记整理
- 百万级访问网站前期的技术准备