查詢

ImagickDraw::push()函式—用法及示例

「 將當前的繪圖狀態儲存到繪圖狀態棧中 」


ImagickDraw::push() 函式是 ImagickDraw 類的一個方法,它用於將當前的繪圖狀態儲存到繪圖狀態棧中。這樣可以在繪製完成後,透過 ImagickDraw::pop() 方法恢復之前的繪圖狀態。

函式簽名:

public bool ImagickDraw::push ( void )

引數: 此函式不接受任何引數。

返回值: 如果成功將繪圖狀態推入棧中,則返回 true。如果失敗,則返回 false。

示例:

// 建立一個 ImagickDraw 物件
$draw = new ImagickDraw();

// 設定繪圖的一些屬性
$draw->setStrokeColor('blue');
$draw->setFillColor('red');
$draw->setStrokeWidth(2);

// 將當前的繪圖狀態推入棧中
$draw->push();

// 修改繪圖的屬性
$draw->setStrokeColor('green');
$draw->setFillColor('yellow');

// 繪製一個矩形
$draw->rectangle(50, 50, 200, 200);

// 恢復之前的繪圖狀態
$draw->pop();

// 繪製一個圓形,使用之前儲存的繪圖狀態
$draw->circle(150, 150, 100, 100);

// 建立一個空白的畫布
$image = new Imagick();
$image->newImage(400, 400, 'white');

// 將繪圖物件應用到畫布上
$image->drawImage($draw);

// 輸出圖片
header('Content-Type: image/png');
echo $image;

在上面的示例中,我們建立了一個 ImagickDraw 物件,並設定了一些繪圖屬性,然後使用 ImagickDraw::push() 方法將當前的繪圖狀態儲存到棧中。然後,我們修改了一些繪圖屬性,並繪製了一個矩形。之後,我們使用 ImagickDraw::pop() 方法恢復了之前儲存的繪圖狀態,並繪製了一個圓形。最後,我們將繪製好的影象輸出為 PNG 格式。

補充糾錯
熱門PHP函式
分享連結