当前位置:首页 > 电脑知识 > 正文内容

没想到(imagettftext函数)imagettftext函数支持的编码类型,imagettftext(): any2eucjp(): invalid code in input string 错误解决方法,imagettftext(): any2eucjp(): invalid code in input string 错误解决方法,

sauo3年前 (2022-09-17)电脑知识188

最近在研究关于php生成图片的东西,发现了 imagettftext() 函数中一个不是错误的错误,具体的错误情况如下所示。

错误代码:

imagettftext(): any2eucjp(): invalid code in input string 

错误原因:

在编译php的时候,开启了 --enable-gd-jis-conv 这个选项,而这个选项是对日文的支持,而我们使用utf-8编码的中文时会被识别成日本,所以会抛出一个错误,通俗来说这个错误是一个php本身的BUG,并不是代码的问题。

解决方法:

下面提供两种解决方法,看自己使用那一种。

1、重新编译php,并关闭 --enable-gd-jis-conv 这个选项

2、对字符串进行一个处理

处理代码如下:

PHP
// 这里是一个处理函数 function to_entities($string) { $len = strlen($string); $buf = ""; for($i = 0; $i < $len; $i++){ if (ord($string[$i]) <= 127){ $buf .= $string[$i]; } else if (ord ($string[$i]) <192){ $buf .= "&#xfffd"; } else if (ord ($string[$i]) <224){ $buf .= sprintf("&#%d;", ((ord($string[$i + 0]) & 31) << 6) + (ord($string[$i + 1]) & 63) ); $i += 1; } else if (ord ($string[$i]) <240){ $buf .= sprintf("&#%d;", ((ord($string[$i + 0]) & 15) << 12) + ((ord($string[$i + 1]) & 63) << 6) + (ord($string[$i + 2]) & 63) ); $i += 2; } else { $buf .= sprintf("&#%d;", ((ord($string[$i + 0]) & 7) << 18) + ((ord($string[$i + 1]) & 63) << 12) + ((ord($string[$i + 2]) & 63) << 6) + (ord($string[$i + 3]) & 63) ); $i += 3; } } return $buf; } //函数的使用 imagettftext($im, 11, 0, 5, 11, $black, $font, to_entities($text));复制

本文链接:http://blog.sauo.top/?id=289 感谢分享!

分享到:

扫描二维码推送至手机访问。

版权声明:本文由冬眠先生个人博客发布,如需转载请注明出处。

本文链接:http://blog.sauo.top/?id=289

分享给朋友:

“没想到(imagettftext函数)imagettftext函数支持的编码类型,imagettftext(): any2eucjp(): invalid code in input string 错误解决方法,imagettftext(): any2eucjp(): invalid code in input string 错误解决方法,” 的相关文章

深度揭秘(Ubuntu 防火墙设置)ubuntu防火墙配置文件,ubuntu防火墙的安装与设置,ubuntu防火墙的安装与设置,

免费领取腾讯云服务器! ubuntu系统中的防火墙使用的是iptables,而为了方便防火墙的设置ubuntu提供了一个防火墙管理工具ufw.下面这篇文章就说一说关于防火墙管理工具ufw的安装与使用方法。 ubuntu防火墙ufw的安装与设...

新鲜出炉(ubuntu系统与centos系统区别)ubuntu还是centos,centos系统与ubuntu系统的区分,centos系统与ubuntu系统的区分,

免费领取腾讯云服务器! Linux的发行版有很多,而我们经常使用的为centos与ubuntu,下面这篇博文就说说这两个系统的发源与区别。 CentOS CentOS(Community Enterprise Operati...

一篇读懂(PHP for循环)php跳出循环的语句,php中的几种循环语句,php中的几种循环语句,

免费领取腾讯云服务器! 列举几种php脚本中常用的几种循环语句,比如,for,foreach,do....while 等。 php for循环 for循环在很多语言中都经常用到,比如js语言,c语言,java语言等。...

全程干货(php将图片转为对象)php文件怎么转成图片,php将图片转为base64编码格式图片的方法,php将图片转为base64编码格式图片的方法,

免费领取腾讯云服务器! 下面的博文提供两个利用php代码将图片转为base64编码格式图片的方法,分为php转换本地图片为base64图片以及php转换远程图片为base64图片的方法。...

这都可以(mac打开md文件)如何查看文件的md5,mac系统下查看文件md5的方法,mac系统下查看文件md5的方法,

这都可以(mac打开md文件)如何查看文件的md5,mac系统下查看文件md5的方法,mac系统下查看文件md5的方法,

免费领取腾讯云服务器! 上一篇博文飞鸟慕鱼博客讲了一下,关于在window系统中利用cmd命令查看文件md5的方法,下面这篇博文飞鸟慕鱼就来说说在mac苹果系统中,如果利用终端命令来查看文件md5的值 mac 查看文件md5的方法...

硬核推荐(windows查看文件的md5值)windows 查看md5值,window 系统查看文件md5值的方法,window 系统查看文件md5值的方法,

硬核推荐(windows查看文件的md5值)windows 查看md5值,window 系统查看文件md5值的方法,window 系统查看文件md5值的方法,

免费领取腾讯云服务器! 在winodw系统上查看一个文件的md5值,不用去安装专门查看文件md5的软件,只需要使用 cmd 命令即可。 window 查看 md5 值的方法 1、打开CMD命令窗口 (1)、快...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。