Imagick::compositeImage
(PECL imagick 2, PECL imagick 3)
Imagick::compositeImage — ある画像を別の画像に合成する
説明
public Imagick::compositeImage
( Imagick $composite_object
, int $composite
, int $x
, int $y
[, int $channel
= Imagick::CHANNEL_DEFAULT
] ) : bool
ある画像を、別の画像の指定した位置に合成します。 合成アルゴリズムに指定する引数は、 setImageArtifact の第一パラメータに 'compose:args'、第二パラメータにデータを渡す必要があります。
パラメータ
composite_object
- 合成する画像を保持する Imagick オブジェクト。
compose
- 合成演算子。合成演算定数 を参照ください。
x
- 合成する位置の列オフセット。
y
- 合成する位置の行オフセット。
channel
- そのチャネルモードで使用可能なチャネル定数を指定します。 複数のチャネルを指定するには、チャネル型定数をビット演算子で結合します。 チャネル定数 の一覧を参照ください。
返り値
成功した場合に true
を返します。
例
例1 Imagick::compositeImage() の利用例
二つの画像を 'mathematics' 方式で合成します。
<?php// これは、以下のコマンドを実行するのと同等の処理です// convert src1.png src2.png -compose mathematics -define compose:args="1,0,-0.5,0.5" -composite output.png$src1 = new \Imagick("./src1.png");$src2 = new \Imagick("./src2.png");$src1->setImageVirtualPixelMethod(Imagick::VIRTUALPIXELMETHOD_TRANSPARENT);$src1->setImageArtifact('compose:args', "1,0,-0.5,0.5");$src1->compositeImage($src2, Imagick::COMPOSITE_MATHEMATICS, 0, 0);$src1->writeImage("./output.png");?>