明辉站/技术开发/内容

PHP中使用GD输出汉字案例

技术开发2023-08-14 阅读
[摘要](王锋)一、原理PHP中的GD库支持中文,但是必须要以UTF-8格式的参数来进行传递。下面先说一下汉字的UTF-8编码的求得。用WORD2000或WINDOW 2000下的记事本编辑所要显示的汉字。 把所编辑的文字存成格式为UTF-8格式的文件。 用一个16进制的编辑器(如用PCTOOLS的EDI...
(王锋)


一、原理
PHP中的GD库支持中文,但是必须要以UTF-8格式的参数来进行传递。下面先说一下汉字的UTF-8编码的求得。
  1. 用WORD2000或WINDOW 2000下的记事本编辑所要显示的汉字。
  2. 把所编辑的文字存成格式为UTF-8格式的文件。
  3. 用一个16进制的编辑器(如用PCTOOLS的EDIT功能)打开这个文件,这时会看到打开的文件里面有一些16进制的字符。一个汉字占三个字节,所以应该选择编辑汉字个数乘以3个字节的内容,把此编码记录下来以备后用。如赛迪网的代码是:E8 B5 9B E8 BF AA E7 BD 91

二、实现
本例中实现:赛迪网 www.ccidnet.com 的图像输出。文件名为:ttf.php。
<?php
//定义输出为图像类型
header("content-type:image/gif");
//新建图象
$pic=imagecreate(240,30);
//定义黑白颜色
$black=imagecolorallocate($pic,0,0,0);
$white=imagecolorallocate($pic,255,255,255);
//定义字体
$font="c://WIN2000//fonts//simhei.ttf";
//定义输出字体串
$str = chr(0xE8).chr(0xB5).chr(0x9B).chr(0xE8).chr(0xBF).chr(0xAA).chr(0xE7).chr(0xBD).chr(0x91)." www.ccidnet.com";
//写 TTF 文字到图中
imagettftext($pic,20,0,10,20,$white,$font,$str);
//建立 GIF 图型
imagegif($pic);
//结束图形,释放内存空间
imagedestroy($pic);
?>

……

相关阅读