Imagemagick

如何使用 ImageMagick 的裁剪去除“水印”

  • April 14, 2021

如何使用 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 

我需要知道的是如何使用命令mogrifyconvert從照片中刪除“水印”。

任何幫助表示讚賞

您可以使用 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

有關的:

引用自:https://unix.stackexchange.com/questions/645063