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 Google的translate API代码
Dec 10 PHP
thinkphp的c方法使用示例
Feb 24 PHP
PHP引用(&amp;)各种使用方法实例详解
Mar 20 PHP
php实现发送微信模板消息的方法
Mar 07 PHP
php之static静态属性与静态方法实例分析
Jul 30 PHP
php验证码的制作思路和实现方法
Nov 12 PHP
PHP编写RESTful接口
Feb 23 PHP
php微信公众号开发之现金红包
Apr 16 PHP
总结PHP代码规范、流程规范、git规范
Jun 18 PHP
Laravel源码解析之路由的使用和示例详解
Sep 27 PHP
PhpStorm配置Xdebug调试的方法步骤
Feb 02 PHP
laravel 框架执行流程与原理简单分析
Feb 01 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
phpmyadmin操作流程
2006/10/09 PHP
基于php常用函数总结(数组,字符串,时间,文件操作)
2013/06/27 PHP
php接口数据加密、解密、验证签名
2015/03/12 PHP
php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比
2015/04/14 PHP
PHP扩展类型及安装方式解析
2020/04/27 PHP
BOOM vs RR BO3 第二场2.13
2021/03/10 DOTA
js 表单验证方法(实用)
2009/04/28 Javascript
JS仿Windows开机启动Loading进度条的方法
2015/02/26 Javascript
JS绘制生成花瓣效果的方法
2015/08/05 Javascript
jQuery中的基本选择器用法学习教程
2016/04/14 Javascript
jQuery原理系列-常用Dom操作详解
2016/06/07 Javascript
JS button按钮实现submit按钮提交效果
2016/11/01 Javascript
移动前端图片压缩上传的实例
2017/12/06 Javascript
ES6学习笔记之map、set与数组、对象的对比
2018/03/01 Javascript
解决Vue2.0 watch对象属性变化监听不到的问题
2018/09/11 Javascript
jQuery实现动态生成年月日级联下拉列表示例
2019/05/11 jQuery
Webpack中loader打包各种文件的方法实例
2019/09/03 Javascript
layui监听select变化,以及设置radio选中的方法
2019/09/24 Javascript
javascript设计模式 ? 桥接模式原理与应用实例分析
2020/04/13 Javascript
[52:39]完美世界DOTA2联赛PWL S3 CPG vs Forest 第一场 12.16
2020/12/17 DOTA
Python3删除排序数组中重复项的方法分析
2019/01/31 Python
python-tornado的接口用swagger进行包装的实例
2019/08/29 Python
Django后台管理系统的图文使用教学
2020/01/20 Python
python下对hsv颜色空间进行量化操作
2020/06/04 Python
Python 没有main函数的原因
2020/07/10 Python
python的flask框架难学吗
2020/07/31 Python
解析HTML5中的新功能本地存储localStorage
2016/03/01 HTML / CSS
详解HTML5 录音的踩坑之旅
2017/12/26 HTML / CSS
高校辅导员推荐信范文
2013/12/25 职场文书
接受捐赠答谢词
2014/01/27 职场文书
《童趣》教学反思
2014/02/19 职场文书
竞选班长自荐书范文
2014/03/09 职场文书
意向书范本
2014/07/29 职场文书
民族精神月活动总结
2014/08/28 职场文书
夫妻吵架保证书
2015/05/08 职场文书
个人工作决心书
2015/09/22 职场文书