GD库imagettftext中文乱码的问题

linux下出现乱码,加上编码转换就可以了。

$im = imagecreatefromjpeg('images/img.jpg');

//注意,经踩坑,在PHP7.0以上环境中,字体文件要使用绝对路径,使用getcwd()函数获取当前文件的路径,然后再加上字体的路径,不能使用相对路径

$font = 'simhei.ttf';  //对应的字体文件

$white = imagecolorallocate($im,255,255,255);  //字体颜色 RGB
$fontSize = 24;   //字体大小
$circleSize = 0;  //旋转角度
$left = 100;       //左边距
$top = 100;       //顶边距
$str = "你好,世界!";    //要加的文字
$str = mb_convert_encoding($str, "html-entities", "utf-8");
imagettftext($im, $fontSize, $circleSize, $left, $top, $white, $font, $str);

header('Content-type: image/png');
//imagejpeg($im,'test.jpg');
imagejpeg($im);
imagedestroy($im);

posted on 2018-11-12 14:09  phproom小新  阅读(478)  评论(0编辑  收藏  举报

导航