1

コマンドラインからimagemagickを使用してWindows 7マシンを使用しています。

次のコードは、画像に透かしを追加するために機能します。

composite                      \
     -watermark 30%            \
     -gravity south            \
      the_watermark.png        \
      pic_to_be_watermaked.png \
      watermark_completed.png

問題は次のとおりです。

  • アニメーション GIF に透かしを入れようとすると機能しません
  • この透かしコマンドを以下のコマンドと組み合わせて使用​​するにはどうすればよいですか?

このコマンドは、フォルダ「static_images」内のすべての PNG を取得し、それらをアニメーション GIF に結合します。また、画像の幅が 350 ピクセルで、高さが適切な縦横比に保たれていることも確認します。また、画像にぼやけを与え、アニメーションの速度を 4 に設定し、無限にループするようにします。

convert                         \
   -resize 350x350              \
   -fuzz 1.6%                   \
   -delay 4                     \
   -loop 0                      \
    static_images/*.png         \
   -layers OptimizePlus         \
   -layers OptimizeTransparency \
    animated_gif.gif

質問:

  1. 透かしコマンドを上記のコマンドと組み合わせるにはどうすればよいですか?
  2. 透かしコマンドをアニメーション GIF で動作させるにはどうすればよいですか?
4

1 に答える 1

1

これはあなたが見たい結果ですか?

透かし入りアニメーションGIF

トリックは、最初に各 PNG ソース ファイルに透かしを入れてから、透かしを入れた PNG から GIF を作成することです。

つまり、これら 2 つのコマンドの結果です。まず、透かし入りの PNG を作成します。

for i in sample_images/000*.png; do   
   convert                                     \
      "${i}"                                   \
      sample_images/the_watermark.png          \
     -gravity south                            \
     -composite                                \
      sample_images/$(basename "${i}")_wm.png;
done

注意してください、私はあなたの正確なcompositeコマンドを使用しませんでした。なぜなら、それは読み取り可能な透かしを作成しなかったからです。

次に、透かし入りの PNG をアニメーション GIF に変換します。

convert                         \
   -resize 350x350              \
   -fuzz 1.6%                   \
   -delay 4                     \
   -loop 0                      \
    sample_images/*_wm.png      \
   -layers OptimizePlus         \
   -layers OptimizeTransparency \
    animated_gif.gif      

これがあなたの意図したことですか?

于 2012-08-24T20:07:47.683 に答える