php创建画布及绘制图形文字

<?php

header('content-type:image/png');

//创建画布(在内存中存放)

$img = imagecreatetruecolor(200,100);

//创建颜色

$color =imagecolorallocate($img,255,0,0);

//填充区域

imagefill($img,0,0,$color);

$color = imagecolorallocate ($img,0,0,0);

//随机画10个点

for($i=0; $i<10;$i++){
    $x =rand(0,200);
    $y =rand(0,100);
	imagesetpixel($img, $x, $y, $color);//imagesetpixel在image图像中用color颜色在x,y坐标(图像左上角为0,0)上画一个点
}

//随机画出10条线

$color =imagecolorallocate($img, 0, 0, 255);
for($i=0;$i<10;$i++){
	$x1=rand(0,200);
	$y1=rand(0,100);
    $x2=rand(0,200);
    $y2=rand(0,100);
    imageline($img, $x1, $y1,$x2,$y2,$color);
}

// imageline()用color颜色在图像image中从坐标x1,y1,到x2,y2(图像左上角为0,0)画一条线段
//画一个矩形

$color =imagecolorallocate($img, 0, 255, 0);
// imagerectangle($img, 50, 50,100,100, $color);
imagefilledrectangle($img, 50, 50, 100, 100, $color);

//输出文字

$text ="hello";
$color =imagecolorallocate($img, 255, 0,255);
$font = "simsunb.ttf";
imagettftext($img, 20,0, 10, 50, $color, $font,$text); 

//array imagettftext( i m a g e , image, size, a n g l e , angle, x, y , y, color, f o n t i f i l e , fontifile, text)
size:字体的尺寸
angle:角度制表示的角度,0度为从左到右读的文本,更高数值表示逆时针旋转,例子:90度表示从下向上读的文本 ,由x,y所表示的坐标定义了第一个字符的基本点
color:颜色索引
fontfile:用truetype字体的路径
text:UTF-8编辑的文本字符串

//输出画布

imagepng($img);

//销毁图像(释放占用的资源)

imagedestory($img);

猜你喜欢

转载自blog.csdn.net/qq_41912774/article/details/84522696