PHP的imagettftext中文乱码解决方法
发布:smiling 来源: PHP粉丝网 添加日期:2018-10-23 10:02:19 浏览: 评论:0
分析:
1、确认gb库是否正确安装?没有报这个方法不存在。
2、imagettftext()必须utf-8编码,php的整个项目都是utf-8编码,所以不用太多考虑。如果不是,可以mb_convert_encoding()转换;
3、检查字体是否加载正确,写死了字体路径,而且换了多个字体(常用的中文字体文件是simsun.ttc和simhei.ttf),还是不行,确认应该不是字体的问题。
然后看到网上有人说:请检查你在编译gd库时是否添加了–enable-gd-jis-conv选项,此选项是为了让gd库支持日文编码的字库,请取消此选项并重新编译。
然后我查看了我的php编译选项,是添加了这个参数,难道要重新编译?
正当我蛋疼的时候,又看到一篇文章:
$str=mb_convert_encoding('汉字', "html-entities", "utf-8"); //转成html编码
例子,具体代码如下(文件格式为gb2312):
- <?php
- $im = imagecreatefromjpeg('./1.jpg');
- $w = imagesx($im);
- $h = imagesy($im);
- $green = imagecolorallocate($im,50,100,200);
- $str = iconv('gb2312','utf-8','幸福就在身边');//解决乱码问题
- imagettftext($im,16,0,200,100,$green,'./simhei.ttf',$str);
- header("content-type: image/jpeg");
- imagejpeg($im);
- imagedestroy($im);
- ?>
例子2:
转码方法不复杂,不要紧张。将“我爱你”这几个字粘贴在记事本中,然后另存为utf8格式的文本,也就是unicode utf-8格式,随便起一名字保存,就叫做test.txt吧。下一步:用一个16进制的文本编辑器打开test.txt,你会看到里面的文字格式形如:chr(0xE6)等等,复制这些格式的代码,然后看下面的函数,相信你已经看懂了。
- <?php
- //在PHP的图形函数中输出“我爱你”
- $cur_count=chr(0xE6).chr(0x88).chr(0x91).chr(0xE7).chr(0x88).chr(0xB1).chr(0xE4).chr(0xBD).chr(0xA0).chr(0xEF).chr(0xBC).chr(0x81) ;
- Header("Content-type: image/gif");
- $im = imagecreate(156,116);
- $black = ImageColorAllocate($im, 0,0,0);
- $blue = ImageColorAllocate($im, 0,0,255);
- $white = ImageColorAllocate($im, 255,255,255);
- $yellow = ImageColorAllocate($im, 255,255,0);
- ImageTTFText($im,20,0,4,40,$yellow,"simkai.ttf",$cur_count);//我这里选择的本地字体是楷体,必须选择系统字库中存在的字体才行
- ImageGif($im); //phpfensi.com
- ImageDestroy($im);
- ?>
Tags: 乱码 中文 方法
相关文章
- ·php gvim中文乱码分析解决方法(2013-11-29)
- ·php json_encode()函数中文编码乱码解决方法(2014-01-16)
- ·php 乱码问题分析(2014-05-12)
- ·Directadmin安装Zend Optimizer乱码解决办法(2014-08-27)
- ·NuSOAP 调用 Web Service 出现乱码的解决方法(2014-09-04)
- ·php 调用 webservice 中文乱码解决方案(2014-09-06)
- ·PHP连接MSSQL显示中文时为乱码(2014-09-10)
- ·PHP连接mysql数据库乱码解决办法(2014-09-10)
- ·php查询mssql出现问号(中文乱码)解决方法(2014-09-10)
- ·PHP+MYSQL 出现乱码问号的解决方法(2014-09-10)
- ·php保存中文sql server 2008里出现乱码(2014-09-11)
- ·解决php中openssl pkey_new()创建中文数字证书乱码问题(2018-10-20)
- ·phpmailer中文乱码问题的解决方法(2020-11-19)
- ·php smarty truncate UTF8乱码问题解决办法(2021-02-19)
- ·php使用dom解析含有中文字符xml文档(2013-11-30)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)