PHP Conference Nagoya 2025

imagesetbrush

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

imagesetbrushModifie la brosse pour le dessin des lignes

Description

imagesetbrush(GdImage $image, GdImage $brush): bool

imagesetbrush() remplace la brosse courante pour le dessin des lignes par brush. Cette brosse sera alors utilisée avec des fonctions comme imageline() ou imagepolygon() et avec les couleurs spéciales IMG_COLOR_BRUSHED ou IMG_COLOR_STYLEDBRUSHED.

Attention

Vous n'avez rien à faire lorsque vous en avez terminé avec une brosse, mais si vous détruisez l'image de brosse, vous ne DEVEZ plus utiliser les options IMG_COLOR_BRUSHED et IMG_COLOR_STYLEDBRUSHED avant d'avoir créé une nouvelle brosse.

Liste de paramètres

image

Un objet GdImage, retournée par une des fonctions de création d'images, comme imagecreatetruecolor().

brush

Un objet d'image.

Valeurs de retour

Cette fonction retourne true en cas de succès ou false si une erreur survient.

Historique

Version Description
8.0.0 image et brush attendent désormais des instances de GdImage ; auparavant, des resources étaient attendues.

Exemples

Exemple #1 Exemple avec imagesetbrush()

<?php
// Charge un mini-logo PHP
$php = imagecreatefrompng('./php.png');

// Création de l'image principale, 100x100
$im = imagecreatetruecolor(100, 100);

// Définit l'arrière-plan en blanc
$white = imagecolorallocate($im, 255, 255, 255);
imagefilledrectangle($im, 0, 0, 299, 99, $white);

// Définit la brosse
imagesetbrush($im, $php);

// Dessine quelques brosses
imageline($im, 50, 50, 50, 60, IMG_COLOR_BRUSHED);

// Affichage de l'image au navigateur
header('Content-type: image/png');

imagepng($im);
imagedestroy($im);
imagedestroy($php);
?>

Résultat de l'exemple ci-dessus est similaire à :

Affichage de l'exemple : imagesetbrush()

add a note

User Contributed Notes 1 note

up
0
brent at ebrent dot net
18 years ago
Use a brush to create a thick line.

To create a 3x3 red brush:

<?php
$brush_size
= 3;
$brush = imagecreatetruecolor($brush_size,$brush_size);
$brush_color = imagecolorallocate($brush,255,0,0);
imagefill($brush,0,0,$brush_color);
imagesetbrush($im,$brush);
?>

Then use imageline() or imagepolygon() with IMG_COLOR_BRUSHED as the color.

To stop using the brush, destroy it:

<?php imagedestroy($brush); ?>

The brush can also be created from an existing image.
To Top