我是这样汉化Danasoft论坛签名的

王朝other·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

作者:杨忠勋

专业:计算机软件开发及应用

语言能力:TOFEL633 GRE2140

Email:zhongxunyang@yahoo.com.cn

随着网上中文论坛的火暴,很多人都希望能拥有一个体现个性的签名图片,各种签名图片层出不穷。其中Danasoft.com提供的签名图片以其可爱的卡通图像,可以随机出现的引语,实用的功能(可以获取浏览者的IP地址,所使用的操作系统,浏览器种类和版本等)迅速获得了各国网友的青睐,已经被翻译成了十几种语言。但遗憾的是一直都没有中文版。

受Danasoft.com的委托,为其开发的论坛签名制作一中文版,原论坛签名图片如下

http://www.danasoft.com/vipersig.jpg

因为在PHP中不支持中文显示,只能把要显示的中文转换成unicode码。所以 第一步 就先来做这个转换,于是我写了一个Unicode转换函数,其中用到了iconv()函数。转换函数具体如下:

function conv($instring) {

$outstring="";//定义输出变量

$max=strlen($instring);//获取输入字符串的长度

for($i=0;$i<$max;$i++){

$h=ord($instring[$i]);

if($h>=160 && $i<$max-1){

$outstring.="&#".base_convert(bin2hex(iconv("gb2312","ucs-2",substr ($instring,$i,2))),16,10).";";//进行unicode的转换

$i++;

}else{

$outstring.=$instring[$i];

}

}

return $outstring;//返回转换后的字符串

}

有了转换函数以后, 第二步 就需要将要显示的中文翻译成unicode码,比如这是特权不是权利,翻译成unicode码就是"&#36825;&#26159;&#29305;&#26435;&#65292;&#19981;&#26159;&#26435;&#21033;&#65281;",具体如何转换,请参考相应资料。

现在就到了 最后一步 了,也是最简单的一步,只需要将程序中的待显示的字符串变量都加上conv函数就可以了。比如在程序中使用了imagettfbox()函数,用来显示签名图片底部的动态引语。原程序如下

imagettfbbox($fontsize, $textangle, $fontfile, $line);

在此处,将imagettfbox的参数修改为

imagettfbbox($fontsize, $textangle, $fontfile, conv($line));

好了,到此为止,汉化Danasoft.com论坛签名的工作就结束了。汉化后的Danasoft.com论坛签名已经在Danasoft.com的官方网站公布,可用如下地址查看:

http://www.danasoft.com/sig-chi.jpg

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有  導航