回 帖 发 新 帖 刷新版面

主题:把中文字写在图片上!

以下是一部分代码:

 $word = iconv("gb2312", "utf-8", "一个人住");//文字
 $fontsize=5;//字体
 $wordColor=imagecolorallocate($dstimg,0x08,0x00,0x00);//颜色
 $wordX=$dstW2-200;//x坐标
 $wordY=$dstH2-20;//y坐标
 imagestring($dstimg,$font,$wordX,$wordY,$word,$wordColor);//写入文字
 imagejpeg($dstimg,$dstFile);

上面的代码不知道为什么,就是不能显示中文,英文跟数字显示是没有问题的!

需要的类,已经安装好。
而在别的代码上是可以显示的!
$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);
$word =  iconv("GB2312", "UTF-8", "一个人住");  
imagettftext($im, $fontsize, 0, 12, $fontsize+8, $black, $font, $word);
imagettftext($im, $fontsize, 0, 10, $fontsize+6, $white, $font, $word);
这是可以显示的代码一部份!

同样把中文转换成UTF-8编码,为什么一个可以一个不可以呢??

回复列表 (共2个回复)

沙发

ImageString好像不支持中文的,一般都用imagettftext.ImageString可以通过将文字和点阵转换显示图形,不过太麻烦.还是直接用后者方便!

板凳

看来mageString好像真的不支持中文,在网上搜了一下,都是建议使用imagettftext来显示中文的.
我也知道可以通过将文字和点阵转换显示图形,真的太麻烦,还要建一个什么字型表!来转换成点阵!我才不做这么麻烦的事情.

大不了就只显示英文呗!
呵呵~~~~

我来回复

您尚未登录,请登录后再回复。点此登录或注册