LXVI. Image magick 関数

導入

Image magick 拡張モジュールは、画像を作成したり操作したりするものです。 機能的には イメージ関数 と似ていますが、より高機能で高速な関数を提供します。

要件

この拡張モジュールを使用するには、"ImageMagick" あるいは "GraphicsMagick" ライブラリが必要です。

インストール手順

Windows 用のバイナリは http://snaps.php.net/ にあります。 インストールするには、 php.ini の extension_dir ディレクティブで指定した場所に php_imagick.dll をダウンロードします。 これを有効にするには、php.ini に extension=php_imagick.dll を追加してウェブサーバを再起動します。

extension_dir=c:/php5/exts/
extension=php_imagick.dll

Linux, BSD およびその他の *nix では、次のようにしてコンパイルします。

  • 次の手順か、

    • pecl install imagick で、PECL/imagick のインストーラを実行します。

    • imagick.so を、ビルド時に表示されたディレクトリから php.ini の extension_dir ディレクトリにコピーします。

    • extension=imagick.so を php.ini に追加します。

    あるいはこちらの手順を実行します。

    • 次のようにして、php.ini へのパスを設定します。

      pecl config-set php_ini /path/to/php.ini

    • pecl install imagick で、PECL/imagick のインストーラを実行します。

  • ウェブサーバを再起動し、php.ini の設定を読み込ませます。

開発バージョン: 現在は、PECL/imagick の 安定版 はまだありません。 ベータ版 の PECL/imagick をインストールするには pecl install imagick-beta を実行します。

PEAR コマンドを使用しない PECL/imagick のコンパイル: pecl install imagick を使用すると、 PECL/imagick を自動的にダウンロードし、インストールします。しかし、 tar ボールを PECL からダウンロードすることもできます。tar ボールを展開したルートディレクトリで phpize && ./configure --enable-imagick && make を実行すると imagick.so が出来上がります。 ビルドしたものを、上のようにしてインストールします。

この PECL 拡張モジュールをインストールする方法は、 マニュアルの PECL 拡張モジュールのインストール という章にあります。 新規リリース・ダウンロード・ソースファイル・管理者情報・CHANGELOG といった関連する情報については、次の場所にあります。 http://pecl.php.net/package/imagick.

リソース型

この拡張モジュールは "imagemagick handle" リソースを使用します。

定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

IMAGICK_FILTER_UNDEFINED (integer)

IMAGICK_FILTER_POINT (integer)

IMAGICK_FILTER_BOX (integer)

IMAGICK_FILTER_TRIANGLE (integer)

IMAGICK_FILTER_HERMITE (integer)

IMAGICK_FILTER_HANNING (integer)

IMAGICK_FILTER_HAMMING (integer)

IMAGICK_FILTER_BLACKMAN (integer)

IMAGICK_FILTER_GAUSSIAN (integer)

IMAGICK_FILTER_QUADRATIC (integer)

IMAGICK_FILTER_CUBIC (integer)

IMAGICK_FILTER_CATROM (integer)

IMAGICK_FILTER_MITCHELL (integer)

IMAGICK_FILTER_LANCZOS (integer)

IMAGICK_FILTER_BESSEL (integer)

IMAGICK_FILTER_SINC (integer)

IMAGICK_FILTER_UNKNOWN (integer)

IMAGICK_FONTSTYLE_NORMAL (integer)

IMAGICK_FONTSTYLE_ITALIC (integer)

IMAGICK_FONTSTYLE_OBLIQUE (integer)

IMAGICK_FONTSTYLE_ANY (integer)

IMAGICK_RAISE (integer)

IMAGICK_LOWER (integer)

IMAGICK_COMPOSITE_OP_UNDEFINED (integer)

IMAGICK_COMPOSITE_OP_OVER (integer)

IMAGICK_COMPOSITE_OP_IN (integer)

IMAGICK_COMPOSITE_OP_OUT (integer)

IMAGICK_COMPOSITE_OP_ATOP (integer)

IMAGICK_COMPOSITE_OP_XOR (integer)

IMAGICK_COMPOSITE_OP_PLUS (integer)

IMAGICK_COMPOSITE_OP_MINUS (integer)

IMAGICK_COMPOSITE_OP_ADD (integer)

IMAGICK_COMPOSITE_OP_SUBTRACT (integer)

IMAGICK_COMPOSITE_OP_DIFFERENCE (integer)

IMAGICK_COMPOSITE_OP_MULTIPLY (integer)

IMAGICK_COMPOSITE_OP_BUMPMAP (integer)

IMAGICK_COMPOSITE_OP_COPY (integer)

IMAGICK_COMPOSITE_OP_COPYRED (integer)

IMAGICK_COMPOSITE_OP_COPYGREEN (integer)

IMAGICK_COMPOSITE_OP_COPYBLUE (integer)

IMAGICK_COMPOSITE_OP_COPYOPACITY (integer)

IMAGICK_COMPOSITE_OP_CLEAR (integer)

IMAGICK_COMPOSITE_OP_DISSOLVE (integer)

IMAGICK_COMPOSITE_OP_DISPLACE (integer)

IMAGICK_COMPOSITE_OP_MODULATE (integer)

IMAGICK_COMPOSITE_OP_THRESHOLD (integer)

IMAGICK_COMPOSITE_OP_NONE (integer)

IMAGICK_COMPOSITE_OP_DARKEN (integer)

IMAGICK_COMPOSITE_OP_LIGHTEN (integer)

IMAGICK_COMPOSITE_OP_HUE (integer)

IMAGICK_COMPOSITE_OP_SATURATE (integer)

IMAGICK_COMPOSITE_OP_COLORIZE (integer)

IMAGICK_COMPOSITE_OP_LUMINIZE (integer)

IMAGICK_COMPOSITE_OP_SCREEN (integer)

IMAGICK_COMPOSITE_OP_OVERLAY (integer)

IMAGICK_PROFILE_OWN (integer)

IMAGICK_PROFILE_COPY (integer)

IMAGICK_TYPE_UNDEFINED (integer)

IMAGICK_TYPE_BILEVEL (integer)

IMAGICK_TYPE_GRAYSCALE (integer)

IMAGICK_TYPE_GRAYSCALEMATTE (integer)

IMAGICK_TYPE_PALETTE (integer)

IMAGICK_TYPE_PALETTEMATTE (integer)

IMAGICK_TYPE_TRUECOLOR (integer)

IMAGICK_TYPE_TRUECOLORMATTE (integer)

IMAGICK_TYPE_COLORSEPARATION (integer)

IMAGICK_TYPE_COLORSEPARATIONMATTE (integer)

IMAGICK_TYPE_OPTIMIZE (integer)

IMAGICK_COLORSPACE_UNDEFINED (integer)

IMAGICK_COLORSPACE_RGB (integer)

IMAGICK_COLORSPACE_GRAY (integer)

IMAGICK_COLORSPACE_TRANSPARENT (integer)

IMAGICK_COLORSPACE_OHTA (integer)

IMAGICK_COLORSPACE_XYZ (integer)

IMAGICK_COLORSPACE_YCBCR (integer)

IMAGICK_COLORSPACE_YCC (integer)

IMAGICK_COLORSPACE_YIQ (integer)

IMAGICK_COLORSPACE_YPBPR (integer)

IMAGICK_COLORSPACE_YUV (integer)

IMAGICK_COLORSPACE_CMYK (integer)

IMAGICK_COLORSPACE_SRGB (integer)

IMAGICK_COMPRESSION_UNDEFINED (integer)

IMAGICK_COMPRESSION_NONE (integer)

IMAGICK_COMPRESSION_BZIP (integer)

IMAGICK_COMPRESSION_FAX (integer)

IMAGICK_COMPRESSION_GROUP4 (integer)

IMAGICK_COMPRESSION_JPEG (integer)

IMAGICK_COMPRESSION_LOSSLESSJPEG (integer)

IMAGICK_COMPRESSION_LZW (integer)

IMAGICK_COMPRESSION_RLE (integer)

IMAGICK_COMPRESSION_ZIP (integer)

目次
imagick_begindraw -- 描画を開始する
imagick_blob2image -- BLOB から画像を読み込む
imagick_blur -- 画像をぼかす
imagick_border -- 画像を枠で囲む
imagick_charcoal -- 輪郭を強調する
imagick_chop -- 画像の一部を取り除き、残された部分だけの画像とする
imagick_clonehandle -- 画像を複製する
imagick_composite -- 最初の画像の指定した位置に二番目の画像を合成する
imagick_contrast -- 画像の明るい部分と暗い部分の差を強調する
imagick_convert -- 画像を変換する
imagick_crop -- 画像の一部を取り出す
imagick_despeckle -- スペックルノイズを軽減する
imagick_destroyhandle -- 画像をメモリから開放する
imagick_drawannotation -- テキストを書く
imagick_drawarc -- 弧を描く
imagick_drawcircle -- 円を描く
imagick_drawellipse -- 楕円を描く
imagick_drawline -- 直線を描く
imagick_drawpoint -- 点を描く
imagick_drawrectangle -- 矩形を描く
imagick_edge -- 輪郭を見つける
imagick_emboss -- 三次元効果を施したグレースケール画像を返す
imagick_enhance -- デジタルフィルタを適用し、ノイジーな画像の品質を上げる
imagick_equalize -- ヒストグラムによる均等化を画像に適用する
imagick_error -- エラーがあるかどうかを調べる
imagick_faileddescription -- 失敗の説明を取得する
imagick_failedreason -- 失敗の原因を取得する
imagick_first -- 画像リストの内部ポインタを最初の要素に設定する
imagick_flatten -- 画像の並びをマージする
imagick_flip -- 中央の x 軸で折り返した垂直ミラー画像を作成する
imagick_flop -- 中央の y 軸で折り返した水平ミラー画像を作成する
imagick_frame -- 画像のまわりに三次元風の枠線を追加する
imagick_free -- imagick_destroyhandle() のエイリアス
imagick_gamma -- 特定の画像チャネルをガンマ補正する
imagick_gaussianblur -- 画像をぼかす
imagick_getcanvas -- キャンバスを取得する
imagick_getcolorspace -- 色空間を取得する
imagick_getdpix -- X 軸の DPI を取得する
imagick_getdpiy -- Y 軸の DPI を取得する
imagick_getheight -- 高さを取得する
imagick_getimagedepth -- 色深度を取得する
imagick_getimagefromlist -- リストから画像のコピーを返す
imagick_getimagetype -- 画像の型を取得する
imagick_getlistindex -- 指定した画像のリスト内での位置を取得する
imagick_getlistsize -- リストの大きさを取得する
imagick_getmagick -- Magick 文字列を取得する
imagick_getmimetype -- MIME タイプを取得する
imagick_getnumbercolors -- 色の数を取得する
imagick_getwidth -- 幅を取得する
imagick_goto -- リスト内の指定した画像に移動する
imagick_image2blob -- 画像を BLOB として返す
imagick_implode -- 画像のピクセルを内側に引き寄せる
imagick_iserror -- 画像にエラーがあるかどうかを調べる
imagick_isgrayimage -- 画像がグレーかどうかを調べる
imagick_isimagesequal -- ふたつの画像を比較する
imagick_ismonochromeimage -- 画像がモノクロームかどうかを調べる
imagick_isopaqueimage -- 画像が不透明かどうかを調べる
imagick_ispaletteimage -- パレット画像かどうかを調べる
imagick_level --  特定の画像チャネルのレベルを揃えるために、 指定した白と黒の点の間を最大限に拡大する
imagick_magnify -- 双線形補間を使用して画像の大きさを倍にする
imagick_medianfilter -- 各ピクセルを、近傍ピクセルのメディアンで置き換える
imagick_minify -- 4x4 セルの重みつき平均を使用して、画像の大きさを半分にする
imagick_modulate -- 明度、彩度および色相を制御する
imagick_mosaic -- 多くの画像を並べてひとつの画像を作成する
imagick_motionblur -- モーションブラー効果をシミュレートする
imagick_negate -- 色を反転する
imagick_newimagelist -- 新しい画像リストを作成する
imagick_next -- 画像リストの内部ポインタを進める
imagick_normalize --  画像のコントラストを強調するため、全ピクセルの中で暗いほうから 2 パーセントを黒に変換し、明るいほうから 1 パーセントを白に変換する
imagick_oilpaint -- 油絵をシミュレートする
imagick_ordereddither -- 配列ディザリングを使用し、カラー画像をモノクロームに減色する
imagick_poplist -- リストの最後の画像を取り除く
imagick_prev -- 画像リストの内部ポインタを戻す
imagick_profile -- ICC、IPTC あるいは generic プロファイルを画像に追加あるいは削除する
imagick_pushlist -- リストの最後に画像を追加する
imagick_raise -- 三次元のボタン風の効果を作成する
imagick_read -- imagick_readimage() のエイリアス
imagick_readimage -- 画像を読み込む
imagick_reducenoise -- 画像の輪郭をなだらかにするが、エッジの情報は保持する
imagick_resize -- 画像の大きさを変更する
imagick_roll -- 指定した x および y で画像を補正する
imagick_rotate -- 画像を回転させる
imagick_sample -- ピクセルをサンプリングして画像の大きさを変更する
imagick_scale -- PBMPLUS の pnmscale() を使用して画像の大きさを変更する
imagick_set_image_comment -- 画像の "comment" 属性を設定する
imagick_set_image_quality -- 画像の品質を設定する
imagick_setcompressionquality -- 圧縮の程度を設定する
imagick_setcompressiontype -- 圧縮方式を設定する
imagick_setdpi -- DPI を設定する
imagick_setfillcolor -- 塗りつぶし色を設定する
imagick_setfillopacity -- 塗りつぶしの透明度を設定する
imagick_setfontface -- フォントフェイスを設定する
imagick_setfontsize -- フォントの大きさを設定する
imagick_setfontstyle -- フォントスタイルを設定する
imagick_shade -- 遠くから光をあて、画像に三次元効果を施す
imagick_sharpen -- 画像をシャープにする
imagick_shear -- 画像の片方の角を X 軸あるいは Y 軸方向にスライドさせ、平行四辺形を作成する
imagick_solarize -- 画像のソラリゼーションを行う
imagick_spread -- ブロック内の各ピクセルをランダムに動かす
imagick_swirl -- 画像の中心のまわりでピクセルを回転させる
imagick_threshold --  各ピクセルの値を、閾値と比較した結果に基づいて変更する
imagick_transformrgb -- RGB から別の色空間に画像を変換する
imagick_transparent -- 画像を透明にする
imagick_unsharpmask -- 画像をシャープにする
imagick_wave --  ピクセルを正弦波にそって垂直方向に移動させ、画像に波紋効果を適用する
imagick_writeimage -- 画像を書き出す
imagick_writeimages -- 画像を書き出す
imagick_zoom -- 選択したフィルタで画像の倍率を変更する