Imagick::distortImage

(PECL imagick 2 >= 2.0.1, PECL imagick 3)

Imagick::distortImageさまざまな方式で画像を歪める

説明

publicImagick::distortImage(int$method, array$arguments, bool$bestfit): bool

さまざまな方式で画像を歪めます。 これは、元画像の色を新たな画像の色に対応させることで行います。 新たな画像は、'bestfit' を true に設定しない限りは元画像と同じ大きさになります。

'bestfit' を有効にし、使用する歪め方式がサイズ変更を許可していた場合は、 変換後の画像に合わせて画像のサイズやオフセットが調整されます。 多くの場合、元画像の仮想オフセットも考慮したマッピングが行われます。

このメソッドは、ImageMagick バージョン 6.3.6 以降で Imagick をコンパイルした場合に使用可能です。

パラメータ

method

画像の歪め方式。 歪め定数 を参照ください。

arguments

歪め方式の引数。

bestfit

元画像のサイズを変更する。

戻り値

成功した場合に true を返します。

エラー / 例外

エラー時に ImagickException をスローします。

例1 Imagick::distortImage() の使用法

画像を歪めてブラウザに表示します。

<?php

$im = new Imagick();


$im->newPseudoImage(100, 100, "pattern:checkerboard");


$im->setImageFormat('png');


$im->setImageVirtualPixelMethod(Imagick::VIRTUALPIXELMETHOD_TRANSPARENT);


$im->setImageMatte(true);


$controlPoints = array( 10, 10,
10, 5,

10, $im->getImageHeight() - 20,
10, $im->getImageHeight() - 5,

$im->getImageWidth() - 10, 10,
$im->getImageWidth() - 10, 20,

$im->getImageWidth() - 10, $im->getImageHeight() - 10,
$im->getImageWidth() - 10, $im->getImageHeight() - 30);


$im->distortImage(Imagick::DISTORTION_PERSPECTIVE, $controlPoints, true);


header("Content-Type: image/png");
echo
$im;
?>

上の例の出力は、 たとえば以下のようになります。

出力例 : Imagick::distortImage() の使用法

参考

To Top