ImageMagick はビットマップ画像を作成、編集、組み立てまたは変換するためのソフトウェアプラグインです。PNG、JPEG、JPEG-2000、GIF、TIFF、DPX、EXR、WebP、Postscript、PDF、SVG など、200 種類以上の多様な形式の画像を読み書きできます。ImageMagick は、画像のサイズ変更、反転、ミラー、回転、変形、剪断および変換をおこなう場合に使用します。ImageMagick を使用して、画像の色を調整したり、各種特殊効果を適用したりすることもできます。また、テキスト、直線、多角形、楕円および曲線を描画することもできます。
ImageMagick で画像を処理するには、コマンドラインから Adobe Experience Manager メディアハンドラーを使用します。ImageMagick を使用して様々なファイル形式を取り扱うには、Assets のファイル形式に関するベストプラクティスを参照してください。すべてのサポートされるファイル形式については、Assets でサポートされるファイル形式を参照してください。
ImageMagick を使用して大きなファイルを処理する場合は、必要なメモリが通常より多くなること、IM ポリシーの変更が必要になる可能性があること、パフォーマンスへの全体的な影響を考慮してください。メモリ要件は、解像度、ビット深度、カラープロファイル、ファイル形式などの様々な要因によって異なります。ImageMagick を使用して非常に大きなファイルを処理する場合は、Experience Manager サーバーのベンチマークを適切に実行してください。いくつかの有用なリソースを最後に紹介します。
Adobe Managed Services で Experience Manager(AMS)を使用していて高解像度の PSD または PSB ファイルを多数処理する予定がある場合は、アドビカスタマーサポートに連絡してください。Experience Manager では、30000 x 23000ピクセルを超える高解像度の PSB ファイルを処理できない場合があります。
各種オペレーティングシステム向けに、様々なバージョンの ImageMagick インストールファイルが用意されています。オペレーティングシステムに適したバージョンを使用してください。
オペレーティングシステムに適した ImageMagick インストールファイルをダウンロードします。
Experience Manager サーバーをホスティングしているディスクに ImageMagick をインストールするには、インストールファイルを起動します。
path 環境変数を ImageMagick のインストールディレクトリに設定します。
インストールが成功したかどうかを確認するには、identify -version
コマンドを実行します。
特定の使用例に応じてコマンドラインプロセスのステップを設定できます。以下のステップを実行すると、JPEG 画像ファイルを Experience Manager の /content/dam
に追加するたびに、反転画像とサムネール(140 x 100、48 x 48、319 x 319 および 1280 x 1280)が生成されます。
Experience Manager サーバーで、ワークフローコンソール(https://[aem_server]:[port]/workflow
)に移動し、「DAM アセットの更新」ワークフローモデルを開きます。
「DAM アセットの更新」ワークフローモデルから、「EPS のサムネール (ImageMagick を使用)」ステップを開きます。
「引数」タブで、「MIME タイプ」リストに image/jpeg
を追加します。
「コマンド」ボックスに、次のコマンドを入力します。
convert ./${filename} -flip ./${basename}.flipped.jpg
「生成されたレンディションを削除」フラグと「Web レンディションを生成」フラグを選択します。
「Web に対応した画像」タブで、1280 x 1280 ピクセルというサイズでレンディションの詳細を指定します。さらに、MIME タイプ ボックスで image/jpeg
を指定します。
「OK」をクリックして、変更を保存します。
convert
コマンドは、Windows インストールの一部であるネイティブな convert
ユーティリティと競合するので、特定の Windows バージョン(Windows SE など)では動作しない場合があります。このような場合は、ImageMagick ユーティリティの完全パスを指定します。例えば、以下のように指定します。
"C:\Program Files\ImageMagick-6.8.9-Q16\convert.exe" -define jpeg:size=319x319 ./${filename} -thumbnail 319x319 cq5dam.thumbnail.319.319.png
「サムネールを処理」ステップを開き、「MIME タイプをスキップ」に MIME タイプ image/jpeg
を追加します。
「Web に対応した画像」タブで、「リストをスキップ」に MIME タイプ image/jpeg
を追加します。「OK」をクリックして、変更を保存します。
ワークフローを保存します。
処理が適切であることを確認するには、Assets に JPG 画像をアップロードします。処理が完了したら、反転画像とレンディションが生成されているかどうかを確認します。
ImageMagick を使用した画像の処理に関連して、セキュリティの脆弱性が複数存在します。例えば、ユーザーが送信した画像の処理は、リモートコード実行(RCE)のリスクを伴います。
さらに、PHP の imagick、Ruby の rmagick と paperclip、nodejs の imagemagick など様々な画像処理プラグインが、ImageMagick ライブラリに依存しています。
ImageMagick または影響を受けるライブラリを使用する場合は、以下のタスクのどちらか(できれば両方)を実行して、既知の脆弱性を緩和することをお勧めします。
/etc/ImageMagick
にあります。