ImagickDraw::setStrokeMiterLimit

(PECL imagick 2.0.0)

ImagickDraw::setStrokeMiterLimitマイターリミットを指定する

説明

ImagickDraw::setStrokeMiterLimit ( int $miterlimit ) : bool
警告

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

マイターリミットを指定します。 2 本の直線が小さい角度で連結され、かつ連結方法が 'lineJoin' に設定されている場合、 出来上がる線の角の部分が非常に長くなります。マイターリミットは、miter length (角の長さ) と 'lineWidth' の比率の最大値です。

パラメータ

miterlimit

マイターリミット。

返り値

値を返しません。

例1 ImagickDraw::setStrokeMiterLimit()

<?php
function setStrokeMiterLimit($strokeColor$fillColor$backgroundColor) {

    
$draw = new \ImagickDraw();

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

    
$yOffset 100;

    
$draw->setStrokeLineJoin(\Imagick::LINEJOIN_MITER);

    for (
$y 0$y 3$y++) {

        
$draw->setStrokeMiterLimit(40 $y);

        
$points = [
            [
'x' => 22 3'y' => 15 $y $yOffset],
            [
'x' => 20 3'y' => 20 $y $yOffset],
            [
'x' => 70 5'y' => 45 $y $yOffset],
        ];

        
$draw->polygon($points);
    }

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

    
$image->setImageType(\Imagick::IMGTYPE_PALETTE);
    
$image->setImageCompressionQuality(100);
    
$image->stripImage();

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

?>