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 相关文章推荐
PHP实现Socket服务器的代码
Apr 03 PHP
Linux下实现PHP多进程的方法分享
Aug 16 PHP
php站内搜索关键词变亮的实现方法
Dec 30 PHP
PHP实现扎金花游戏之大小比赛的方法
Mar 10 PHP
php输出全球各个时区列表的方法
Mar 31 PHP
非常重要的php正则表达式详解
Jan 04 PHP
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
Jan 09 PHP
PHP函数nl2br()与自定义函数nl2p()换行用法分析
Apr 02 PHP
简单概括PHP的字符串中单引号与双引号的区别
May 07 PHP
通过源码解析Laravel的依赖注入
Jan 22 PHP
PHP自定义递归函数实现数组转JSON功能【支持GBK编码】
Jul 17 PHP
启用OPCache提高PHP程序性能的方法
Mar 21 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之Smarty入门
2007/01/04 PHP
php短域名转换为实际域名函数
2011/01/17 PHP
php合并js请求的例子
2013/11/01 PHP
php图片添加文字水印实现代码
2016/03/15 PHP
DOM 脚本编程中的兄弟节点
2009/10/31 Javascript
让IE6支持min-width和max-width的方法
2010/06/25 Javascript
Jquery公告滚动+AJAX后台得到数据
2011/04/14 Javascript
DIV始终居中的js代码
2014/02/17 Javascript
node.js中的querystring.parse方法使用说明
2014/12/10 Javascript
javascript模拟命名空间
2015/04/17 Javascript
JQuery中attr属性和jQuery.data()学习笔记【必看】
2016/05/18 Javascript
jQuery原理系列-css选择器的简单实现
2016/06/07 Javascript
AngularJS过滤器详解及示例代码
2016/08/16 Javascript
折叠菜单及选择器的运用
2017/02/03 Javascript
d3.js中冷门却实用的内置函数总结
2017/02/04 Javascript
three.js中文文档学习之如何本地运行详解
2017/11/20 Javascript
基于Vue中点击组件外关闭组件的实现方法
2018/03/06 Javascript
javascript异步编程的六种方式总结
2019/05/17 Javascript
使用vue cli4.x搭建vue项目的过程详解
2020/05/08 Javascript
wxpython中利用线程防止假死的实现方法
2014/08/11 Python
Python实现合并字典的方法
2015/07/07 Python
Python人脸识别初探
2017/12/21 Python
pandas创建新Dataframe并添加多行的实例
2018/04/08 Python
python爬虫 猫眼电影和电影天堂数据csv和mysql存储过程解析
2019/09/05 Python
Python numpy多维数组实现原理详解
2020/03/10 Python
Python如何使用27行代码绘制星星图
2020/07/20 Python
python一些性能分析的技巧
2020/08/30 Python
2014年道德讲堂实施方案
2014/03/05 职场文书
母校寄语大全
2014/04/10 职场文书
施工员岗位职责
2015/02/10 职场文书
校车安全管理责任书
2015/05/11 职场文书
土木工程生产实习心得体会
2016/01/22 职场文书
MySQL EXPLAIN输出列的详细解释
2021/05/12 MySQL
MongoDB数据库常用的10条操作命令
2021/06/18 MongoDB
vue中控制mock在开发环境使用,在生产环境禁用方式
2022/04/06 Vue.js
改造DE1103三步曲
2022/04/07 无线电