## 创建图像
1. 设定header,告诉浏览器你要生成的mime类型
~~~
header('Content-Type:image/png');
~~~
2. 创建一个图像区域
默认黑色背景
~~~
$png=imagecreatetruecolor(300, 300);
~~~
3. 在空白图片区域绘制填充背景
~~~
$blue=imagecolorclosest($png, 0, 102, 255);
imagefill($png, 0, 0, $blue);
~~~
4. 在背景上绘制图像轮廓,输入文本
~~~
$white=imagecolorclosest($png, 255,255,255);
imageline($png, 0,0, 100, 50, $white);
imageline($png, 0,0, 50, 100, $white);
imageline($png, 0,0, 200, 200, $white);
imagestring($png, 5, 100, 100, 'tianwei', $white);
~~~
5. 输出图形
~~~
imagepng($png);
~~~
6. 清楚所有资源
~~~
imagedestroy($png);
~~~
7. 其他页面调用图像
~~~
header('Content-Type:text/html;charset="utf-8');
echo '<img src="index.php" title="图形">';
~~~
### 简单验证码
~~~
for ($i=0; $i <4 ; $i++) {
@$imgs.=dechex(mt_rand(0,15));
}
header('Content-Type:image/png');
$im=imagecreatetruecolor(100, 100);
$blue=imagecolorclosest($im, 0, 100, 100);
$white=imagecolorclosest($im, 255,255,255);
imagefill($im, 0, 0, $blue);
imagestring($im, 4, 20, 20, $imgs, $white);
imagepng($im);
imagedestroy($im);
~~~
### 中文转码
$text=iconv('gbk','utf-8','田伟');
### 已有图片加水印
~~~
header('Content-Type:image/png');
$im=imagecreatefrompng('1.png');
$white=imagecolorclosest($im, 0, 0, 0);
$ft='C:\Windows\Fonts\BAUHS93.TTF';
imagettftext($im,20,0,30,30,$white,$ft,'hollo');
imagepng($im);
imagedestroy($im);
~~~
### 缩略图
1. 取得原图的尺寸
2. 创建新图
3. 把原图载入新图
4. 执行复制,重新采样
5. 将图像输出