PHP Conference Japan 2024

ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute

(PECL imagick 2, PECL imagick 3)

ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute繪製二次貝茲曲線

描述

public ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute(float $x, float $y): bool

從目前點到 (x,y) 繪製一條二次貝茲曲線(使用絕對座標)。控制點假定為相對於目前點的前一個指令上的控制點的反射。(如果沒有先前的指令,或者先前的指令不是 DrawPathCurveToQuadraticBezierAbsolute、DrawPathCurveToQuadraticBezierRelative、DrawPathCurveToQuadraticBezierSmoothAbsolute 或 DrawPathCurveToQuadraticBezierSmoothRelative,則假定控制點與目前點重合。)。在指令結束時,新的目前點變成在多邊形貝茲曲線中使用的最終 (x,y) 座標對。

此函數無法用於平滑地繼續三次貝茲曲線。它只能從二次曲線平滑地繼續。

參數

x

結尾 x 座標

y

結尾 y 座標

回傳值

不回傳任何值。

範例

範例 1 ImagickDraw::pathCurveToQuadraticBezierSmoothAbsolute() 範例

<?php
$draw
= new \ImagickDraw();

$draw->setStrokeOpacity(1);
$draw->setStrokeColor("black");
$draw->setFillColor("blue");

$draw->setStrokeWidth(2);
$draw->setFontSize(72);

$draw->pathStart();
$draw->pathMoveToAbsolute(50,250);

// 這指定一條二次貝茲曲線,其起點為目前位置,控制點為前兩個參數,終點為後兩個參數。
$draw->pathCurveToQuadraticBezierAbsolute(
150,50,
250,250
);

// 這指定一條二次貝茲曲線,其起點為目前位置,控制點是從前一條曲線的控制點鏡像而來
// 且終點由 x、y 值定義。
$draw->pathCurveToQuadraticBezierSmoothAbsolute(
450,250
);

// 這指定一條二次貝茲曲線,其起點為目前位置,控制點是從前一條曲線的控制點鏡像而來
// 且終點由相對於目前位置的 x、y 值定義。
$draw->pathCurveToQuadraticBezierSmoothRelative(
200,-100
);

$draw->pathFinish();

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

$imagick->drawImage($draw);

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

新增註解

使用者提供的註解

此頁面尚無使用者提供的註解。
To Top