PHP 彩色文字实现代码
2015-01-24信息快讯网
最近流行彩字,下面是简单的实现代码。喜欢php的朋友可以看看。
最近流行彩字,下面是简单的实现方法:一.彩字的简单实现
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编码,如果不是,手工转一下..
要使用彩字,只需要用<img src="color.php?t=xxx" />即可,其中,color.php为生成彩字的程序(即上面的程序),xxx为经urlencode编码的文字(用来生成彩字)
三.smarty插件
在smarty的plugins目录下新建一文件modifier.ubb.php,内容如下:
function smarty_modifier_ubb($string){
$ubb = array(
'/\[b\](.+?)\[\/b\]/i', #加粗
'/\[url=(.+?)\](.+?)\[\/url\]/i', #url
'/\[colorfont\](.+?)\[\/colorfont\]/ie' #彩字,注意,要加e修饰符
);
$tohtml = array(
'<b>\\1</b>',
'<a href="\\1">\\2</a>',
'"<img src=\'color.php?t=".urlencode("\\1")."\'/>"'
);
//以上只是演ubb的实现,更多的ubb标签朋友们可以按方法自己实现,其中的color.php根椐实际去修改
return preg_replace($ubb,$tohtml,$string);
}
这样,要显示彩字,只需在内容中加入
[colorfont]文字[/colorfont]
显示时,在smarty模板中使用ubb修饰符即可,如{$contentubb}
php 数组的指针操作实现代码
PHP游戏编程25个脚本代码
PHP通用检测函数集合
延长phpmyadmin登录时间的方法
PHP开发中的错误收集,不定期更新。
用PHP读取和编写XML DOM的实现代码
php做下载文件的实现代码及文件名中乱码解决方法
PHP+SQL 注入攻击的技术实现以及预防办法
仿AS3实现PHP 事件机制实现代码
在Windows系统上安装PHP运行环境文字教程
php gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码
php 中文字符入库或显示乱码问题的解决方法
php截取utf-8中文字符串乱码的解决方法
php下图片文字混合水印与缩略图实现代码
php 将bmp图片转为jpg等其他任意格式的图片
php 过滤危险html代码
php 图片上添加透明度渐变的效果
需要发散思维学习PHP
PHP HTML代码串 截取实现代码
PHP 网页过期时间的控制代码
PHP 超链接 抓取实现代码
PHP 文件上传功能实现代码
php 404错误页面实现代码
PHP写MySQL数据 实现代码
php mssql 日期出现中文字符的解决方法
中英文字符串翻转函数
php中文字母数字验证码实现代码
php实现的简单压缩英文字符串的代码
php中文字符截取防乱码