博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java 图片处理
阅读量:6208 次
发布时间:2019-06-21

本文共 1784 字,大约阅读时间需要 5 分钟。

hot3.png

1.读取图片

File f = new File(“c:\images\myimage.gif”);

BufferedImage bi = ImageIO.read(f);

2.写图片

BufferedImage im = new BufferedImage(0, 0, BufferedImage. TYPE_INT_RGB);

ImageIO. write(im, "png" , new File( "d://img.png"));

3.图片的信息

BufferedImage bufferedImage  = ImageIO.read(new File("d:/zxing.png"));

bufferedImage.getWidth();          //宽度

bufferedImage.getHeight();         //高度

bufferedImage.getRGB(23,56);   //某个位置

4.图片合并

BufferedImage nestImage  = ImageIO.read(new File("d:/zxing.png"));
BufferedImage newImage = new BufferedImage(200, 200, BufferedImage.TYPE_INT_ARGB);
Graphics2D graphics = newImage.createGraphics();
// (a-b)/2  center
graphics.drawImage(nestImage, 100, 100, null);
nestImage.flush();
graphics.dispose();
Graphics2D.drawImage(img, x, y, width, height, observer)
Graphics2D.drawImage(img, x, y, width, height, bgcolor, observer)
 

5.改变图片大小 BufferedImage.getScaledInstance(200, 200, Image.SCALE_SMOOTH)  获得比例大小的图片

//缩小后的大小为200X200
BufferedImage nestImage  = ImageIO.read(new File("d:/zxing.png"));
BufferedImage newImage = new BufferedImage(200, 200, BufferedImage.TYPE_INT_ARGB);
newImage.getGraphics().drawImage(nestImage.getScaledInstance(200, 200, Image.SCALE_SMOOTH), 0, 0, null); 

6.带水印  以图片合并的方式来添加一个水印

BufferedImage image  = ImageIO.read(new File("d:/zxing.png"));
BufferedImage waterMark = new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_INT_ARGB);
Graphics2D graphics2d = waterMark.createGraphics();
graphics2d.drawImage(image, 0, 0,400,400, null);
graphics2d.setColor(Color.GRAY);
graphics2d.setFont(new Font(Font.SERIF, Font.BOLD, 40));
graphics2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, .8f));
graphics2d.drawString("worterMarker", 100, 100);
image.flush();
graphics2d.dispose();

 

转载于:https://my.oschina.net/u/2552286/blog/731596

你可能感兴趣的文章
我的友情链接
查看>>
项目案例分享四:DC升级后Sysvol停止复制,日志报13508
查看>>
查询优化器内核剖析第四篇:从一个实例看执行计划
查看>>
Python14 函数
查看>>
ambari 自定义组件安装
查看>>
Linux下查看TOMCAT控制台
查看>>
关于outlook签名图片大小的说明
查看>>
CentOS7下分布式文件系统FastDFS的安装 配置 (单节点)
查看>>
Nginx+Php(FastCGI、Php-fpm)+Mysql+Zend+Memcache+Phpmyadmin+MongoDB+TT安装
查看>>
CentOS下Samba文件服务器的安装与配置
查看>>
C# 线程间不能调用剪切板的问题
查看>>
a标签实现不跳转点击
查看>>
在VS2012中实现Ext JS的智能提示太简单了
查看>>
ChemDraw教程:如何查看和删除俗名
查看>>
深入理解javascript原型和闭包(7)——原型的灵活性
查看>>
LOL游戏程序中对一些函数的Hook记录(Win10 x64)
查看>>
【Python】list和tuple 区别比较
查看>>
C语言可变参数
查看>>
给你的Mr.Right画张择偶地图像
查看>>
病毒式推广最终可能会走到尽头
查看>>