java程序向图片上加水印
来源:互联网 发布:instasize 相机软件 编辑:程序博客网 时间:2024/03/29 03:31
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.FileOutputStream;
import javax.swing.ImageIcon;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGEncodeParam;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
public class WaterMark {
/**
* 给图片添加水印
*
* @param filePath
* 需要添加水印的图片的路径
* @param markContent
* 水印的文字
* @param markContentColor
* 水印文字的颜色
* @param qualNum
* 图片质量
* @return
*/
public void createMark(String filePath, String markContent,
Color markContentColor, float qualNum) {
ImageIcon imgIcon = new ImageIcon(filePath);
Image theImg = imgIcon.getImage();
int width = theImg.getWidth(null);
int height = theImg.getHeight(null);
BufferedImage bimage = new BufferedImage(width, height,BufferedImage.TYPE_INT_RGB);
Graphics2D g = bimage.createGraphics();
g.setColor(markContentColor);
g.setBackground(Color.white);
g.drawImage(theImg, 0, 0, null);
g.drawString(markContent, width / 3, height / 2); // 添加水印的文字和设置水印文字出现的内容
g.dispose();
try {
FileOutputStream out = new FileOutputStream(filePath);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bimage);
param.setQuality(qualNum, true);
encoder.encode(bimage, param);
out.close();
} catch (Exception e) {
return ;
}
}
public static void main(String[] args) {
WaterMark wm = new WaterMark();
wm.createMark("d://map.jpg","http://www.163.com",Color.WHITE,70f);
}
}
- java程序向图片上加水印
- java程序向图片上加水印
- 图片上加水印
- Java 图片加水印
- java图片加水印
- Java图片加水印
- java加图片水印
- java 图片加水印
- java 图片加水印
- 在图片上加水印
- java给图片加水印,文字水印
- java-图片加水印,文字水印
- jsp,java加图片水印,文字水印
- 图片加水印JAVA实现
- java 图片加水印源码
- java图片加水印文字
- Java-图片加水印-与图片缩放
- Java给图片加图片水印代码
- 内外网同时运行路由设置
- 分析在一个等式成立时,使用的是几进制的最简方法
- 数据持久化
- tcp/ip学习笔记--第14章 DNS (the domain name system)
- 简单论坛的搭建(Discuz)、memchche、OpenResty(类nginx)
- java程序向图片上加水印
- 理解 指针数组 数组指针 函数指针 函数指针数组 指向函数指针数组的指针
- RIP协议
- 头文件被重复包含的危害及解决办法
- Qt动态多语言的实现
- Django Rest Framework框架
- CSS总结之background
- iOS OS X 和 iOS 中的多线程技术-1
- 计算机基础教学-大学生明星观