imagesetbrush

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

imagesetbrush β€” УстанавливаСт ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ кисти для рисования Π»ΠΈΠ½ΠΈΠΉ

ОписаниС

function imagesetbrush(GdImage $image, GdImage $brush): true

Ѐункция imagesetbrush() устанавливаСт ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ кисти, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ imageline() ΠΈ imagepolygon() Ρ€ΠΈΡΡƒΡŽΡ‚ Π»ΠΈΠ½ΠΈΠΈ Π² Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… IMG_COLOR_BRUSHED ΠΈΠ»ΠΈ IMG_COLOR_STYLEDBRUSHED.

ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π΅Ρ€Π΅ΠΆΠ΅Π½ΠΈΠ΅

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… дСйствий послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΈΡΡ‚ΡŒΡŽ Π½Π΅ трСбуСтся, Π½ΠΎ ΠΏΡ€ΠΈ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠΈ изобраТСния кисти Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π²Π΅Ρ‚Π°ΠΌΠΈ IMG_COLOR_BRUSHED ΠΈΠ»ΠΈ IMG_COLOR_STYLEDBRUSHED Π΄ΠΎ установки Π½ΠΎΠ²ΠΎΠ³ΠΎ изобраТСния кисти нСльзя!

Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

image
ΠžΠ±ΡŠΠ΅ΠΊΡ‚ GdImage, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π΅Ρ€Π½ΡƒΠ»Π° функция imagecreatetruecolor() ΠΈΠ»ΠΈ другая функция Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ.
brush

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ изобраТСния кисти.

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true.

Бписок измСнСний

ВСрсия ОписаниС
8.0.0 ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ image ΠΈ brush Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ GdImage; Ρ€Π°Π½ΡŒΡˆΠ΅ принимался Ρ‚ΠΈΠΏ resource.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ #1 ΠŸΡ€ΠΈΠΌΠ΅Ρ€ установки изобраТСния кисти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ imagesetbrush()

<?php

// Π—Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ ΠΌΠΈΠ½ΠΈΠ»ΠΎΠ³ΠΎΡ‚ΠΈΠΏ php
$php = imagecreatefrompng('./php.png');

// Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 100 Π½Π° 100 пиксСлСй
$im = imagecreatetruecolor(100, 100);

// Π—Π°Π»ΠΈΠ²Π°Π΅ΠΌ Ρ„ΠΎΠ½ Π±Π΅Π»Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ
$white = imagecolorallocate($im, 255, 255, 255);
imagefilledrectangle($im, 0, 0, 99, 99, $white);

// УстанавливаСм ΠΊΠΈΡΡ‚ΡŒ
imagesetbrush($im, $php);

// РисуСм ΠΊΠΈΡΡ‚ΡŒΡŽ ΠΏΠ°Ρ€Ρƒ ΠΌΠ°Π·ΠΊΠΎΠ², ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ²Π΅Ρ€Ρ… Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ
imageline($im, 50, 50, 50, 60, IMG_COLOR_BRUSHED);

// УстанавливаСм Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ с MIME-Ρ‚ΠΈΠΏΠΎΠΌ изобраТСния ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚
header('Content-type: image/png');
imagepng($im);

Π’Ρ‹Π²ΠΎΠ΄ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡ…ΠΎΠΆ Π½Π°:

Π’Ρ‹Π²ΠΎΠ΄ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°: ΠžΡ‚Ρ€ΠΈΡΠΎΠ²ΠΊΠ° Π»ΠΈΠ½ΠΈΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ кисти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ imagesetbrush()
οΌ‹Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ 1 note

up
0
brent at ebrent dot net ΒΆ
19 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.