ImagickDraw::pushPattern

(PECL imagick 2.0.0)

ImagickDraw::pushPattern後に続く ImagickDraw::opPattern() までのコマンドが、名前付きパターンを構成することを示す

説明

ImagickDraw::pushPattern ( string $pattern_id , float $x , float $y , float $width , float $height ) : bool
警告

この関数は、 現在のところ詳細な情報はありません。引数のリストのみが 記述されています。

後に続く DrawPopPattern() までのコマンドが、 名前付きパターンを構成することを示します。 パターン空間は、左上の座標と幅、高さで指定します。 そして独自の描画空間となります。 描画される内容は、すべてこのパターン定義を使用します。 名前付きパターンは、線やブラシの定義で使用することができます。

パラメータ

pattern_id

パターン ID。

x

左上の角の x 座標。

y

左上の角の y 座標。

width

パターンの幅。

height

パターンの高さ。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

例1 ImagickDraw::pushPattern()

<?php
function pushPattern($strokeColor$fillColor$backgroundColor) {
    
$draw = new \ImagickDraw();

    
$draw->setStrokeColor($strokeColor);
    
$draw->setFillColor($fillColor);
    
$draw->setStrokeWidth(1);
    
$draw->setStrokeOpacity(1);
    
$draw->setStrokeColor($strokeColor);
    
$draw->setFillColor($fillColor);

    
$draw->setStrokeWidth(1);

    
$draw->pushPattern("MyFirstPattern"005050);
    for (
$x 0$x 50$x += 10) {
        for (
$y 0$y 50$y += 5) {
            
$positionX $x + (($y 5) % 5);
            
$draw->rectangle($positionX$y$positionX 5$y 5);
        }
    }
    
$draw->popPattern();

    
$draw->setFillOpacity(0);
    
$draw->rectangle(100100400400);
    
$draw->setFillOpacity(1);

    
$draw->setFillOpacity(1);

    
$draw->push();
    
$draw->setFillPatternURL('#MyFirstPattern');
    
$draw->setFillColor('yellow');
    
$draw->rectangle(100100400400);
    
$draw->pop();

    
$imagick = new \Imagick();
    
$imagick->newImage(500500$backgroundColor);
    
$imagick->setImageFormat("png");

    
$imagick->drawImage($draw);

    
header("Content-Type: image/png");
    echo 
$imagick->getImageBlob();
}

?>