java开发图片水印
来源:互联网 发布:耳机线材淘宝 编辑:程序博客网 时间:2024/06/07 00:52
今天学习的是图片水印 记录下来 也许以后会用的到!
package com.summer.waterpic;import java.awt.Graphics;import java.awt.Image;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.util.Date;import javax.imageio.ImageIO;import com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGImageEncoder;/** * java开发图片水印和文字水印 * @创建者 * @时间2017年7月6日 * @版本1.0 */public class PicWaterMark { /** * 打印图片的水印 * @param markPic 水印文件 路劲 * @param targetImg 目标文件 * @param x 水印图片的位置 x坐标 * @param y 纵坐标 */ public static void getWaterMark(String markPic,String targetImg,int x,int y){ //实例化需要被打水印的图片 File file = new File(targetImg); try { //将文件转换成图片的对象 Image img = ImageIO.read(file); //获取图片的宽度与高度 int width = img.getWidth(null); int height = img.getHeight(null); //将图片加载到内存中 BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_BGR); //绘制图片 Graphics g= image.createGraphics(); //绘制指定图像 缩放到指定矩形区域 这里需要从0 0 坐标开始 g.drawImage(img, 0, 0, width, height, null); //读取水印图片 File fileMark = new File(markPic); //将文件转换成图片的对象 Image mImg = ImageIO.read(fileMark); //水印图片的宽高 int mwidth = mImg.getWidth(null); int mheight = mImg.getHeight(null); //绘制指定图像 缩放到指定矩形区域 g.drawImage(mImg, x, y, mwidth, mheight, null); //结束对文件对象的处理 g.dispose(); //获取文件路劲 String pathName = file.getParentFile().getAbsolutePath(); //给文件命名 String fileName = pathName + "/" +new Date().getTime() +".jpg"; System.out.println(fileName); //输出打印好水印的文件 FileOutputStream fos = new FileOutputStream(fileName); //JPEGCodec 用来创建一个和指定输出流关联 JPEGImageEncoder encoder= JPEGCodec.createJPEGEncoder(fos); encoder.encode(image); //关闭流 fos.close(); System.out.println("水印打印成功!"); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) { String markPic= "C:\\Users\\Administrator\\Desktop\\array\\time\\6.jpg"; String targetImg = "C:\\Users\\Administrator\\Desktop\\array\\time\\1.jpg"; getWaterMark(markPic,targetImg,200,200); }}
阅读全文
0 0
- java开发图片水印
- Java开发图片水印
- JAVA实用案例之图片水印开发
- Java添加水印+图片水印+文字水印
- java 图片水印
- Java 图片处理,水印
- Java 制作图片水印
- Java 图片水印
- java 制作图片水印
- Java 图片加水印
- java图片加水印
- java--图片水印、压缩
- Java添加水印图片
- Java图片加水印
- Java 图片添加水印
- java加图片水印
- java 图片加水印
- Java图片生成水印
- HDU-1160
- 多生产者多消费者问题
- 旅游类APP-Android模块分析
- DB modeling-DB Schema
- xamarin android使用zxing扫描二维码
- java开发图片水印
- 170706 逆向-南邮CTF平台(1-3)
- ?104. Maximum Depth of Binary Tree(C++)
- structs2的一些理解
- mysql安装教程
- Linux下解决mysqld.cnf配置文件只读而无法修改
- CentOS使用systemd设置Tomcat自启动
- (bzoj 1066 [SCOI2007]蜥蜴)<网络最大流>
- java log4j日志使用