PHP smarty的u插件实现彩字_PHP技巧_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

PHP smarty的u插件实现彩字

作者:黑客防线网安PHP教程基地 来源:黑客防线网安PHP教程基地 浏览次数:0

本篇关键词:实现插件'程序
黑客防线网安网讯:  最近流行彩字,下面是简单的实现方法:    一.彩字的简单实现    以下为引用的内容:    header("content-type:image/png");    $text=$_get['t'];    $font...
  最近流行彩字,下面是简单的实现方法:
  
  一.彩字的简单实现
  
  以下为引用的内容:
  
  header("content-type:image/png");
  
  $text=$_get['t'];
  
  $font='stxingka.ttf';//ttf字体
  
  $fontsize=30;
  
  $size=imagettfbbox($fontsize,0,$font,$text);//获得字体长宽范围
  
  $dx=abs($size[2]-$size[0])+10;
  
  $dy=abs($size[5]-$size[3]);
  
  //构建图像
  
  $im=imagecreate($dx,$dy);
  
  imagecolorallocate($im,255,255,255);//背景色
  
  $fontcolor=imagecolorallocate($im,255,0,0);//字体颜色
  
  imagettftext($im,$fontsize,0,0,abs($size[5]),$fontcolor,$font,$text);
  
  imagepng($im);
  
  imagedestroy($im);
  
  上面的程序只是表述了一些彩字的基本原理,要实现更复杂和美观的彩字,所要做的只是更换一下字体,改一下字体颜色,添加一些背景图,再考虑一下缓存等,方法也差不多,朋友们可以自己试试.
  
  二.彩字应用
  
  上面的程序生成的彩字是通过"?t=文字"来传递的,但需注意的是,这些文字最好用urlencode来编码,当然,长度也应该有限制,这不是本文讨论的范围.
  
  另外,生成彩字的程序和传递文字的程序都使用utf-8编码,如果不是,手工转一下..
  
  要使用彩字,只需要用<imgsrc="color.php?t=xxx"/>即可,其中,color.php为生成彩字的程序(即上面的程序),xxx为经urlencode编码的文字(用来生成彩字)
  
  三.smarty插件
  
  在smarty的plugins目录下新建一文件modifier.ubb.php,内容如下:
  
  以下为引用的内容:
  
  functionsmarty_modifier_ubb($string){
  
  $ubb=array(
  
  '/[b](.+?)[/b]/i',#加粗
  
  '/[url=(.+?)](.+?)[/url]/i',#url
  
  '/[colorfont](.+?)[/colorfont]/ie'#彩字,注意,要加e修饰符
  
  );
  
  $tohtml=array(
  
  '<b>\1</b>',
  
  '<ahref="\1">\2</a>',
  
  '"<imgsrc='color.php?t=".urlencode("\1")."'/>"'
  
  );
  
  //以上只是演ubb的实现,更多的ubb标签朋友们可以按方法自己实现,其中的color.php根椐实际去修改
  
  returnpreg_replace($ubb,$tohtml,$string);
  
  }
  
  这样,要显示彩字,只需在内容中加入
  
  [colorfont]文字[/colorfont]
  
  显示时,在smarty模板中使用ubb修饰符即可,如{$content|ubb}
  
  
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-17350-1.html
网站维护教程更新时间:2012-09-21 05:17:15  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer