ImagickDraw
PHP Manual

ImagickDraw::pushPattern

(PECL imagick 2.0.0)

ImagickDraw::pushPatternConfigure un espace de dessin

Description

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

Cette fonction n'est pas documentée et seule la liste des arguments est disponible.

Configure ImagickDraw pour que les commandes jusqu'à la fonction DrawPopPattern() incluent la définition d'un nom de motif. L'espace de motif reçoit les coordonnées du coin supérieur gauche, de la hauteur et largeur, et devient un espace de dessin en lui-même. Tout ce qui peut être dessiné peut être dessiné dans un motif. Des motifs peuvent aussi définir des traits ou des brosses.

Liste de paramètres

pattern_id

L'identifiant du motif

x

L'abscisse du coin supérieur gauche

y

L'ordonnée du coin supérieur gauche

width

La largeur du motif

height

La hauteur du motif

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Exemples

Exemple #1 Exemple avec 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();
}

?>


ImagickDraw
PHP Manual