• 技术文章 >后端开发 >PHP问题

    php gd库中文乱码怎么解决?

    青灯夜游青灯夜游2020-07-21 12:05:37原创1158

    解决方法:1、网站整站使用UTF8编码,如果已使用GB2312或GBK编码,需进行字符编码转换;2、将Apache配置文件中的默认字符集修改为UTF8;3、gd库中取消“enable-gd-jis-conv”选项,并重新编译。

    php gd库产生中文乱码的原因

    1、服务器编码原因。在用GD库输出中文字符串时,要使用imagettftext()函数。由于imagettftext函数字符串参数的默认编码是UTF8,如果服务器编码不一致,而又没有进行相应的字符编码格式转换,很容易出现使用gd库输出图片时中文字符变成乱码。

    【相关教程推荐:《PHP教程》】

    2、没有选择正确的TTF字体文件。使用gd库时如果要输出中文字符,需要选择正确的TTF字体文件。

    php gd库中文乱码解决方法

    根据之前介绍的php gd库产生中文乱码的原理,解决php gd库中文乱码的方法其实很简单。

    1、建议整站使用UTF8编码,如果你已使用的是GB2312或GBK编码,请使用iconv或自定义的gb2312与utf8转换函数进行字符编码转换。

    2、如果你是刚进行php环境搭建,建议将Apache配置文件中的默认字符集修改为UTF8,即AddDefaultCharset UTF8。

    3、如果上述方法还不行,请检查你在编译gd库时是否添加了–enable-gd-jis-conv选项,此选项是为了让gd库支持日文编码的字库,请取消此选项并重新编译。此方法我没验证过,估计主要是针对Unix下安装配置php环境。Windows环境一般不会出现这种情况,似乎默认 PHP配置文件是注释掉的。

    4、使用php gd库产生中文乱码的另一个原因是没有选择正确的TTF字体,你需要选择支持中文的字体,常用的中文字体文件是simsun.ttc和simhei.ttf。

    OK,只要按照上述方法,基本上使用php gd库产生中文乱码时都能够解决。只要仔细排查其实gd库的中文乱码解决起来非常方便。

    以上就是php gd库中文乱码怎么解决?的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php gd库 中文乱码
    上一篇:怎么在php.ini文件中设置时区? 下一篇:php如何通过pecl方式安装扩展?
    线上培训班

    相关文章推荐

    • php下mysql中文乱码怎么办?• phpmyadmin出现中文乱码怎么办?• php中uft-8中文编码乱码怎么办?• php cookie怎么设置过期时间?• 怎么在php.ini文件中设置时区?

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网