ImageMagick コマンドを利用しようとすると、ユーザーは Powershell ウィンドウ内でコマンドを実行する際に課題に直面しました。コマンドは cmd ウィンドウでシームレスに実行されます。括弧の前にバックスラッシュを追加して問題を解決しようとしても失敗しました。調査の結果、magick ディレクティブが実際に環境変数に含まれていることが明らかになりました。
Powershell では複雑なコマンドを実行できないにもかかわらず、単純なコマンドは問題なく実行されます。これは、問題が特に複雑なコマンドにあることを示唆しています。
ImageMagick は膨大なオプションと機能を提供しているため、引用符とエスケープには細心の注意が必要です。
バッシュ:
magick IMAGE1.PNG \ \( IMAGE2.PNG -resize 50% -fill '#ff0000' -colorize 100% \) \ -composite -transparent 'hsl(40,50,60)' result.png
Windows CMD32:
magick IMAGE1.PNG ^ ( IMAGE2.PNG -resize 50%% -fill "#ff0000" -colorize 100% ) ^ -composite -transparent "hsl(40,50,60)" result.png
Powershell:
magick IMAGE1.PNG ` `( IMAGE2.PNG -resize 50% -fill "#ff0000" -colorize 100% `) ` -composite -transparent "hsl(40,50,60)" result.png
環境固有の構文制約から生じる潜在的な問題を回避するために、プラットフォームに依存しないアプローチにはスクリプトの利用が含まれます。コマンドは「.mgk」拡張子を持つファイル内に含めることができ、ImageMagick はシェルの解釈や引用の問題を回避して直接実行できます。
script.mgk:
]-size 640x480 xc:#ffff00 ( foreground.png -resize 50% ) -gravity center -composite -write result.png
Invocation:
magick -script script.mgk
この手法を採用すると、シェルは残ります。スクリプトで使用される記号や文字に依存しないため、さまざまな環境間でのシームレスな実行が保証されます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3