PHP使用GD库输出汉字的方法【测试可用】

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP使用GD库输出汉字的方法。分享给大家供大家参考,具体如下:

一、原理

PHP中的GD库支持中文,但是必须要以UTF-8格式的参数来进行传递。下面先说一下汉字的UTF-8编码的求得。

1. 用WORD2000或WINDOW 2000下的记事本编辑所要显示的汉字。

2. 把所编辑的文字存成格式为UTF-8格式的文件。

3. 用一个16进制的编辑器(如用PCTOOLS的EDIT功能)打开这个文件,这时会看到打开的文件里面有一些16进制的字符。一个汉字占三个字节,所以应该选择编辑汉字个数乘以3个字节的内容,把此编码记录下来以备后用。如“【宜配屋www.yipeiwu.com】”的代码是: E8 84 9A E6 9C AC E4 B9 8B E5 AE B6

二、实现

本例中实现:【宜配屋www.yipeiwu.com】 [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中使用crypt()实现用户身份验证的代码

了解crypt()   只要有一点使用非Windows平台经验的读者都可能对crypt()相当熟悉,这一函数完成被称作单向加密的功能,它可以加密一些明码,但不能反过来将密码重新转换为原来...

PHP的SQL注入过程分析

今天从网上学习了有关SQL注入的基本技能。SQL注入的重点就是构造SQL语句,只有灵活的运用SQL   语句才能构造出牛比的注入字符串。学完之后写了点笔记,已备随时使用。希望你在看下面内...

PHP获取文件扩展名的方法实例总结

本文实例总结了PHP获取文件扩展名的方法。分享给大家供大家参考,具体如下: 在PHP面试中或者考试中会有很大几率碰到写出五种获取文件扩展名的方法,下面是我自己总结的一些方法 $fil...

PHP 的ArrayAccess接口 像数组一样来访问你的PHP对象

复制代码 代码如下: interface ArrayAccess boolean offsetExists($index) mixed offsetGet($index) void of...

php 中英文语言转换类代码

起初想到制成XML文档形式,这样操作也起来很容易。只是看到说XML效率不怎样 再者就是不同的模板,可这样也有个小问题,有些词汇比如时间提示是不确定,与可能是minute ,day。也有可...