Color Modes

リソース

設定ファイルモジュールフォント環境変数

ImageMagickは、設定ファイル、ロード可能なモジュール、フォント、環境変数など、多くの外部リソースに依存しています。

設定ファイル

ImageMagickは、ここに詳述されている多くの外部設定ファイルに依存しています。

coder.xml
指定されたコーダーモジュールに画像形式を関連付けます。ImageMagickには、画像形式(例:JPEG)の読み取りと/または書き込みをサポートする多くのコーダーモジュールがあります。一部のコーダーモジュールは、複数の関連付けられた画像形式をサポートしており、関連付けられた形式とその対応するコーダーモジュール間のマッピングはこの設定ファイルで定義されています。たとえば、PNGコーダーモジュールはPNG画像形式だけでなく、JNG形式とMNG形式もサポートしています。
colors.xml
色名とその赤、緑、青、アルファの強度を関連付けます。多くのコマンドラインオプションでは、色のパラメータが必要です。16進値(例:#fff)ではなく、名前(例:white)で色を参照する方が便利なことがよくあります。このファイルは、色名を対応する赤、緑、青、アルファの強度(例:whiteの場合、赤=255、緑=255、青=255、アルファ=0)にマッピングします。
configure.xml
ImageMagickのビルドパラメータとシステム全体の環境変数(例:MAGICK_TEMPORARY_PATH)を設定します。ImageMagickがビルドされると、多くのビルドパラメータがこの設定ファイルに保存されます。それらには、バージョン、リリース日、依存するデリゲートライブラリ、量子深度などが含まれます。
delegates.xml
デリゲートプログラムを特定の画像形式に関連付けます。ImageMagickは、RAWカメラ形式を読み取るdarktableや、Postscript画像を読み取るGhostscriptなど、多くのデリゲートプログラムに依存しています。この設定ファイルを使用して、入力または出力形式を外部デリゲートプログラムにマッピングします。
english.xml
メッセージタグを英語の翻訳に関連付けます。
francais.xml
メッセージタグをフランス語の翻訳に関連付けます。
locale.xml
メッセージタグをロケールの翻訳に関連付けます。ImageMagickには、タグとして表される多くの情報、警告、およびエラーメッセージがあります。タグは、FileNotFoundMemoryAllocationFailedなどのメッセージの短い説明です。この設定ファイルは、ImageMagickで認識される各タグの翻訳を持つロケールをリストしています。現在、english.xmlおよびfrancais.xml設定ファイルには、英語とフランス語の翻訳のみが用意されています。
log.xml
ログのパラメータを設定します。ImageMagickは、大量の情報またはデバッグステートメントを出力できます。このファイルを使用して、情報がログメッセージにどのように表示されるか、およびログメッセージをどこに投稿するかを設定します。
mime.xml
インターネットメディアタイプを一意の識別子に関連付けます。多くのファイルとデータストリームには、特定のインターネットメディアタイプを一意に識別する識別子が付いています。たとえば、「Corel Draw drawing」形式(mime type="application/vnd.corel-draw")のファイルは、ファイル名パターン*.cdrに関連付けられており、「CDRXvrsn」という文字列も付いています。ImageMagickは、利用可能な場合、この情報の組み合わせを使用して、ファイルまたはデータストリームのインターネットメディアタイプを迅速に判断しようとします。
policy.xml
ImageMagickのセキュリティポリシーを設定します。デフォルトでは、コーダー、デリゲート、フィルタ、またはファイルパスはすべて許可されています。ポリシーを使用して、たとえばMPEGビデオデリゲートへのアクセスを拒否したり、ファイルシステムからの画像の読み取りを許可する一方で、同じファイルシステムへの書き込みを拒否したりします。または、リソースポリシーを使用してリソースの制限を設定します。ポリシーは、ImageMagickがシステム全体に与える影響を制限したいマルチユーザーサーバーに役立ちます。たとえば、メモリ内の最大画像サイズを100MPに制限するには
<policy domain="resource" name="area" value="100MP"/>
この領域制限よりも大きい画像は、メモリではなくディスクにキャッシュされます。widthを使用して、画像の最大幅をピクセル単位で制限します。この制限を超えると、例外がスローされ、処理が停止します。
<policy domain="resource" name="width" value="8KP"/>
任意のImageMagickコマンドの経過時間を5分に制限するには、このポリシーを使用します。
<policy domain="resource" name="time" value="300"/>
便宜上、SI接頭辞(例:100MB)を使用してメモリ、マップ、ディスクリソースの引数を定義します。さらに、リソースポリシーはImageMagickの各インスタンスの最大値です(例:ポリシーメモリ制限1GB、-limit 2GBオプションはポリシーの最大値を超えるため、メモリ制限は1GBです)。
quantization-table.xml
カスタムJPEG量子化テーブル。-define:q-table=quantization-table.xmlで有効にします。
thresholds.xml
順序付きポスター化ディザリングのしきい値マップを設定します。
type.xml
フォントを設定します。ImageMagick内で使用したいフォントのフォント名、ファミリー、ファウンドリ、スタイル、形式、メトリクス、およびグリフを定義します。
type-ghostscript.xml
Ghostscriptフォントを設定します。Ghostscriptパッケージには、ImageMagickでアクセスできる多くのフォントが含まれています。
type-windows.xml
Windowsフォントグリフに名前を関連付けます。

LinuxおよびLinuxでは、ImageMagickは上記の各設定ファイルを下記の場所に順に検索し、見つかった場合はロードします。

$MAGICK_CONFIGURE_PATH
$PREFIX/etc/ImageMagick-7 
$PREFIX/share/ImageMagick-7 
$XDG_CACHE_HOME/ImageMagick
$HOME/.config/ImageMagick
<client path>/etc/ImageMagick

環境変数$PREFIXはデフォルトのインストールパスです(例:/usr/local)。クライアントパスは、ImageMagickクライアントの実行パスです(例:/usr/local)。

LinuxまたはLinuxの事前にコンパイルされたアンインストール済みバイナリ配布の場合、設定のロード順序は次のとおりです。

$MAGICK_CONFIGURE_PATH
$MAGICK_HOME/etc/ImageMagick-7 
$MAGICK_HOME/share/ImageMagick-7 
$PREFIX/share/ImageMagick-7 
$XDG_CACHE_HOME/ImageMagick
$HOME/.config/ImageMagick/
<client path>/etc/ImageMagick
<current directory>

Windowsでは、ImageMagickはこれらの設定ファイルを以下の順序で検索し、見つかった場合はロードします。

$MAGICK_CONFIGURE_PATH
<windows registry>
$PREFIX/config
$USERPROFILE/.config/ImageMagick
<client path>

上記で、$PREFIXはデフォルトのインストールパスであり、通常はc:\\Program Files\\ImageMagick-7.1.1です。

アンインストールされたWindowsインストールの場合、設定のロード順序は次のとおりです。

$MAGICK_CONFIGURE_PATH
$MAGICK_HOME
$USERPROFILE/.config/ImageMagick
client path
<current directory>

設定ファイルが見つからない場合、ImageMagickは組み込みのデフォルト値に依存します。

モジュール

コーダー

画像コーダー(エンコーダー/デコーダー)は、1つの画像形式(例:PNG、GIF、JPEGなど)の登録、オプションによる分類、オプションによる読み取り、オプションによる書き込み、および登録解除を担当します。ImageMagickは、以下の順序でコーダーを検索し、見つかった最初のマッチを使用します。

$MAGICK_HOME/lib/ImageMagick-7.1.1/modules-Q16/coders
<client path>/../lib/ImageMagick-7.1.1/modules-Q16/coders
$MAGICK_HOME/lib/ImageMagick-7.1.1/modules-Q16/coders
$MAGICK_HOME/share/ImageMagick-7.1.1/modules-Q16/coders
$XDG_CACHE_HOME/ImageMagick
$HOME/.config/ImageMagick
<client path>/lib/ImageMagick-7.1.1/modules-Q16/coders

フィルタ

ImageMagickは、独自の画像処理アルゴリズムを追加するための便利なメカニズムを提供します。ImageMagickは、以下の順序でフィルタを検索し、見つかった最初のマッチを使用します。

$MAGICK_HOME/lib/ImageMagick-7.1.1/modules-Q16/filters
<client path>/../lib/ImageMagick-7.1.1/modules-Q16/filters
$MAGICK_HOME/lib/ImageMagick-7.1.1/modules-Q16/filters
$MAGICK_HOME/share/ImageMagick-7.1.1/modules-Q16/filters
$XDG_CACHE_HOME/ImageMagick
$HOME/.config/ImageMagick
<client path>/lib/ImageMagick-7.1.1/modules-Q16/filters

フォント

ImageMagickは、生のTrueTypeフォントファイルとPostscriptフォントファイルをロードできます。以下の順序でフォント設定ファイルtype.xmlを検索し、見つかった場合はロードします。

$MAGICK_CONFIGURE_PATH
$MAGICK_HOME/etc/ImageMagick/-7.1.1
$MAGICK_HOME/share/ImageMagick-7.1.1
$XDG_CACHE_HOME/ImageMagick
$HOME/.config/ImageMagick
<client path>/etc/ImageMagick
$MAGICK_FONT_PATH

環境変数

ImageMagickで認識される環境変数には以下が含まれます。

HOME ディレクトリが存在する場合は、$HOME/.config/ImageMagickで設定ファイルを検索するパスを設定します。
LD_LIBRARY_PATH ImageMagickの共有ライブラリおよびその他の依存ライブラリへのパスを設定します。
MAGICK_AREA_LIMIT ピクセルキャッシュメモリに常駐できる画像の最大幅 * 高さを設定します。領域制限を超える画像は、ディスク(MAGICK_DISK_LIMITを参照)にキャッシュされ、オプションでメモリマップされます。
MAGICK_CODER_FILTER_PATH (-processを介して呼び出される)フィルタプロセスモジュールを検索するときに使用する検索パスを設定します。このパスにより、ユーザーは、ImageMagickインストールディレクトリにコピーするのではなく、優先される場所にロード可能なモジュールを追加することで、ImageMagickの画像処理機能を拡張できます。検索パスの形式は、オペレーティングシステムの検索パスに似ています(つまり、Linuxの場合はコロン区切り、Microsoft Windowsの場合はセミコロン区切り)。このユーザー指定の検索パスは、デフォルトの検索パスを試す前に検索されます。
MAGICK_CODER_MODULE_PATH ImageMagickがコーダーモジュールを見つけることができるパスを設定します。このパスにより、ユーザーは、ImageMagickインストールディレクトリにコピーするのではなく、優先される場所にロード可能なコーダーモジュールを追加することで、ImageMagickでサポートされる画像形式を任意に拡張できます。検索パスの形式は、オペレーティングシステムの検索パスに似ています(つまり、Linuxの場合はコロン区切り、Microsoft Windowsの場合はセミコロン区切り)。このユーザー指定の検索パスは、デフォルトの検索パスを試す前に検索されます。
MAGICK_CONFIGURE_PATH ImageMagickが設定ファイルを見つけることができるパスを設定します。この検索パスを使用して、設定(.xml)ファイルを検索します。検索パスの形式は、オペレーティングシステムの検索パスに似ています(つまり、Linuxの場合はコロン区切り、Microsoft Windowsの場合はセミコロン区切り)。このユーザー指定の検索パスは、デフォルトの検索パスを試す前に検索されます。
MAGICK_DATE_PRECISION タイムスタンプに対して出力される文字の最大数を設定します。
MAGICK_DEBUG デバッグオプションを設定します。-debugでデバッグオプションの説明を参照してください。
MAGICK_DISK_LIMIT ピクセルキャッシュで使用できるディスク容量の最大バイト数を設定します。この制限を超えると、ピクセルキャッシュは作成されず、エラーメッセージが返されます。
MAGICK_ERRORMODE プロセスのエラーモードを設定します(Windowsのみ)。一般的な使用方法としては、値を1に設定して、エラーモードダイアログがメッセージボックスを表示してアプリケーションをハングするのを防ぐことができます。
MAGICK_FILE_LIMIT 開いているピクセルキャッシュファイルの最大数を設定します。この制限を超えると、ディスクにキャッシュされる後続のピクセルは閉じられ、必要に応じて再開されます。この動作により、ディスク上の多数の画像に同時にアクセスできますが、繰り返しの開閉呼び出しにより速度が低下します。
MAGICK_FONT_PATH ImageMagickがTrueTypeおよびPostscript Type1フォントファイルを検索するパスを設定します。このパスは、特定のフォントファイルが現在のディレクトリに見つからない場合にのみ参照されます。
MAGICK_HEIGHT_LIMIT 画像の最大高さを設定します。
MAGICK_HOME ImageMagickインストールディレクトリの最上位のパスを設定します。このパスは、場所がハードコードされていないか、インストーラーによって設定されていないImageMagickのアンインストール済みビルドによって参照されます。
MAGICK_LIST_LENGTH_LIMIT 画像シーケンスの最大長を設定します。
MAGICK_MAP_LIMIT ピクセルキャッシュに割り当てるメモリマップの最大バイト数を設定します。この制限を超えると、画像ピクセルはディスク(MAGICK_DISK_LIMITを参照)にキャッシュされます。
MAGICK_MEMORY_LIMIT ヒープからピクセルキャッシュに割り当てるメモリの最大バイト数を設定します。この制限を超えると、画像ピクセルはメモリマップされたディスク(MAGICK_MAP_LIMITを参照)にキャッシュされます。
MAGICK_OCL_DEVICE 特定のアクセラレータアルゴリズム(例:ぼかし、畳み込みなど)のハードウェアアクセラレーションを無効にするには、offに設定します。
MAGICK_PRECISION 出力される有効数字の最大数を設定します。
MAGICK_SHRED_PASSES ImageMagickが作成する一時ファイルをプライベートに保ちたい場合は、削除される前に0またはランダムデータで上書きします。最初のパスでは、ファイルは0に設定されます。後続のパスでは、ランダムデータが書き込まれます。
MAGICK_SYNCHRONIZE 全ての画像データを完全にフラッシュし、ディスクに同期させるには、「true」に設定します。ただし、パフォーマンスに影響が出ます。しかし、システムクラッシュの場合に有効な画像ファイルが確保されること、画像ピクセルキャッシュに十分なディスク容量がない場合に早期にレポートされることが利点です。
MAGICK_TEMPORARY_PATH 一時ファイルを保存するパスを設定します。
MAGICK_THREAD_LIMIT 最大並列スレッド数を設定します。多くのImageMagickアルゴリズムは、マルチプロセッサシステムで並列実行されます。この環境変数を使用して、並列実行を許可される最大スレッド数を設定します。
MAGICK_THROTTLE_LIMIT ミリ秒単位で指定された時間以上、定期的にCPUを解放します。
MAGICK_TIME_LIMIT 最大時間を秒単位で設定します。この制限を超えると、例外がスローされ、処理が停止します。
MAGICK_WIDTH_LIMIT 画像の最大を設定します。
SOURCE_DATE_EPOCH 閏秒を除く、1970年1月1日00:00:00 UTCからの秒数で定義されるUNIXタイムスタンプです。パイプラインビルドのための特別な設定です。この設定により、存続時間の設定が無効になります。

MAGICK_MEMORY_LIMITMAGICK_DISK_LIMIT、およびMAGICK_MEMORY_LIMIT環境変数の引数をSI接頭辞(例:100MB)で定義します。MAGICK_WIDTH_LIMITMAGICK_HEIGHT_LIMITMAGICK_AREA_LIMITは、メガピクセル(MP)などのピクセル接尾辞を受け入れます(例:100MP)。制限はセキュリティポリシーを基準に制限できますが、緩和することはできません。