函式:ImagickDraw::pushPattern()
適用版本:Imagick 2.0.0以上版本
用法:ImagickDraw::pushPattern() 方法用於將圖案模式推入影象繪製棧中。該方法允許您在ImagickDraw物件中建立自定義的圖案模式,然後在影象繪製過程中使用它們。
語法:bool ImagickDraw::pushPattern(string $pattern_id, float $x, float $y, float $width, float $height)
引數:
- $pattern_id:圖案的唯一識別符號。
- $x:圖案的起始X座標。
- $y:圖案的起始Y座標。
- $width:圖案的寬度。
- $height:圖案的高度。
返回值:成功時返回true,失敗時返回false。
示例:
// 建立一個新的ImagickDraw物件
$draw = new ImagickDraw();
// 定義圖案的起始座標、寬度和高度
$x = 0;
$y = 0;
$width = 50;
$height = 50;
// 推入圖案模式
$patternId = "myPattern";
$draw->pushPattern($patternId, $x, $y, $width, $height);
// 在圖案模式中繪製一些圖形
$draw->setFillColor('red');
$draw->rectangle($x, $y, $x + $width, $y + $height);
$draw->setFillColor('green');
$draw->circle($x + $width/2, $y + $height/2, $width/2, $y + $height);
// 彈出圖案模式
$draw->popPattern();
// 將圖案應用到影象上
$image = new Imagick();
$image->newImage(200, 200, 'white');
$image->setImageFormat('png');
$image->drawImage($draw);
// 輸出影象
header("Content-Type: image/png");
echo $image;
以上示例中,我們建立了一個新的ImagickDraw物件,並使用pushPattern()
方法將一個自定義的圖案模式推入影象繪製棧中。然後,在圖案模式中繪製了一個紅色矩形和一個綠色圓形。最後,我們使用popPattern()
方法將圖案模式彈出,並將繪製的圖案應用到一個新的Imagick物件上,並輸出為PNG影象。