java实现的图片裁剪功能示例
程序员文章站
2024-04-01 20:23:22
本文实例讲述了java实现的图片裁剪功能。分享给大家供大家参考,具体如下:
piccut.java:
package tsets;
import java.a...
本文实例讲述了java实现的图片裁剪功能。分享给大家供大家参考,具体如下:
piccut.java:
package tsets; import java.awt.rectangle; import java.awt.image.bufferedimage; import java.io.file; import java.io.fileinputstream; import java.io.ioexception; import java.util.iterator; import javax.imageio.imageio; import javax.imageio.imagereadparam; import javax.imageio.imagereader; import javax.imageio.stream.imageinputstream; public class piccut { public void cut(int x,int y,int width,int height,string srcpath,string subpath) throws ioexception {//裁剪方法 fileinputstream is = null; imageinputstream iis = null; try { is = new fileinputstream(srcpath); //读取原始图片 iterator<imagereader> it = imageio.getimagereadersbyformatname("jpg"); //imagereader声称能够解码指定格式 imagereader reader = it.next(); iis = imageio.createimageinputstream(is); //获取图片流 reader.setinput(iis, true); //将iis标记为true(只向前搜索)意味着包含在输入源中的图像将只按顺序读取 imagereadparam param = reader.getdefaultreadparam(); //指定如何在输入时从 java image i/o框架的上下文中的流转换一幅图像或一组图像 rectangle rect = new rectangle(x, y, width, height); //定义空间中的一个区域 param.setsourceregion(rect); //提供一个 bufferedimage,将其用作解码像素数据的目标。 bufferedimage bi = reader.read(0, param); //读取索引imageindex指定的对象 imageio.write(bi, "jpg", new file(subpath)); //保存新图片 } finally { if (is != null) is.close(); if (iis != null) iis.close(); } } public static void main(string[] args) throws exception { piccut pc = new piccut(); pc.cut(20, 20, 100, 100,"d:\\1.jpg","d:\\11.jpg"); system.out.println("ok"); } }
ps:这里再为大家推荐几款比较实用的图片处理工具供大家参考使用:
在线图片转换base64工具:
ico图标在线生成工具:
在线email邮箱图标制作工具:
在线图片格式转换(jpg/bmp/gif/png)工具:
更多java相关内容感兴趣的读者可查看本站专题:《java图片操作技巧汇总》、《java日期与时间操作技巧汇总》、《java操作dom节点技巧总结》、《java文件与目录操作技巧汇总》及《java数据结构与算法教程》。
希望本文所述对大家java程序设计有所帮助。