麻辣堂|资源主站|开发论坛|在线手册
首页 Apache Linux Java MySQL 注册帮助 
PHP项目开发组是PHP开发资源网于2007组年建成立的项目开发团队,目前核心开发成员有27人, 项目协作成员8名.下设7个开发组,主要承接大/中型网站项目开发任务。

    由于开发任务较多,人员比较紧张,现面向社会招聘全职或者兼职开发人员,不管你是在校大学生,还是全职开发人员,以及SOHO都可以联系本站,我们可以长期合作,并为您带来丰厚的报酬。
  您现在的位置:PHP开发资源网 > 麻辣堂 > 详细资料
待解决
一个关于用gd2处理中文的小问题
悬赏分:20 - 2007年08月15日

代码是这样的
[PHP]
<?php
$image = imagecreatefromjpeg('haha.jpg'); //我例子里的图片打算做成4个行,2个列文字的图片
$white = imagecolorallocate($image,0xff,0xff,0xff);
$black = imagecolorallocate($image,0x00,0x00,0x00);

$all = $_GET['text'];//可以从url里直接?text=x来设置变量

$allg=iconv("gb2312","utf-8","$all");//开启php_iconv扩展,将gb2312的$all转化为utf8

for ( $i=0 ; $i<4 ; $i++){
imageTTFTEXT($image,15,0,195,25+$i*20,$black,'simyou',substr("$allg",$i*2,3));//用imageTTFTEXT输出truetype的字体,并且用substr截取输入字段(第一行截第1,2个字,第2行截3,4个字,最多8个字)最后的3是因为utf8的中文都是3个字节的
};

header("content-type = image/jpg");
imagejpeg($image)
?>
[/PHP]

写到这里我发现一个问题,substr无法正确处理被utf8编码过的英文和中文,试了很多办法都不行。请问有什么办法能够解决这个问题?

代码是可以执行的,可是最多正确显示1个汉字。。。。

提问者:ngfeiyan   08-15 17:05
答复
路过。。。顺便帮顶:)
回答者:玉米づ冰冻可乐 - 瓦岗村民 8-22 09:10
我也来回答:
不管你有没有帮助我们,瓦岗寨8万村民将感谢你。。。。。

为防止灌水,您需要计算一道数学题: 答案:
39 + 43 = ? 请将计算结果填在上面

 
[]
©2007 PhpRes.COM