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


Posted in PHP onNovember 10, 2016

本文实例讲述了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]3water.com[/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]3water.com[/url]";
//写 TTF 文字到图中
imagettftext($pic,20,0,10,30,$white,$font,$str);
//建立 GIF 图型
imagegif($pic);
//结束图形,释放内存空间
imagedestroy($pic);
?>

输出结果如图:

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

说明:

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 相关文章推荐
多重?l件?合查?(二)
Oct 09 PHP
基于文本的访客签到簿
Oct 09 PHP
DISCUZ 分页代码
Jan 02 PHP
phpmailer发送gmail邮件实例详解
Jun 24 PHP
Destoon实现多表查询示例
Aug 21 PHP
PHP获取数组中重复最多的元素的实现方法
Nov 11 PHP
PHP通过CURL实现定时任务的图片抓取功能示例
Oct 03 PHP
php导出csv文件,可导出前导0实例代码
Nov 16 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
Sep 16 PHP
PHP实现与java 通信的插件使用教程
Aug 11 PHP
Laravel 验证码认证学习记录小结
Dec 20 PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
Oct 30 PHP
Yii2框架RESTful API 格式化响应,授权认证和速率限制三部分详解
Nov 10 #PHP
PHP基于反射机制实现插件的可插拔设计详解
Nov 10 #PHP
PHP yii实现model添加默认值的方法(两种方法)
Nov 10 #PHP
PHP实现的曲线统计图表示例
Nov 10 #PHP
PHP  Yii清理缓存的实现方法
Nov 10 #PHP
PHP模拟http请求的方法详解
Nov 09 #PHP
Linux平台PHP5.4设置FPM线程数量的方法
Nov 09 #PHP
You might like
php字符串比较函数用法小结(strcmp,strcasecmp,strnatcmp及strnatcasecmp)
2016/07/18 PHP
Laravel路由研究之domain解决多域名问题的方法示例
2019/04/04 PHP
Thinkphp5框架ajax接口实现方法分析
2019/08/28 PHP
event.srcElement+表格应用
2006/08/29 Javascript
jQuery的学习步骤
2011/02/23 Javascript
jquery应该如何来设置改变按钮input的onclick事件
2012/12/10 Javascript
javaScript对文字按照拼音排序实现代码
2013/12/27 Javascript
JavaScript用Number方法实现string转int
2014/05/13 Javascript
《JavaScript DOM 编程艺术》读书笔记之DOM基础
2015/01/09 Javascript
JS获取IE版本号与HTML设置IE文档模式的方法
2016/10/09 Javascript
详解nodejs 文本操作模块-fs模块(一)
2016/12/22 NodeJs
解决Vue打包之后文件路径出错的问题
2018/03/06 Javascript
从零开始学习搭建React脚手架项目
2018/08/23 Javascript
Vue.js 中的 v-cloak 指令及使用详解
2018/11/19 Javascript
js设计模式之代理模式及订阅发布模式实例详解
2019/08/15 Javascript
vue实例的选项总结
2020/06/09 Javascript
JavaScript读取本地文件常用方法流程解析
2020/10/12 Javascript
[02:05]2014DOTA2国际邀请赛 BBC外卡赛赛后总结
2014/07/09 DOTA
python实现线程池的方法
2015/06/30 Python
python从子线程中获得返回值的方法
2019/01/30 Python
python基于opencv检测程序运行效率
2019/12/28 Python
将keras的h5模型转换为tensorflow的pb模型操作
2020/05/25 Python
Python爬取网站图片并保存的实现示例
2021/02/26 Python
CSS3制作半透明边框(Facebox)类似渐变
2012/12/09 HTML / CSS
HTML5 History API 实现无刷新跳转
2016/01/11 HTML / CSS
使用phonegap进行提示操作的具体方法
2017/03/30 HTML / CSS
为什么UNION ALL比UNION快
2016/03/17 面试题
董事长秘书职责
2014/01/31 职场文书
活动总结报告格式
2014/05/09 职场文书
离职报告格式
2014/11/04 职场文书
2015年财务试用期工作总结
2014/12/24 职场文书
建房合同协议书
2016/03/21 职场文书
中学生打架检讨书之500字
2019/08/06 职场文书
Pytest实现setup和teardown的详细使用详解
2021/04/17 Python
Spring boot admin 服务监控利器详解
2022/08/05 Java/Android
react中useState使用:如何实现在当前表格直接更改数据
2022/08/05 Javascript