圖片水印
更新時間 2025-10-21 10:46:45
最近更新時間: 2025-10-21 10:46:45
分享文章
本文介紹為圖片添加水印時所用到的參數及示例。
功能說明
通過圖片水印參數,可以對存儲在媒體存儲中的圖片文件增加水印文字或水印圖。
注意事項
- 圖片水印只能使用當前存儲Bucket空間內的圖片,網絡或本地圖片需上傳至當前存儲空間內方可使用。
- 圖片水印目前僅支持JPG、PNG、BMP、WebP、TIFF格式。
- 單張圖片最多支持添加3張不同的圖片水印,且各個圖片水印的位置不能完全重疊。
- 文字水印暫不支持格式設置。
- 水印圖片的簽名方式應該與原圖的簽名方式一致,比如原圖是bucket前置的方式簽名,水印圖片也應該是bucket前置的方式簽名。
- 水印編碼后的內容僅應用在水印操作的特定參數中,請勿將其用在簽名字符串(Signature)中。
參數說明
操作名稱:watermark
基礎參數
| 參數 | 是否必須 | 描述 | 取值范圍 |
|---|---|---|---|
| t | 否 | 指定圖片水印或水印文字的透明度。 | [0,100] 默認值:100, 表示透明度100%(不透明)。 |
| g | 否 | 指定水印在圖片中的位置。 | nw:左上 north:中上 ne:右上 west:左中 center:中部 east:右中 sw:左下 south:中下 se:右下 默認值:se 詳情請參見下方基準點圖片。 |
| x | 否 | 指定水印的水平邊距, 即距離圖片邊緣的水平距離。這個參數只有當水印位置是左上、左中、左下、右上、右中、右下才有意義。 | [0,4096] 默認值:10 單位:像素(px) |
| y | 否 | 指定水印的垂直邊距,即距離圖片邊緣的垂直距離, 這個參數只有當水印位置是左上、中上、右上、左下、中下、右下才有意義。 | [0,4096] 默認值:10 單位:px |
| voffset | 否 | 指定水印的中線垂直偏移。當水印位置在左中、中部、右中時,可以指定水印位置根據中線往上或者往下偏移。 | [-1000,1000] 默認值:0 單位:px |
水平邊距、垂直邊距、中線垂直偏移不僅可以調節水印在圖片中的位置,當圖片存在多重水印時,還可以調節水印在圖中的布局。
區域數值以及每個區域對應的基準點如下圖所示。

圖片水印參數
| 參數 | 是否必須 | 描述 | 取值范圍 |
|---|---|---|---|
| image | 是 | 用于指定作為圖片水印Object的完整名稱,Object名稱需進行Base64編碼。詳情請參見。 例如,作為圖片水印的Object為Bucket內image目錄下的sky.jpg,則需要編碼的內容為image/sky.jpg,編碼后的字符串為 aW1hZ2Uvc2t5LmpwZw。說明:水印圖片只能使用當前存儲空間內的Object。 |
Base64編碼后的字符串。 |
水印圖片預處理參數
您可以使用 圖片縮放 、 自定義裁剪 、及圖片旋轉操作中的所有參數對水印圖片進行預處理。此外,水印圖片在進行縮放操作時,還額外支持參數P:
| 參數 | 描述 | 取值范圍 |
|---|---|---|
| P | 指定圖片水印按照主圖的比例進行縮放,取值為縮放的百分比。 如設置參數值為10,如果主圖為100×100, 則圖片水印大小為10×10。 當主圖變成了200×200,則圖片水印大小為20×20。 |
[1,100] |
文字水印參數
| 參數 | 是否必須 | 描述 | 取值范圍 |
|---|---|---|---|
| text | 是 | 指定文字水印的文字內容,文字內容需進行Base64編碼。 | Base64編碼后的字符串,最大長度為64個字符(最多21個漢字)。 |
| color | 否 | 指定文字水印的文字顏色,參數值為RGB顏色值。 | RGB顏色值,例如:000000表示黑色,FFFFFF表示白色。 默認值:000000(黑色) |
| size | 否 | 指定文字水印的文字大小。 | (0,1000] 默認值:40 單位:px |
| fill | 否 | 指定是否將文字水印鋪滿原圖。 | 1:表示將文字水印鋪滿原圖。 0(默認值):表示不將文字水印鋪滿全圖。 |
圖文混合水印參數
| 參數 | 是否必須 | 描述 | 取值范圍 |
|---|---|---|---|
| order | 否 | 指定文字和圖片水印的前后順序。 | 0(默認值):表示圖片水印在前。 1:表示文字水印在前。 |
| align | 否 | 指定文字水印和圖片水印的對齊方式。 | 0:表示文字水印和圖片水印上對齊。 1:表示文字水印和圖片水印中對齊。 2(默認值):表示文字水印和圖片水印下對齊。 |
| interval | 否 | 指定文字水印和圖片水印間的間距。 | [0,1000] 默認值:0 單位:px |
水印編碼
在添加水印操作中,文字水印的文字內容、圖片水印的水印圖片名稱等參數需要進行URL安全的Base64編碼。編碼步驟如下:
- 將內容編碼成Base64。
- 將結果中的部分編碼替換。
- 將結果中的加號(+)替換成短劃線(-)。
- 將結果中的正斜線(/)替換成下劃線(_)。
- 將結果中尾部的等號(=)省略。
示例一:添加文字水印
- 快速添加Hello World的文字水印,對文字水印的內容Hello World進行URL安全的Base64位編碼,編碼結果為
SGVsbG8gV29ybGQ,具體圖片處理參數為:
?x-amz-process=image/watermark,text_SGVsbG8gV29ybGQ
- 添加文字水印時配置多個圖片處理參數,為圖片添加Hello World的文字水印的同時,需要對水印文字以及原圖做如下相應處理:
- 將demo.jpg縮略為寬高300:
resize,w_300,h_300 - 水印內容為“Hello World”:
text_SGVsbG8gV29ybGQ - 水印文字顏色為白色、字體大小為30:
color_FFFFFF,size_30 - 水印文字位置是右下、水平邊距10、中線垂直偏移10:
g_se,x_10,y_10 - 具體圖片處理參數為:
- 將demo.jpg縮略為寬高300:
?x-amz-process=image/resize,w_300,h_300/watermark,size_30,text_SGVsbG8gV29ybGQ,color_FFFFFF,t_100,g_se,x_10,y_10
示例二:添加圖片水印
- 快速添加名為water.png的水印圖片,并對水印預處理,按原圖的比例30%縮放:
- 對水印圖片預處理參數
water.png?x-amz-process=image/resize,P_30進行URL安全的Base64位編碼,編碼結果為d2F0ZXIucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMzA。 - 具體圖片處理參數為:
- 對水印圖片預處理參數
?x-amz-process=image/watermark,image_d2F0ZXIucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMzA
- 添加圖片水印時配置多個圖片處理參數,為圖片添加圖片水印water.png的同時,需要對圖片水印以及原圖做如下相應處理:
- 將demo.jpg縮略為寬高300:
resize,w_300,h_300 - 將demo.jpg圖片質量設為90%:
quality,Q_90 - 添加預處理水印圖片water.png:
watermark,image_d2F0ZXIucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMzA(d2F0ZXIucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMzA是water.png?x-amz-process=image/resize,P_30進行Base64編碼后的值) - 印圖片透明度90%:
t_90 - 水印圖片位于主圖的右下方、水平邊距10、中線垂直偏移10:
g_se,x_10,y_10 - 具體圖片處理參數為:
- 將demo.jpg縮略為寬高300:
?x-amz-process=image/resize,w_300,h_300/quality,Q_90/watermark,image_d2F0ZXIucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMzA,t_90,g_se,x_10,y_10
示例三:添加圖片和文字混合水印
- 快速添加water.png圖片水印和Hello World文字水印,結合以上示例中water.png以及Hello World的編碼結果,具體圖片處理參數為:
?x-amz-process=image/watermark,image_d2F0ZXIucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMzA,text_SGVsbG8gV29ybGQ
- 添加多個圖片和文字水印:為example.jpg圖片添加2個不同的文本水印(Watermark 1和Watermark 2)和3個圖片水印(sky.jpg、sea.jpg以及flower.jpg)。添加多個水印時,需使用正斜線(/)將不同的水印操作隔開。
- 添加sky.jpg圖片水印,對圖片水印進行預處理(縮放20%),圖片水印位于主圖的左上角,水平邊距10,中線垂直偏移10。圖片參數處理結果為
watermark,image_c2t5LmpwZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzIw,g_nw,x_10,y_10,其中c2t5LmpwZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzIw為sky.jpg圖片水印預處理后經過Base64編碼后的值。 - 添加sea.jpg圖片水印,對圖片水印進行預處理(縮放20%),圖片水印位于主圖右下角,水平邊距10,中線垂直偏移10。圖片參數處理結果為
watermark,image_c2VhLmpwZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzIw,g_se,x_10,y_10,其中c2VhLmpwZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzIw為sea.jpg圖片水印預處理后經過Base64編碼后的值。 - 添加flower.jpg圖片水印,對圖片水印進行預處理(縮放20%),圖片水印位于主圖左中部,水平邊距10,中線垂直偏移10。圖片參數處理結果為
watermark,image_Zmxvd2VyLmpwZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzIw,g_west,x_10,y_10,其中Zmxvd2VyLmpwZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzIw為flower.jpg圖片水印預處理后經過Base64編碼后的值。 - 添加Watermark 1文字水印,字體大小為20,水印文字位于主圖的右上角,水平邊距10、中線垂直偏移200。圖片參數處理結果為
watermark,text_V2F0ZXJtYXJrIDE,g_ne,size_20,x_10,y_200,其中V2F0ZXJtYXJrIDE為Watermark 1經過Base64編碼后的值。 - 添加Watermark 2文字水印,字體大小為20,顏色為深藍色,水印文字位于主圖的左下角,水平邊距100、中線垂直偏移50。圖片參數處理結果為
watermark,text_V2F0ZXJtYXJrIDI,color_0000b7,size_20,g_sw,x_100,y_50,其中V2F0ZXJtYXJrIDI為Watermark 2經過Base64編碼后的值。 - 具體圖片處理參數為:
- 添加sky.jpg圖片水印,對圖片水印進行預處理(縮放20%),圖片水印位于主圖的左上角,水平邊距10,中線垂直偏移10。圖片參數處理結果為
?x-amz-process=image/watermark,image_c2t5LmpwZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzIw,g_nw,x_10,y_10/watermark,image_c2VhLmpwZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzIw,g_se,x_10,y_10/watermark,image_Zmxvd2VyLmpwZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzIw,g_west,x_10,y_10/watermark,text_V2F0ZXJtYXJrIDE,size_20,g_ne,x_10,y_200/watermark,text_V2F0ZXJtYXJrIDI,color_0000b7,size_20,g_sw,x_100,y_50