給圖片加水印

package com.Utils;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

import javax.imageio.ImageIO;

import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGEncodeParam;
import com.sun.image.codec.jpeg.JPEGImageEncoder;

public class WaterMark {
public boolean createMark(String filePath, String markContent,
Color markContentColor, float qualNum, String watermark) {
try {
BufferedImage im = ImageIO.read(new File(filePath));
int width = im.getWidth();
int height = im.getHeight();

BufferedImage bimage = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
Graphics2D g = bimage.createGraphics();
// g.setFont()
Font f = new Font(Font.SANS_SERIF, Font.BOLD, 10);
g.setFont(f);
g.setColor(markContentColor);
g.setBackground(Color.white);
g.drawImage(im, 0, 0, null);

g.drawString(markContent, width - 90, height - 14 ); // 添加水印的文字和設置水印文字出現的內容
g.dispose();

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 (IOException e) {
e.printStackTrace();
return false;
}
return true;

}

public static void main(String arg[]) {
WaterMark wk = new WaterMark();
if (wk.createMark("E:\\6.jpg", "ygl竹臨仙", Color.WHITE, 200f, "")) {
System.out.println("製作成功");
} else {
System.out.println("失敗了!");
}
}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章