array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'pt_BR', ), 'this' => array ( 0 => 'function.imagesetstyle.php', 1 => 'imagesetstyle', ), 'up' => array ( 0 => 'ref.image.php', 1 => 'Funções de GD e Image', ), 'prev' => array ( 0 => 'function.imagesetpixel.php', 1 => 'imagesetpixel', ), 'next' => array ( 0 => 'function.imagesetthickness.php', 1 => 'imagesetthickness', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'pt_BR', 'path' => 'reference/image/functions/imagesetstyle.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
imagesetstyle — Define o estilo para desenho de linhas
imagesetstyle() define o estilo para ser usado por todas
as funções de desenho de linhas (tal como imageline()
e imagepolygon()) ao desenhar com as cores
especiais IMG_COLOR_STYLED
ou linhas de imagens com a cor
IMG_COLOR_STYLEDBRUSHED
.
image
Um objeto GdImage, retornado por uma das funções de criação de imagem, como imagecreatetruecolor().
style
Um array de cores de pixel. Pode-se usar a constante
IMG_COLOR_TRANSPARENT
para adicionar um
pixel transparente.
Observe que style
não pode ser um array vazio.
O exemplo a seguir desenha uma linha tracejada do canto superior esquerdo para o inferior direito da imagem:
Exemplo #1 Exemplo de imagesetstyle()
<?php
header("Content-type: image/jpeg");
$im = imagecreatetruecolor(100, 100);
$w = imagecolorallocate($im, 255, 255, 255);
$red = imagecolorallocate($im, 255, 0, 0);
/* Desenha uma linha tracejada, 5 pixels vermelhos, 5 brancos */
$style = array($red, $red, $red, $red, $red, $w, $w, $w, $w, $w);
imagesetstyle($im, $style);
imageline($im, 0, 0, 100, 100, IMG_COLOR_STYLED);
/* Desenha uma linha de rostos felizes usando imagesetbrush() com imagesetstyle */
$style = array($w, $w, $w, $w, $w, $w, $w, $w, $w, $w, $w, $w, $red);
imagesetstyle($im, $style);
$brush = imagecreatefrompng("http://www.libpng.org/pub/png/images/smile.happy.png");
$w2 = imagecolorallocate($brush, 255, 255, 255);
imagecolortransparent($brush, $w2);
imagesetbrush($im, $brush);
imageline($im, 100, 0, 0, 100, IMG_COLOR_STYLEDBRUSHED);
imagejpeg($im);
imagedestroy($im);
?>
O exemplo acima produzirá algo semelhante a: