PHP使用GD库输出汉字的方法【测试可用】
本文实例讲述了php使用gd库输出汉字的方法。分享给大家供大家参考,具体如下:
一、原理
php中的gd库支持中文,但是必须要以utf-8格式的参数来进行传递。下面先说一下汉字的utf-8编码的求得。
1. 用word2000或window 2000下的记事本编辑所要显示的汉字。
2. 把所编辑的文字存成格式为utf-8格式的文件。
3. 用一个16进制的编辑器(如用pctools的edit功能)打开这个文件,这时会看到打开的文件里面有一些16进制的字符。一个汉字占三个字节,所以应该选择编辑汉字个数乘以3个字节的内容,把此编码记录下来以备后用。如“”的代码是: e8 84 9a e6 9c ac e4 b9 8b e5 ae b6
二、实现
本例中实现: [url]www.jb51.net[/url] 的图像输出。文件名为:ttf.php。
<?php //定义输出为图像类型 header("content-type:image/gif"); //新建图象 $pic=imagecreate(500,40); //定义黑白颜色 $black=imagecolorallocate($pic,0,0,0); $white=imagecolorallocate($pic,255,255,255); //定义字体 $font="c://windows//fonts//simhei.ttf"; //定义输出字体串 $str = chr(0xe8).chr(0x84).chr(0x9a).chr(0xe6).chr(0x9c).chr(0xac).chr(0xe4).chr(0xb9).chr(0x8b).chr(0xe5).chr(0xae).chr(0xb6)." [url]www.jb51.net[/url]"; //写 ttf 文字到图中 imagettftext($pic,20,0,10,30,$white,$font,$str); //建立 gif 图型 imagegif($pic); //结束图形,释放内存空间 imagedestroy($pic); ?>
输出结果如图:
说明:
1. 汉字的引用方式为chr(编码)。如chr(0xe8).chr(0x84).chr(0x9a)显示汉字。
2. imagettftext(int im, int size, int angle, int x, int y, int col, string fontfile, string text):本函数将 ttf (truetype fonts) 字型文字写入图片。参数 size 为字形的尺寸;angle 为字型的角度,顺时针计算,0 度为水平,也就是三点钟的方向 (由左到右),90 度则为由下到上的文字;x,y 二参数为文字的坐标值 (原点为左上角);参数 col 为字的颜色;fontfile 为字型文件名称;text 是字符串内容。
3. 必须安装gd库才能利用php中的图像处理函数。
图像引用方式:在需要的地方直接插入:
<img src="ttf.php" border=0>
即可。
三、结束语
php的gd库提供了相当完善的功能,充分利用其功能就能制作出各式各样的图形图像来,这样使页面内容更加丰富。
更多关于php相关内容感兴趣的读者可查看本站专题:《php gd库操作技巧汇总》、《php图形与图片操作技巧汇总》、《php基本语法入门教程》、《php运算与运算符用法总结》、《php面向对象程序设计入门教程》、《php网络编程技巧总结》、《php数组(array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家php程序设计有所帮助。
推荐阅读
-
PHP使用GD库输出汉字的方法【测试可用】
-
PHP基于GD库的图像处理方法小结
-
PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)
-
怎么使用php的gd库画一条抗锯齿的粗斜线
-
php+mysqli使用预处理技术进行数据库查询的方法,mysqli预处理
-
Discuz批量替换帖子内容的方法(使用SQL更新数据库)_php实例
-
thinkPHP使用pclzip打包备份mysql数据库的方法,thinkphppclzip_PHP教程
-
通过dbi使用perl连接mysql数据库的方法_PHP教程
-
Discuz批量替换帖子内容的方法(使用SQL更新数据库)_PHP
-
PHP使用PDO操作数据库的乱码问题解决方法,pdo乱码