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