php生成图片文字混合图片的例子
生成图片文字混合图片通常用于验证码了,下面来看一个关于php生成图片文字混合图片的例子,希望对大家会有所帮助.
例子一:图片合成文字:
- <?php
- $im = imagecreatetruecolor(400, 30); //创建400 30像素大小的画布
- $white = imagecolorallocate($im, 255, 255, 255);
- $grey = imagecolorallocate($im, 128, 128, 128);
- $black = imagecolorallocate($im, 0, 0, 0);
- imagefilledrectangle($im, 0, 0, 399, 29, $white); //输出一个使用白色填充的矩形作为背景
- //如果有中文输出,需要将其转码,转换为UTF-8的字符串才可以直接传递
- //$text = iconv("GB2312", "UTF-8", "回忆经典");
- $text = "中文aflasjflasjflasjf";
- //设定字体,将系统中与simsun.ttc对应的字体复制到当前目录下
- $font = 'SIMSUN.TTC';
- //phpfensi.com
- imagettftext($im, 20, 0, 12, 21, $grey, $font, $text); //输出一个灰色的字符串作为阴影
- imagettftext($im, 20, 0, 10, 20, $black, $font, $text); //在阴影上输出一个黑色的字符串
- header("Content-type: image/png");
- imagepng($im);
- imagedestroy($im);
- exit;
- ?>
例子二:
- <?php
- //字体大小
- $size = 30;
- //字体类型,本例为宋体
- $font ="c:/windows/fonts/simsun.ttc";
- //显示的文字
- $text = "www.phpfensi.com";
- //创建一个长为500高为80的空白图片
- $img = imagecreate(500, 80);
- //给图片分配颜色
- imagecolorallocate($img, 0xff, 0xcc, 0xcc);
- //设置字体颜色
- $black = imagecolorallocate($img, 0, 0, 0);
- //将ttf文字写到图片中
- imagettftext($img, $size, 0, 100, 50, $black, $font, $text);
- //发送头信息
- header('Content-Type: image/gif');
- //输出图片
- imagegif($img);
- ?>
注意:
php中GD2扩展库是优秀的图片处理库,可以创建各种格式图片,功能及其强大!
开启GD2:找到php的配置文件php.ini搜索extension=php_gd2.dll,去掉其前面的";