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

PHP
UTF8编码内的繁简转换的PHP类
php strlen mb_strlen计算中英文混排字符串长度
php str_pad 函数用法简介
php at(@)符号的用法简介
php 小乘法表实现代码
PHP源码之 ext/mysql扩展部分
php与php MySQL 之间的关系
PHP form 表单传参明细研究
PHP 配置文件中open_basedir选项作用
php PDO中文乱码解决办法
PHP PDO函数库(PDO Functions)
php 验证码制作(网树注释思想)
PHP UTF8编码内的繁简转换类
一个PHP数组应该有多大的分析
PHP file_get_contents 函数超时的几种解决方法
PHP 变量定义和变量替换的方法
PHP 中文乱码解决办法总结分析
PHP 文章中的远程图片采集到本地的代码
PHP 上传文件的方法(类)
php 获得汉字拼音首字母的函数

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 322 ::
收藏到网摘: 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);
?>