当前位置: 首页 > 图文教程 > 网络编程 > PHP > 解决GD中文乱码问题

PHP
一个用于网络的工具函数库
针对初学PHP者的疑难问答(1)
在PHP中执行系统外部命令
怎样在php中使用PDF文档功能
怎样在PHP中通过ADO调用Asscess数据库和COM程序
截获网站title标签之家内容的例子
如何跨站抓取别的站点的页面的补充
PHP 存取 MySQL 数据库的一个例子
PHP用户指南-cookies部分
PHP中一个控制字符串输出的函数
将OICQ数据转成MYSQL数据
在线增减.htpasswd内的用户
PHP实现图片简单上传
从C/C++迁移到PHP——判断字符类型的函数
PHP+APACHE实现用户论证的方法
vBulletin HACK----关于排版的两个HACK
PHP3 safe_mode 失效漏洞
一个改进的UBB类
如何在PHP中进行身份认证
利用递归把多维数组转为一维数组的函数

PHP 中的 解决GD中文乱码问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 256 ::
收藏到网摘: n/a

今天仔细研究了下GD的一些相关技术,顺手也研究下GD中文乱码的问题。
使用GD库输出中文字符串,调用imagestring是没有用的。需要使用imagettftext()函数。imagettftext函数的具体使用就参考手册啦。
下面给个使用实例:

$pic=imagecreate(250,30);
$black=imagecolorallocate($pic,0,0,0);
$white=imagecolorallocate($pic,255,255,255);
$font="C://WINDOWS//Fonts//simhei.ttf"; //这里的路进需要注意下,必须是字符的路径
$str ='php'.iconv('gb2312','utf-8','面对对象')." www.phpobject.net";
imagettftext($pic,10,0,10,20,$white,$font,$str);

前面我给出一个简单的GD水印实例,只举例说明了使用图片如何水印的,这里给出一个文字水印的简单代码。

<?php
$pic
=imagecreate(250,30);
$black=imagecolorallocate($pic,0,0,0);
$white=imagecolorallocate($pic,255,255,255);
$font="C://WINDOWS//Fonts//simhei.ttf";
$str ='php'.iconv('gb2312','utf-8','面对对象')." www.phpobject.net";
imagettftext($pic,10,0,10,20,$white,$font,$str);
header("Content-type: image/jpeg");
$filename='/upload/tech/20091012/20091012014011_28f0b864598a1291557bed248a998d4e.jpg';
$im=imagecreatefromjpeg($filename);
imagecopymerge($im,$pic,0,0,0,0,250,30,50);
imagejpeg($im);
?>