ImageMagickに多くのオプションを渡す方法は?

ImageMagickに多くのオプションを渡す方法は?

私はImageMagickを使って多くの画像を合成しています。

for counter in {1..$limit}
do
  partial=...
  x=...
  y=...
  convert $canvas
    $partial -geometry "+$x+$y" -composite
    $canvas
done

デフォルトでは、N個の画像を一度に1つずつ整列しています。

これで小規模なので、$limitスクリプトは合理的な時間内に実行されます。しかし、$limit今後は画像数が数千個に増えるでしょう。

convertすべての部分を一度に含むコマンドを書くつもりです。それでは一度だけ実行してみてくださいconvert。 ImageMagickステートメントそれはテラビットとして働くことができます画像は大丈夫です。したがって、何千ものタスクを同時に割り当てることは問題にはならないようです。

問題は、シェルがプログラムに渡すことができる引数の数を制限することです。他の手段(スクリプトファイルなど)を介してImageMagickにすべてのパラメータを渡すことはできますか?これは悪い考えですか?

ベストアンサー1

パラメータをファイルに渡して、ImageMagickオプションを渡すことができます。@filenameこの場合、ImageMagickは渡されたファイルからパラメータを読み取ります。

~から文書(「ファイル参照」セクションを参照):

一部のImageMagickコマンドラインオプションは、コマンドラインプロセッサの機能を超える可能性があります。たとえば、Windowsではコマンドラインを8192文字に制限します。たとえば、描画オプションにコマンドラインの長さ制限を超える多角形の点が含まれている場合は、描画オプションをファイルに配置し、を使用してファイルを参照します@(例:)。@mypoly.txt

したがって、この機能は、コマンドラインの長さとパラメータ数の制限を制限するように特別に設計されています。

おすすめ記事