轉:Java新增水印(圖片水印,文字水印)
imp
imp
imp
imp
imp
imp
imp
imp
imp
imp
public final class ImageUtils {
public ImageUtils() {
}
/**//*
* public final static String getPressImgPath() { return ApplicationContext
* .getRealPath("/template/da
*/
/** *//**
* 把圖片印刷到圖片上
*
* @param pressImg --
* 水印檔案
* @param targetImg --
* 目標檔案
* @param x
* --x座標
* @param y
* --y座標
*/
public final static void pressImage(String pressImg, String targetImg,
int x, int y) {
try {
//目標檔案
File _file = new File(targetImg);
Image src = ImageIO.read(_file);
int wideth = src.getWidth(null);
int height = src.getHeight(null);
BufferedImage image = new BufferedImage(wideth, height,
BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
g.drawImage(src, 0, 0, wideth, height, null);
//水印檔案
File _filebiao = new File(pressImg);
Image src_biao = ImageIO.read(_filebiao);
int wideth_biao = src_biao.getWidth(null);
int height_biao = src_biao.getHeight(null);
g.drawImage(src_biao, (wideth - wideth_biao) / 2,
(height - height_biao) / 2, wideth_biao, height_biao, null);
//水印檔案結束
g.dispose();
FileOutputStream out = new FileOutputStream(targetImg);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
/** *//**
* 列印文字水印圖片
*
* @param pressText
* --文字
* @param targetImg --
* 目標圖片
* @param fontName --
* 字型名
* @param fontStyle --
* 字型樣式
* @param color --
* 字型顏色
* @param fontSize --
* 字型大小
* @param x --
* 偏移量
* @param y
*/
public static void pressText(String pressText, String targetImg,
String fontName, int fontStyle, int color, int fontSize, int x,
int y) {
try {
File _file = new File(targetImg);
Image src = ImageIO.read(_file);
int wideth = src.getWidth(null);
int height = src.getHeight(null);
BufferedImage image = new BufferedImage(wideth, height,
BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
g.drawImage(src, 0, 0, wideth, height, null);
// String s="";
g.setColor(new Color(color,false));
g.setFont(new Font(fontName, fontStyle, fontSize));
g.drawString(pressText, wideth - fontSize - x, height - fontSize
/ 2 - y);
g.dispose();
FileOutputStream out = new FileOutputStream(targetImg);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
} catch (Exception e) {
System.out.println(e);
}
}
public static void main(String[] args) {
pressText("李白杜","e:1.jpg","font-weight", Font.BOLD,255,70,700, 100);
pressImage("e:/2.png", "e:/1.jpg", 0, 0);
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/220284/viewspace-1031616/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 批次圖片新增水印
- 商品圖片批量加水印,一鍵新增文字、logo圖片水印方法分享Go
- iOS 圖片上新增水印iOS
- GD 庫 PNG 透明底圖片新增文字及圖片水印
- Java 在Excel中新增水印(單一水印、平鋪水印)JavaExcel
- Java 在Word中新增多行圖片水印Java
- PHP實現水印效果(文字、圖片)PHP
- java 圖片水印處理類Java
- Java ffmpeg 實現影片加文字/圖片水印功能Java
- Java 在PPT中新增文字水印的簡易方法(單一/平鋪水印)Java
- Java使用Thumbnailator給圖片加水印JavaAI
- Java 給 Word 文件每一頁新增不同圖片水印Java
- 用canvas生成圖片為頁面新增水印Canvas
- ASP.NET Ueditor上傳圖片新增水印ASP.NET
- 前端如何優雅的新增水印及去除水印前端
- HttpHandler給本站加圖片水印HTTP
- 如何快速新增水印?水印製作軟體iWatermark Pro
- Ueditor上傳圖片自動新增水印(通用圖片檔案)
- 開發筆記:PDF生成文字和圖片水印筆記
- PhpCms上傳圖片自動新增水印的方法教程PHP
- php圖片水印新增,壓縮,剪下的封裝類PHP封裝
- El-Upload元件上傳圖片並新增水印元件
- C# 處理PPT水印(三)—— 在PPT中新增多行(平鋪)文字水印效果C#
- 批量照片水印新增工具
- RecyclerView新增動態水印View
- pdf程式碼新增水印
- CSDN上傳圖片對水印操作
- php微擎功能-圖片加水印PHP
- 離屏Canvas——製作水印圖片Canvas
- 關於去除圖片上的水印
- 用photoshop給圖片批次加水印
- CSDN圖片如何手動關閉水印 / 如何改變水印的樣式——CSDN圖片URl分析
- 報表中怎麼新增動態文字水印
- Python影像暗水印新增Python
- 用python來給圖片加水印Python
- Teorex Inpaint Mac(圖片去水印軟體)AIMac
- Teorex Inpaint for Mac(圖片去水印軟體)AIMac
- 一個簡單的圖片水印工具