如何仅使用ImageMagick(IM)添加与示例图一致的图片水印
ImageMagick添加同款水印实现方法
前置说明
- ImageMagick 7.x 版本使用
magick作为命令前缀,6.x及更早版本替换为convert即可 - 示例水印为右下角半透明白色文字样式,以下命令完全匹配该效果,参数可按需调整
单张图片添加文字水印命令
magick 你的原图路径.jpg \ -gravity southeast \ -pointsize 60 \ -fill "rgba(255,255,255,0.4)" \ -annotate +30+30 "你要设置的水印文字" \ 输出图片路径.jpg
参数说明
-gravity southeast:指定水印锚点为图片右下角,后续偏移基于该位置计算-pointsize 60:水印文字字号,可根据图片实际尺寸自行调整-fill "rgba(255,255,255,0.4)":设置水印为纯白色、透明度40%,匹配示例的浅淡不挡主体的效果,最后一位数值范围0-1,越大水印越不透明-annotate +30+30:设置水印距离右下角的水平、垂直边距为30像素,避免水印贴边- 可选追加
-font "字体名称"参数指定水印字体,比如-font "微软雅黑"
单张图片添加图片水印命令
如果你要加的是图片格式的水印,使用以下命令:
magick 你的原图路径.jpg 水印素材图.png \ -gravity southeast \ -geometry +30+30 \ -define compose:args=40 -compose dissolve \ -composite 输出图片路径.jpg
其中compose:args=40代表水印透明度为40%,可自行调整数值。
批量处理命令
Linux/macOS 终端(批量处理当前目录所有jpg)
for img in *.jpg; do magick "$img" -gravity southeast -pointsize 60 -fill "rgba(255,255,255,0.4)" -annotate +30+30 "自定义水印" "watermarked_$img" done
Windows CMD(批量处理当前目录所有jpg)
for %i in (*.jpg) do magick "%i" -gravity southeast -pointsize 60 -fill "rgba(255,255,255,0.4)" -annotate +30+30 "自定义水印" "watermarked_%i"
内容的提问来源于stack exchange,提问作者Rodrigo
相关产品推荐
相关产品推荐

