Imagemagick
如何使用 ImageMagick 的裁剪去除“水印”
如何使用 ImageMagick 的命令行工具來裁剪多個圖像,以便刪除它們底部的水印?
語境
我有一個個人網站供我的家人使用,我可以在其中發布我們的照片。一位家庭成員用手機拍了幾張照片。每張照片上都有以下文字:日期、手機所有者姓名、手機型號。我想在網上發布之前裁剪照片以剪掉這些資訊。
該資訊位於照片的底部,並且在每張照片中佔據相同的高度,因此我需要編寫如下腳本:
watermarkheight=20 # just a an example for photo in *.jpg; do dimensions=$(identify $photo | awk '{ print $3 }') # it will be like 600x400, width X height height=${dimensions#*x} width=${dimensions%x*} newheight=$(( height - watermarketheight )) # i need help with line below someCommandToCropTheHeight --width $width --height $height --file $photo done
我需要知道的是如何使用命令
mogrify
或convert
從照片中刪除“水印”。任何幫助表示讚賞
您可以使用 ImageMagick 的-chop選項和-gravity設置從每個圖像的底部刪除 20px。
要將裁剪的圖像保存在目錄
results
中,您可以執行:mkdir -p results watermarkheight=20 for photo in *.jpg; do convert "$photo" -gravity South -chop 0x"$watermarkheight" ./results/"$photo" done
有關的:
- 切割,去除行、列和邊緣(ImageMagick v6 範例——切割和邊界)