java 圖片新增水印程式碼
- package michael.io.image;
- import java.awt.AlphaComposite;
- import java.awt.Graphics2D;
- import java.awt.Image;
- import java.awt.RenderingHints;
- import java.awt.image.BufferedImage;
- import java.io.File;
- import java.io.FileInputStream;
-
import java.io.FileOutputStream;
- import java.io.InputStream;
- import java.io.OutputStream;
- import javax.imageio.ImageIO;
- import javax.swing.ImageIcon;
- import com.sun.image.codec.jpeg.JPEGCodec;
- import com.sun.image.codec.jpeg.JPEGImageDecoder;
- import com.sun.image.codec.jpeg.JPEGImageEncoder;
- /**
-
* 圖片水印
- * @blog http://sjsky.iteye.com
- * @author Michael
- */
- publicclass ImageMarkLogoByIcon {
- /**
- * @param args
- */
- publicstaticvoid main(String[] args) {
- String srcImgPath = "d:/test/michael/myblog_01.png";
- String iconPath = "d:/test/michael/blog_logo.png";
-
String targerPath =
- String targerPath2 = "d:/test/michael/img_mark_icon_rotate.jpg";
- // 給圖片新增水印
- ImageMarkLogoByIcon.markImageByIcon(iconPath, srcImgPath, targerPath);
- // 給圖片新增水印,水印旋轉-45
- ImageMarkLogoByIcon.markImageByIcon(iconPath, srcImgPath, targerPath2,
- -45);
- }
- /**
- * 給圖片新增水印
- * @param iconPath 水印圖片路徑
- * @param srcImgPath 源圖片路徑
- * @param targerPath 目標圖片路徑
- */
- publicstaticvoid markImageByIcon(String iconPath, String srcImgPath,
- String targerPath) {
- markImageByIcon(iconPath, srcImgPath, targerPath, null);
- }
- /**
- * 給圖片新增水印、可設定水印圖片旋轉角度
- * @param iconPath 水印圖片路徑
- * @param srcImgPath 源圖片路徑
- * @param targerPath 目標圖片路徑
- * @param degree 水印圖片旋轉角度
- */
- publicstaticvoid markImageByIcon(String iconPath, String srcImgPath,
- String targerPath, Integer degree) {
- OutputStream os = null;
- try {
- Image srcImg = ImageIO.read(new File(srcImgPath));
- BufferedImage buffImg = new BufferedImage(srcImg.getWidth(null),
- srcImg.getHeight(null), BufferedImage.TYPE_INT_RGB);
- // 得到畫筆物件
- // Graphics g= buffImg.getGraphics();
- Graphics2D g = buffImg.createGraphics();
- // 設定對線段的鋸齒狀邊緣處理
- g.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
- RenderingHints.VALUE_INTERPOLATION_BILINEAR);
- g.drawImage(srcImg.getScaledInstance(srcImg.getWidth(null), srcImg
- .getHeight(null), Image.SCALE_SMOOTH), 0, 0, null);
- if (null != degree) {
- // 設定水印旋轉
- g.rotate(Math.toRadians(degree),
- (double) buffImg.getWidth() / 2, (double) buffImg
- .getHeight() / 2);
- }
- // 水印圖象的路徑 水印一般為gif或者png的,這樣可設定透明度
- ImageIcon imgIcon = new ImageIcon(iconPath);
- // 得到Image物件。
- Image img = imgIcon.getImage();
- float alpha = 0.5f; // 透明度
- g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP,
- alpha));
- // 表示水印圖片的位置
- g.drawImage(img, 150, 300, null);
- g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER));
- g.dispose();
- os = new FileOutputStream(targerPath);
- // 生成圖片
- ImageIO.write(buffImg, "JPG", os);
- System.out.println("圖片完成新增Icon印章。。。。。。");
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- try {
- if (null != os)
- os.close();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- }
相關推薦
java 圖片新增水印程式碼
package michael.io.image; import java.awt.AlphaComposite; import java.awt.Graphics2D; i
java工具類——圖片新增水印
import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Image
JAVA 給圖片新增水印,可設定大小、位置、透明度
/******************************************************************************* * Description: 圖片水印工具類 * * @author xcwc1995 * @versi
Java 為圖片新增水印
package com.image import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.aw
java給圖片新增水印工具類
給圖片新增水印這個功能以前做專案的時候遇到過 但是後來好久不用今天突然想起來 就隨筆記錄一下吧 隨便在記錄一下自己當初踩的坑 package Img; import java.awt.Color; import jav
java實現給圖片新增水印、透明度
package michael.io.image; import java.awt.AlphaComposite; import java.awt.Graphics2D; import java.awt.Image; import java.a
Java寫的為圖片新增水印的軟體(含原始碼)
介面如下: 效果圖如下: 拖拉操作如下: 支援功能: 1、可設定水印的字型(字型名字、樣式、大小) 2、可設定水印的位置(暫時只支援6個位置) 3、可設定水印的透明度,同時支援縮放 4、支援預覽(按Esc鍵退出) 5、支援批量新增水印 6、支援拖拉:拖拉進入主介
java 圖片加水印,設置透明度。說明非常具體
end ace ins com tar .net 對象 nal 圖片路徑 package com.yidao.common; import java.awt.AlphaComposite; import java.awt.Graphics2D; import
Python之給圖片新增水印
1.安裝Pillow pip install Pillow 2.具體程式碼如下 from PIL import Image, ImageDraw, ImageFont # 指定要使用的字型和大小;黑體,24號 font = ImageFont.truetype('heit
[Xcode10 實際操作]九、實用進階-(16)給圖片新增水印效果
本文將演示如何擷取螢幕畫面,並將擷取圖片,存入系統相簿。 在專案資料夾【DemoApp】上點選滑鼠右鍵 ->【New File】建立一個擴充套件檔案->模板選擇視窗:【Swift File】->【Next】 ->【Save As】:ExtensionUIImage.swift-&
【前端】利用Canvas給圖片新增水印,支援拖拽、編輯、縮放與刪除
利用Canvas給圖片新增水印,支援拖拽、編輯、縮放與刪除。 難點一: 如何在偽元素after“刪除按鈕“上新增點選事件。 通過滑鼠點選位置event中offsetX屬性獲得其偏離元素距離,與元素寬度做比較。若大於元素寬度,則點選在了偽元素上,否則點選到正常元
對於處理上傳圖片新增水印的簡單操作
圖片上傳之後的流程如下圖 首先你的新增一個引用System.Drawing.dll 前端只要有個圖片上傳功能就可以了 後臺程式碼也簡單,只需將圖片存起來,再呼叫 後言:水印原理很簡單,沒接觸過得可以自己去試一試,本部落格有不足之處,請大家多多包涵,謝謝
上傳圖片的縮放和圖片新增水印
此文件為:記錄asp.net後臺上傳圖片時,根據需要對圖片的處理功能。可以對圖片進行任意比例的縮放和在圖片上新增任意水印(文字水印,圖片水印,文字+圖片) protected void Up_load_btn_Click(object sender, EventAr
Swift 給圖片新增水印
要給圖片新增一個水印感性的想想其實就是在圖片上面繪製文字,一般有如下幾步:第一要獲取到畫布;第二要在畫布中繪製文字;第三獲取到新的圖片。不囉嗦了看程式碼具體和註釋 這裡我是給UIImage這個類添加了
給圖片新增水印【png格式新增水印後背景保持透明】
package com.solex.waterPrint; import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; i
參考phpcms所寫的圖片新增水印功能
<?php class water{ //待新增圖片資源,水印資源 public $src_im,$water_im; //水印位置 public $posW,$posH; //待加水印圖片寬高 private $fileW,$fileH; //水印
iOS--給圖片新增水印
在iOS開發的過程中,有時需要給圖片新增水印,但UIImage並沒有提供直接的方法,下面我們給UIImage新增一個catgory,增加一個方法實現水印新增 使用方法:通過UIImage 直接呼叫,傳入的引數分別是:要新增水印的圖片,水印新增位置,一般是根據展示圖片的UIImageView確定,水印內容。
用Java實現給圖片新增文字水印-原始碼分享
直接上原始碼: 單張瓦片新增單個文字水印、可設定水印文字內容,字型,顏色,旋轉角度,透明度 controller層 import org.springframework.web.bind.annotation.GetMapping; import org.springframewo
java給圖片新增文字水印,以及docker容器新增中文字型支援
發現雖然簡單,但是水印內容通過編碼拼接在圖片地址後面,每次訪問都要加上,如果要儲存下來還需要自己存第二遍有水印的圖。可是我們並不需要沒有水印的原圖,於是決定通過程式碼新增,更自由。 程式碼如下: /** * 新增文字水印 * @param inpu
Java 在PDF中新增水印——文字/圖片水印
水印是一種十分常用的防偽手段,常用於各種文件、資料等。常見的水印,包括文字型別的水印、圖片或logo型別的水印。以下Java示例,將分別使用insertTextWatermark(PdfPageBase page, String watermark)方法以及page.SetBackgroundImage(St