Imagemagick:透かし画像の最大高さを設定できますか?

Imagemagick:透かし画像の最大高さを設定できますか?

透かし画像のサイズを変更するBASHスクリプトがあります。

#!/bin/bash

echo "Which file to watermark?"

read -e "filetowatermark"

echo "Which file to use as watermark?"

read -e "watermarkfile"

convert "$filetowatermark" "$watermarkfile" +distort affine "0,0 0,0 %[w],%[h] %[fx:t?v.w*(u.h/v.h*0.05):s.w],%[fx:t?v.h*(u.h/v.h*0.05):s.h]" -shave 1 -gravity southeast -geometry +200+200 -compose hard-light -composite "$filetowatermark"-signed.png

スクリプトは以下に基づいています。http://www.imagemagick.org/discourse-server/viewtopic.php?t=34883

透かし画像に最大サイズ(40ピクセルの高さなど)を提供する方法はありますか?

答え1

まず、透かしファイルを変換してから、サイズ変更された透かしファイルを使用して、透かしファイルが40pxより大きくないことを確認できます。

#!/bin/bash

echo "Which file to watermark?"

read -e "filetowatermark"

echo "Which file to use as watermark?"

read -e "watermarkfile"

convert "$watermarkfile" -resize 40x200\> "small$watermarkfile" 

convert "$filetowatermark" "small$watermarkfile" +distort affine "0,0 0,0 %[w],%[h] %[fx:t?v.w*(u.h/v.h*0.05):s.w],%[fx:t?v.h*(u.h/v.h*0.05):s.h]" -shave 1 -gravity southeast -geometry +200+200 -compose hard-light -composite "$filetowatermark"-signed.png

rm "small$watermarkfile"

私はスクリプトをテストしていません。変更は次のとおりです。

  • 透かしファイルのサイズが変更されました。
  • サイズ変更された透かしの使用
  • サイズ変更された透かしは後で削除されます。

ここでサイズ変更ソリューションを見つけました。https://stackoverflow.com/questions/40007722/resize-with-imagemagick-with-a-maximal-width-height

関連情報