Heim > php教程 > php手册 > 用PHP实现渐变字体输出

用PHP实现渐变字体输出

WBOY
Freigeben: 2016-06-13 10:33:15
Original
1860 Leute haben es durchsucht

先演示一下:

今天刚写的,还热乎着呢,代码如下:

Header("Content-type: image/png");

$txt=$_GET[txt]."(刷新我会变色哦)";
$i=strlen($txt);
$width=16*strlen($txt);
$height=42*(int)($width/500+1);
$im = imagecreate($width,$height);

$background_color=imageColorAllocate($im,223,223,223);
$white=imageColorAllocate($im,255,255,255);
$color1=imageColorAllocate($im,255,128,128);
$red=imageColorAllocate($im,255,0,0);
$color3=imageColorAllocate($im,128,64,64);
$yellow=imageColorAllocate($im,255,255,0);
$color4=imageColorAllocate($im,255,128,0);
$color5=imageColorAllocate($im,128,128,0);
$green=imageColorAllocate($im,0,255,0);
$color6=imageColorAllocate($im,0,128,0);
$blue=imageColorAllocate($im,0,0,255);
$pink=imageColorAllocate($im,255,0,128);
$black=imageColorAllocate($im,0,0,0);

$array=array($color1,$red,$color3,$color4,$color5,$green,$color6,$blue,$pink,$black,$white);

$x=1;
$y=40;
$count=1;

for($t=0;$t {
        $temp=rand(0,10);
        $color=$array[$temp];
        if (ord($txt[$t]) >= 128)
        {
                if($x+32>500)
                {
                        $x=1;
                        $y=40+$count*41;
                        $count++;
                }
                $temp=$txt[$t++].$txt[$t];
                                $temp=mb_convert_encoding($temp, "UTF-8", "gb2312");
                imagettftext($im,24, 0, $x, $y, $color,"tupian/finish/simsun.ttc",$temp);
                $x+=32;

        }
        else
        {
                if($x+8>500)
                {
                        $x=1;
                        $y=40+$count*41;
                        $count++;
                }
                imagettftext($im,24, 0, $x, $y, $color,"tupian/finish/simsun.ttc",$txt[$t]);
                $x+=16;
        }
}
ImagePNG($im);
ImageDestroy($im);

?>


使用说明:将上面的代码保存为1.php!

1、在浏览器中输入http://你的网址/1.php?txt=文字  可直接观看效果
2、在
论坛中以这样的形式发帖:{img}http://你的网址/1.php?txt=文字{/img}(实际用时把大括号换为中括号)

PS:如果你的空间不支持mb_convert_encoding函数,你需要有把gb2312转为utf-8的函数才能支持中文!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage