2024年PHP开发者大会日本站

imagesetbrush

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

imagesetbrush设置线条绘制的画笔图像

描述

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

imagesetbrush() 设置所有线条绘制函数(例如 imageline()imagepolygon())在使用特殊颜色 IMG_COLOR_BRUSHEDIMG_COLOR_STYLEDBRUSHED 绘制时使用的画笔图像。

警告

完成画笔使用后,无需执行特殊操作,但是,如果您销毁了画笔图像(或让PHP销毁它),则在设置新的画笔图像之前,必须不能使用 IMG_COLOR_BRUSHEDIMG_COLOR_STYLEDBRUSHED 颜色!

参数

image

一个 GdImage 对象,由图像创建函数(例如 imagecreatetruecolor())返回。

brush

一个图像对象。

返回值

成功时返回 true,失败时返回 false

变更日志

版本 描述
8.0.0 imagebrush 现在需要 GdImage 实例;以前需要 resource

范例

示例 #1 imagesetbrush() 示例

<?php
// 加载一个迷你PHP logo
$php = imagecreatefrompng('./php.png');

// 创建主图像,100x100
$im = imagecreatetruecolor(100, 100);

// 用白色填充背景
$white = imagecolorallocate($im, 255, 255, 255);
imagefilledrectangle($im, 0, 0, 299, 99, $white);

// 设置画笔
imagesetbrush($im, $php);

// 绘制几条画笔线,每条线都覆盖前一条
imageline($im, 50, 50, 50, 60, IMG_COLOR_BRUSHED);

// 将图像输出到浏览器
header('Content-type: image/png');

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

以上示例将输出类似于以下内容

Output of example : imagesetbrush()

添加注释

用户贡献注释 1 条注释

0
brent at ebrent dot net
18年前
使用画笔创建粗线。

创建3x3红色画笔

<?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);
?>

然后使用imageline()或imagepolygon(),IMG_COLOR_BRUSHED作为颜色。

停止使用画笔,销毁它

<?php imagedestroy($brush); ?>

画笔也可以从现有图像创建。
To Top