在众多的PHP图形函数中,ImageTTFText()也是相当常用的,因为它不但可生成图像,还可以加上文字一并生成图像。那么如何生成带有中文汉字的图像呢?其实我们要做的是对汉字的处理,将汉字按照一定格式传入函数内,就可以了。比如我们要在图片上显示“我爱你”几个字。我们要先反这几个字进行转码处理。
转码方法不复杂,不要紧张。将“我爱你”这几个字粘贴在记事本中,然后另存为utf8格式的文本,也就是unicode utf-8格式,随便起一名字保存,就叫做test.txt吧。下一步:用一个16进制的文本编辑器打开test.txt,你会看到里面的文字格式形如:chr(0xE6)等等,复制这些格式的代码,然后看下面的函数,相信你已经看懂了。<?php
//在PHP的图形函数中输出“我爱你”
$cur_count=chr(0xE6).chr(0x88).chr(0x91).chr(0xE7).chr(0x88).chr(0xB1).chr(0xE4).chr(0xBD).chr(0xA0).chr(0xEF).chr(0xBC).chr(0x81) ;
Header("Content-type: image/gif");
$im = imagecreate(156,116);
$black = ImageColorAllocate($im, 0,0,0);
$blue = ImageColorAllocate($im, 0,0,255);
$white = ImageColorAllocate($im, 255,255,255);
$yellow = ImageColorAllocate($im, 255,255,0);
ImageTTFText($im,20,0,4,40,$yellow,"simkai.ttf",$cur_count);//我这里选择的本地字体是楷体,必须选择系统字库中存在的字体才行
ImageGif($im);
ImageDestroy($im);
?>
你复制的代码实际上就是上边$cur_count变量的值,生成时候,会叠加这个值,明白了吗?