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中文字符截取防乱码
Mar 28 PHP
PHP 采集程序原理分析篇
Mar 05 PHP
PHP 基于文件头的文件类型验证类函数
May 01 PHP
利用PHP实现图片等比例放大和缩小的方法详解
Jun 06 PHP
解析在PHP中使用全局变量的几种方法
Jun 24 PHP
PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法
Jul 11 PHP
将CMYK颜色值和RGB颜色相互转换的PHP代码
Jul 28 PHP
php计算整个mysql数据库大小的方法
Jun 19 PHP
php开发时容易忘记的一些技术细节
Feb 03 PHP
PHP实现适用于文件内容操作的分页类
Jun 15 PHP
PHP如何实现订单的延时处理详解
Dec 30 PHP
PHP检查端口是否可以被绑定的方法示例
Aug 09 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 类商品秒杀计时实现代码
2010/05/05 PHP
1亿条数据如何分表100张到Mysql数据库中(PHP)
2015/07/29 PHP
window.onload 加载完毕的问题及解决方案(下)
2009/07/09 Javascript
基于jquery实现拆分姓名的方法(纯JS版)
2013/05/08 Javascript
JS的get和set使用示例
2014/02/20 Javascript
JavaScript中判断函数、变量是否存在
2015/06/10 Javascript
通过bootstrap全面学习less
2016/11/09 Javascript
如何快速上手Vuex
2017/02/14 Javascript
解决vue中对象属性改变视图不更新的问题
2018/02/23 Javascript
详解Angular5 路由传参的3种方法
2018/04/28 Javascript
JSON数据中存在单个转义字符“\”的处理方法
2018/07/11 Javascript
微信小程序中的店铺评分组件及vue中用svg实现的评分显示组件
2018/11/16 Javascript
vue 父组件给子组件传值子组件给父组件传值的实例代码
2019/04/15 Javascript
vue模式history下在iis中配置流程
2019/04/17 Javascript
微信小程序实现下拉框功能
2019/07/16 Javascript
React-redux实现小案例(todolist)的过程
2019/09/29 Javascript
jQuery实现移动端图片上传预览组件的方法分析
2020/05/01 jQuery
简单介绍Python中利用生成器实现的并发编程
2015/05/04 Python
python 读取文本文件的行数据,文件.splitlines()的方法
2018/07/12 Python
python 重命名轴索引的方法
2018/11/10 Python
详解python 3.6 安装json 模块(simplejson)
2019/04/02 Python
在Django model中设置多个字段联合唯一约束的实例
2019/07/17 Python
通过实例解析Python调用json模块
2019/12/11 Python
python二维图制作的实例代码
2020/12/03 Python
pytorch中index_select()的用法详解
2021/01/06 Python
美国Jeep配件购物网站:Morris 4×4 Center
2019/05/01 全球购物
汽车维修专业个人求职信范文
2014/01/01 职场文书
母亲七十大寿答谢词
2014/01/18 职场文书
党员公开承诺事项
2014/03/25 职场文书
应急处置方案
2014/06/16 职场文书
企业消防安全责任书
2014/07/23 职场文书
春季运动会加油词
2015/07/18 职场文书
营销策划分析:怎么策划才能更好销量产品?
2019/09/04 职场文书
解决Pytorch dataloader时报错每个tensor维度不一样的问题
2021/05/28 Python
JavaScript实现简单计时器
2021/06/22 Javascript
MySQL提取JSON字段数据实现查询
2022/04/22 MySQL