10032---java实现图片裁剪缩放工具类
来源:互联网 发布:什么叫编程语言 编辑:程序博客网 时间:2024/05/22 00:23
原文
BufferedImage处理图片及创建图片
package out; import java.awt.Image; import java.awt.Rectangle; import java.awt.geom.AffineTransform; import java.awt.image.AffineTransformOp; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Iterator; import javax.imageio.ImageIO; import javax.imageio.ImageReadParam; import javax.imageio.ImageReader; import javax.imageio.stream.ImageInputStream; public class ImageHelper { /* * 根据尺寸图片居中裁剪 */ public static void cutCenterImage(String src,String dest,int w,int h) throws IOException{ Iterator iterator = ImageIO.getImageReadersByFormatName("jpg"); ImageReader reader = (ImageReader)iterator.next(); InputStream in=new FileInputStream(src); ImageInputStream iis = ImageIO.createImageInputStream(in); reader.setInput(iis, true); ImageReadParam param = reader.getDefaultReadParam(); int imageIndex = 0; Rectangle rect = new Rectangle((reader.getWidth(imageIndex)-w)/2, (reader.getHeight(imageIndex)-h)/2, w, h); param.setSourceRegion(rect); BufferedImage bi = reader.read(0,param); ImageIO.write(bi, "jpg", new File(dest)); } /* * 图片裁剪二分之一 */ public static void cutHalfImage(String src,String dest) throws IOException{ Iterator iterator = ImageIO.getImageReadersByFormatName("jpg"); ImageReader reader = (ImageReader)iterator.next(); InputStream in=new FileInputStream(src); ImageInputStream iis = ImageIO.createImageInputStream(in); reader.setInput(iis, true); ImageReadParam param = reader.getDefaultReadParam(); int imageIndex = 0; int width = reader.getWidth(imageIndex)/2; int height = reader.getHeight(imageIndex)/2; Rectangle rect = new Rectangle(width/2, height/2, width, height); param.setSourceRegion(rect); BufferedImage bi = reader.read(0,param); ImageIO.write(bi, "jpg", new File(dest)); } /* * 图片裁剪通用接口 */ public static void cutImage(String src,String dest,int x,int y,int w,int h) throws IOException{ Iterator iterator = ImageIO.getImageReadersByFormatName("jpg"); ImageReader reader = (ImageReader)iterator.next(); InputStream in=new FileInputStream(src); ImageInputStream iis = ImageIO.createImageInputStream(in); reader.setInput(iis, true); ImageReadParam param = reader.getDefaultReadParam(); Rectangle rect = new Rectangle(x, y, w,h); param.setSourceRegion(rect); BufferedImage bi = reader.read(0,param); ImageIO.write(bi, "jpg", new File(dest)); } /* * 图片缩放 */ public static void zoomImage(String src,String dest,int w,int h) throws Exception { double wr=0,hr=0; File srcFile = new File(src); File destFile = new File(dest); BufferedImage bufImg = ImageIO.read(srcFile); Image Itemp = bufImg.getScaledInstance(w, h, bufImg.SCALE_SMOOTH); wr=w*1.0/bufImg.getWidth(); hr=h*1.0 / bufImg.getHeight(); AffineTransformOp ato = new AffineTransformOp(AffineTransform.getScaleInstance(wr, hr), null); Itemp = ato.filter(bufImg, null); try { ImageIO.write((BufferedImage) Itemp,dest.substring(dest.lastIndexOf(".")+1), destFile); } catch (Exception ex) { ex.printStackTrace(); } } }
0 0
- java实现图片裁剪缩放工具类
- 10032---java实现图片裁剪缩放工具类
- java缩放图片、java裁剪图片代码工具类
- Java图片处理工具类(裁剪、缩放等)
- java实现图片裁剪、缩放功能
- java 图片缩放、裁剪。
- Java中图片处理工具类,含等比缩放、图片裁剪
- ImageUtils.java:图片处理工具类[裁剪/图片水印/文字水印/缩放补白/Base64加密解密]
- JAVA图片裁剪工具类
- java实现静态图片剪切缩放功能【工具类】
- java实现的图片缩放 压缩 裁剪工具!找了很久,市面上再也找不到比它缩放效果还好的代码了
- java图片裁剪处理工具类代码
- JAVA 裁剪 压缩图片 工具类
- Java之图片裁剪工具类-yellowcong
- nginx实现图片的缩放和裁剪
- java对上传图片缩放裁剪
- java裁剪缩放图片代码下载
- 图片裁剪工具类
- java 集合
- Gaussian mixture model. EM VS variational inference
- 数学黑洞
- 解决android子控件与父控件滑动冲突的问题
- ns3使用doxygen生成离线api文档
- 10032---java实现图片裁剪缩放工具类
- 动态规划之----最长公共子序列
- eclipse反编译工具安装
- phpcms-前台模板调用和后台模板调用
- python笔记(二)
- 递归的函数
- 享元模式
- cocos2dx 3.10 功夫小子学习笔记
- ECharts 简明教程,用js输出图表