imageconvolution

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

imageconvolutiondiv および offset の係数を使用し、3x3 の畳み込み配列を適用する

説明

imageconvolution(
    GdImage $image,
    array $matrix,
    float $divisor,
    float $offset
): bool

画像に畳み込み配列を適用します。 指定した係数とオフセットを使用します。

パラメータ

image

imagecreatetruecolor()のような画像作成関数が返す GdImage オブジェクト。

matrix

3x3 の配列。三つの float 値からなる三つの配列の配列。

divisor

畳み込み結果の除数。正規化で使用します。

offset

色オフセット。

戻り値

成功した場合に true を、失敗した場合に false を返します。

変更履歴

バージョン 説明
8.0.0 image は、 GdImage クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、resource が期待されていました。

例1 PHP.net ロゴのエンボス加工

<?php
$image 
imagecreatefromgif('http://www.php.net/images/php.gif');

$emboss = array(array(200), array(0, -10), array(00, -1));
imageconvolution($image$emboss1127);

header('Content-Type: image/png');
imagepng($imagenull9);
?>

上の例の出力は以下となります。

出力例 : PHP.net ロゴのエンボス加工

例2 ガウス分布のぼかし

<?php
$image 
imagecreatetruecolor(180,40);

// テキストを書き、画像にガウス分布のぼかしを適用します
imagestring($image5108'Gaussian Blur Text'0x00ff00);
$gaussian = array(array(1.02.01.0), array(2.04.02.0), array(1.02.01.0));
imageconvolution($image$gaussian160);

// 比較用にもう一度テキストを書きます
imagestring($image51018'Gaussian Blur Text'0x00ff00);

header('Content-Type: image/png');
imagepng($imagenull9);
?>

上の例の出力は以下となります。

出力例 : ガウス分布のぼかし

参考

関連キーワード:  配列, 適用, offset, 係数, および, 使用, float, imageconvolution, GdImage, 画像