操作场景
ZOS支持图片水印,您可以增加图片水印和文字水印,保护图片的所有权。
约束与限制
- 图片水印目前仅支持JPG、PNG、WebP、TIFF。
- 原图大小不能超过20 MB。宽或高不能超过30,000 px,且总像素不能超过2.5亿 px。
- 图片水印预处理中的请求不支持“|”拼接。
- 图片水印与原图需要在相同的存储桶才能使用。
参数说明
操作符:watermark
添加图片水印和文字水印的参数,需要进行URL的Base64编码。编码步骤如下:将内容编码成Base64,然后将结果中的部分编码替换。
基础参数
参数名称 | 参数用途 | 取值 | 是否必须 |
---|---|---|---|
t | 图片水印或文字水印的透明度 | [0, 100] 默认值:100 |
否 |
x | 水印距离图片边界的水平距离 | [0, 4096] 默认值:10 |
否 |
y | 水印距离图片边界的垂直距离 | [0, 4096] 默认值:10 |
否 |
g | 指定水印在图片中的位置 | nw:左上(默认) north:中上 ne:右上 west:左中 center:中部 east:右中 sw:左下 south:中下 se:右下 |
否 |
不同区域位置,与区域中的基准点位置,如下图所示:
图片水印参数
参数名称 | 参数用途 | 取值 | 是否必须 |
---|---|---|---|
image | 指定作为图片水印对象的名称 水印图片需要和原图存放在相同存储桶 |
Base64编码后的字符串 编码后的字符串应该将’/’替换为’_’ 水印图片可以直接作为水印附在原图,也可以进行预处理操作 |
是 |
示例
进行图片水印处理后,设置通用的透明度t为50。
- 直接处理
假设作为图片水印的图片为原图所在bucket下的shuiyin.png。则需要编码的内容为shuiyin.png,编码后的字符串为c2h1aXlpbi5wbmc=。具体请求则是:
image/watermark,image_c2h1aXlpbi5wbmc=,t_50
- 预处理水印
使用shuiyin.png图片,如果想对水印进行缩放50%加旋转180度的操作,应对 shuiyin.png?x-zos-process=image/resize,p_50/rotate,180
进行base64编码操作,编码后结果为:
c2h1aXlpbi5wbmc/eC16b3MtcHJvY2Vzcz1pbWFnZS9yZXNpemUscF81MC9yb3RhdGUsMTgw
将上述结果中的’/’替换为’_’。最终的具体请求是:
image/watermark,image_c2h1aXlpbi5wbmc_eC16b3MtcHJvY2Vzcz1pbWFnZS9yZXNpemUscF81MC9yb3RhdGUsMTgw,t_50
文字水印参数
参数名称 | 参数用途 | 取值 | 是否必须 |
---|---|---|---|
text | 指定文字水印内容 | Base64编码后的字符串,编码结果字符串中‘/’要替换为‘_’ | 是 |
color | 指定文字水印的颜色 | RGB颜色值 默认:FFFFFF(白色) |
否 |
size | 指定文字水印的字体大小 | 默认值:40 | 否 |
type | 指定文字水印的字体类型 | 支持英文字体,如Airal 支持中文字体包括yahei(微软雅黑),heiti(黑体),kaishu(楷书),youyuan(幼圆) 默认值:kaishu(楷书) |
否 |
rotate | 指定文字水印顺时针旋转角度 | [0, 360] 默认值:0 |
否 |
示例
为图片添加Chinatelecom文字字符作为水印,同时指定黑体字体,颜色设置为FF0000红色,大小设置为40,添加至原图右下,透明度设置为80,则Chinatelecom编码后结果为Q2hpbmF0ZWxlY29t。具体请求如下:
image/watermark,image_c2h1aXlpbi5wbmc_eC16b3MtcHJvY2Vzcz1pbWFnZS9yZXNpemUscF81MC9yb3RhdGUsMTgw,t_50
常见问题
-
常见颜色对照表?
答:
#FFFFFF---白色
#0000FF---蓝色
#FF0000---红色
#00FF00---绿色
#808080---灰色
#FFFF00---黄色
#000000---黑色
-
添加图片水印时可以为水印增加背景色么?
答:不可以。
-
如何将本地的图片作为水印图片?
答:可以先将本地图片上传至待添加水印的原图的所在桶中。