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}

时间: 2024-09-23 07:39:25

PHP 实现彩色文字的相关文章

ruby在windows 7 cmd 中显示彩色文字

先放上一个实例的bat文件,要求管理员特权运行: @echo off ::CMD里显示彩色文字 chcp 437>nul&&graftabl 936>nul if not exist CONFIG.NT copy %WinDir%/System32/CONFIG.NT CONFIG.NT @cls echo DEVICE=%WinDir%/System32/ANSI.SYS /x >%WinDir%/System32/CONFIG.NT @echo. command /c

python在windows命令行下输出彩色文字的方法_python

本文实例讲述了python在windows命令行下输出彩色文字的方法.分享给大家供大家参考.具体分析如下: 默认情况下python在控制台输出的文字信息都是黑白的,如果能将文字做成彩色的输出,输出效果会更完美,也很酷,不是吗,下面是一段演示代码,这段代码封装了一个color类用来输出带颜色的文字,只要调用该类里面的相关方法就可以了,非常简单. 复制代码 代码如下: #!/usr/bin/env python #encoding: utf-8 import ctypes STD_INPUT_HAN

python通过colorama模块在控制台输出彩色文字的方法_python

本文实例讲述了python通过colorama模块在控制台输出彩色文字的方法.分享给大家供大家参考.具体分析如下: colorama是一个python专门用来在控制台.命令行输出彩色文字的模块,可以跨平台使用,在windows下linux下都工作良好,如果你想让控制台的输出信息更漂亮一些,可以使用给这个模块. colorama官方地址:https://pypi.python.org/pypi/colorama 安装colorama模块 pip install colorama 使用范例 from

微信朋友圈怎么发送彩色文字?

第一步,我们先来看看纯文字怎么发吧 打开微信朋友圈,长按"相机"图标,就会弹出"发表文字"的输入界面.这样就OK了! 第二步,简单的彩色文字 比如我们要输入红色的文字,那么就这样写,样子很像html代码: <a color=#ff0000>红色</a>文字 如图的应该是这样写: <a color=#ff0000>红色</a>文字,<a color=#00ff00>绿色</a>文字 怎么样,很好玩

怎么在微信朋友圈发送彩色文字

1.方法超级简单,我们只要在发微信文字时我们如这样输入<a color=#E47834>文字内容</a>即可 2.有些朋友可能发送不成功,下面我恶霸测试<a color=#E47834>橙色</a>.<a color=#E41834>红色</a>以及<a color=##808080>灰色</a>是可以直接在朋友圈显示的. 3.如果你代码输错了,会直接显示出代码了,如果正确了就会自动显示彩色文字.  4.解决办

PS教程:设计镀铬彩色文字

在本教程中,我们将更进一步学习如何创建一个彩色镀铬的文字效果. 我们看到过许多Photoshop教程教大家如何创建铬文字效果.在本教程中,我们将更进一步学习如何创建一个彩色镀铬的文字效果.首先,我们需要一个粗的圆形字体.然后创建一个新文件,尺寸为500pxx500px.深灰色的背景就不错.不要选择黑色的因为我们稍后要调整这部分.用大约190pt大小的字体在新图层上写出BIG.如下图所示: 双击字体图层打开图层样式窗口.单击渐变叠加,创建渐变,设置如下图: 我们将需要以下6种颜色(从左到右): 1

Photoshop制作镀铬彩色文字

看到过许多Photoshop教程教大家如何创建铬文字效果.在本教程中,我们将更进一步学习如何创建一个彩色镀铬的文字效果. 最终效果    首先,我们需要一个粗的圆形字体.然后创建一个新文件,尺寸为500px x 500px .深灰色的背景就不错.不要选择黑色的因为我们稍后要调整这部分.用大约190pt大小的字体在新图层上写出BIG.如下图所示:     双击字体图层打开图层样式窗口.单击渐变叠加,创建渐变,设置如下图:     我们将需要以下6种颜色(从左到右):    1. #bedeec  

iOS实现文字转化成彩色文字图片_IOS

本文写了个将文字转化为多彩图片的功能,输入文字将文字转化为彩色的文字图片,可选择不同的字体,渐变,先看看效果. 实现主要用CAGradientLayer渐变,先看看上部展示实现代码: -(void)setupContentView { UIView *contentView = [[UIView alloc] initWithFrame:CGRectMake(0, 44, ScreenWidth, ScreenHight - 44 -300)]; [self.view addSubview:co

Photoshop快速制作流行的彩色文字人像

制作文字人像的思路基本接近,过程:先把人物单独抠出来,背景单一的图片可以不用抠:然后用通道或调色工具提取人像的暗部区域:再输入文字,稍微做一些排版后合并为一个图层:用人像暗部选区复制文字得到初步文字人像:后期处理细节,添加一些颜色即可. 最终效果 1.打开要处理的素材,然后Ctrl + L 打开色阶调整人物的明暗度,参数如下. [1] [2] [3] [4]  下一页