使用php初步创建画布。
header
•header('content-type:image/png')
•header ( 'Content-Type: image/gif' );
•header ( 'Content-Type: image/jpeg' );
创建画布
•resource imagecreatetruecolor ( int $width , int $height )
•新建一个真彩色图像
•返回一个图像标识符,代表了一幅大小为 width 和 height 的黑色图像。
•返回值:成功后返回图象资源,失败后返回 FALSE。
输出图像
•bool imagepng ( resource $image [, string $filename ] )
颜色管理
•int imagecolorallocate ( resource $image , int $red , int $green , int $blue ) 为一幅图像分配颜色
•red , green 和 blue 分别是所需要的颜色的红,绿,蓝成分。这些参数是 0 到 255 的整数或者十六进制的 0x00 到 0xFF
填充颜色
•bool imagefill ( resource $image , int $x , int $y , int $color )
image 图像的坐标 x , y (图像左上角为 0, 0)处用 color 颜色执行区域填充(即与 x, y 点颜色相同且相邻的点都会被填充)
绘制图形
点
•imagesetpixel() 在 image 图像中用 color 颜色在 x , y 坐标(图像左上角为 0,0)上画一个点。
•bool imagesetpixel ( resource $image , int $x , int $y , int $color )
线
imageline() 用 color 颜色在图像 image 中从坐标 x1 , y1 到 x2 , y2 (图像左上角为 0, 0)画一条线段。
bool imageline ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int $color )
矩形
•imagerectangle() 用 col 颜色在 image 图像中画一个矩形,其左上角坐标为 x1, y1,右下角坐标为 x2, y2。图像的左上角坐标为 0, 0。
•bool imagerectangle ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int $col )
•
•imagefilledrectangle() 在 image 图像中画一个用 color 颜色填充了的矩形,其左上角坐标为 x1 , y1 ,右下角坐标为 x2 , y2 。0, 0 是图像的最左上角。
•bool imagefilledrectangle ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int $color )
绘制文字
•array imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text )
•size :字体的尺寸。根据 GD 的版本,为像素尺寸(GD1)或点(磅)尺寸(GD2)。
•angle :角度制表示的角度,0 度为从左向右读的文本。更高数值表示逆时针旋转。例如 90 度表示从下向上读的文本。
•由 x , y 所表示的坐标定义了第一个字符的基本点(大概是字符的左下角)。
•color :颜色索引
•fontfile :是想要使用的 TrueType 字体的路径。
•text :UTF-8 编码的文本字符串。
销毁图像
imagedestroy( resource $image ) 释放与image关联的内存
步骤说明:具体函数说明请查看php手册
//第一:设定标头,告诉浏览器你要生成的MIME 类型
header("Content-type: image/png");
//第二:创建一个画布,以后的操作都将基于此画布区域
$codew = 100;
$codeh = 60;
$codeimg = imagecreatetruecolor($codew, $codeh);
获取画布颜色
$red = imagecolorallocate($codeimg, 255, 0, 0);
$white = imagecolorallocate($codeimg, 255, 255, 255);
$green = imagecolorallocate($codeimg, 75, 222, 26);
//第三:填充画布背景颜色
15 imagefill($codeimg, 0, 0, $red);
//第四:绘制线条 + 填充文字...
imageline($codeimg, 0, 00, 30, 60, $black);
imageline($codeimg, 0, 00, 50, 60, $black);
imageline($codeimg, 0, 00, 80, 60, $black);
//填充文字
imagestring($codeimg, 10, 30, 30, "qwe4", $green);
//第五:输出创建的画布
imagepng($codeimg);
//第六:销毁画布
imagedestroy($codeimg);