php中GD库的简单使用

  在php中需要图像处理的地方GD库会发挥重要的作用,php可以创建并处理包括GIF,PNG,JPEG,WBMP以及XPM在内的多种图像格式,简单的举几个例子:

  1、用GD库会创建一块空白图片,然后绘制一个简单的线条

1 $img=imagecreatetruecolor(100, 100);    //创建空白图片
2 $red=imagecolorallocate($img, 0xFF, 0x00, 0x00);    //创建画笔
3 imageline($img,0,0,100,100,$red);    //绘制线条
4 //输出图像到页面
5 header("content-type: image/png");
6 imagepng($img);
7 //释放图片资源
8 imagedestroy($img);

那么现在就在默认黑色的背景上画了一个红色的线段,坐标从(0,0)到(100,100)

效果就如下图:

  2、绘制字符串

1 $img = imagecreatetruecolor(100, 100);
2 $red = imagecolorallocate($img, 0xFF, 0x00, 0x00);
3 //开始绘制字符串
4 imagestring($img,5,0,13,"zengzhiying",$red);
5 header("content-type: image/png");
6 imagepng($img);
7 imagejpeg($img,‘img.jpg‘,80);    //输出图片到文件并设置压缩参数为80
8 imagedestroy($img);

代码第7行代码作用是将图片保存到文件,直接可以打开,也可以用imagepng()函数保存为PNG格式的图片

  3、生成数字验证码

 1 $img = imagecreatetruecolor(100, 40);
 2 $black = imagecolorallocate($img, 0x00, 0x00, 0x00);
 3 $green = imagecolorallocate($img, 0x00, 0xFF, 0x00);
 4 $white = imagecolorallocate($img, 0xFF, 0xFF, 0xFF);
 5 imagefill($img,0,0,$white);    //绘制底色为白色
 6 //绘制随机的验证码
 7 $code = ‘‘;
 8 for($i = 0; $i < 4; $i++) {
 9     $code .= rand(0, 9);
10 }
11 imagestring($img, 6, 13, 10, $code, $black);
12 //加入噪点干扰
13 for($i=0;$i<50;$i++) {
14   imagesetpixel($img, rand(0, 100) , rand(0, 100) , $black);
15   imagesetpixel($img, rand(0, 100) , rand(0, 100) , $green);
16 }
17 //输出验证码
18 header("content-type: image/png");
19 imagepng($img);
20 imagedestroy($img);

这样就生成了4位随机数字验证码,并且有黑色和绿色两种颜色的点干扰,当然这是最简陋的一个验证码了,在这里只是演示大致过程,效果如下图:

  4、给图片添加水印

1 $filename = ‘tmp.jpg‘;
2 $logofile=‘logo.png‘;
3 $im = imagecreatefromjpeg($filename);
4 $logo = imagecreatefrompng($logofile);
5 $size = getimagesize($logofile);
6 imagecopy($im, $logo, 15, 15, 0, 0, $size[0], $size[1]);
7 header("content-type: image/jpeg");
8 imagejpeg($im);
9 imagedestroy($im);

imagecopy()就是添加水印的函数,里面的参数可以自己调整,做出来更好的水印

以上就是GD库的简单应用了,也可以把代码做成一个函数来使用

时间: 2024-10-09 07:20:21

php中GD库的简单使用的相关文章

php中GD库(转)

"php中GD库的一些简单使用":关键词:php 中 gd 库 一些 简单 使用 今天了解了一些gd库的简单使用,现在稍微做一下总结! gd库是什么?,graphic device,图像工具 库,gd库是php处理图形的扩展库,gd库提供了一系列用来处理图片的api,使用gd库可以处理图片,或者生成图片. 在网站上 gd库通常用来生成缩略图或者用来对图片加水印或者对网站数据生成报表 . php并不局限于输出html文本.php通过使用gd扩展库还能用来动态输出图像,例如文字按钮.验证码

php中GD库的一些简单使用

今天了解了一些GD库的简单使用,现在稍微做一下总结! GD库是什么?,graphic device,图像工具库,gd库是php处理图形的扩展库,gd库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片. 在网站上 GD库通常用来生成缩略图或者用来对图片加水印或者对网站数据生成报表. php并不局限于输出HTML文本.php通过使用GD扩展库还能用来动态输出图像,例如文字按钮.验证码.数据统计图等.哈可以轻松地编辑图像,力图处理缩略图和为图片添加水印等,具有强大的图像处理能力.

PHP中GD库安装

安装gd库扩展不能像其他扩展安装一样,直接./configure --prefix=/xxx 还需要激活png,jpeg,字库等支持 ./configure --prefix=/xxx --with-png --with-jpeg --with-freetype=freetype路径 如果系统没有png,jpeg,freetype等,需要提前安装 所以如果没有freetype,我们是无法使用 imagettftext()等函数的 例如thinkPHP框架中使用图形验证码的时候会报错 Fatal

(转)php中GD库的配置,解决dedecms安装中GD不支持问题

了解gd库 在php中,使用gd库来对图像进行操作,gd库是一个开放的动态创建的图像的源代码公开的函数库,可以从官方网站http://www.boutell.com/gd处下载.目前,gd库支持gif,png,jpeg,wbmp和xbm等多种图像格式.gd库通常用于图像的处理. 1.安装WAMP后,搭载好PHP开发环境后,在php.ini中找到php_gd2.dll,把前面的分号去掉.2.在php安装文件目录下的ext文件夹下找到php_gd2.dll文件,把它复制到C:\WINDOWS\sys

安装GD库解决ThinkPHP 验证码Call to undefined function Think\imagecreate()出错

在php中imagecreate函数是一个图形处理函数,主要用于新建一个基于调色板的图像了,然后在这个基础上我们可以创建一些图形数字字符之类的,但这个函数需要GD库支持,如果没有开启GD库使用时会提示Call to undefined function imagecreate()错误. 例,我在测试一个简单生成图形时实例 Example #1 新建一个新的 GD 图像流并输出图像  代码如下 复制代码 <?php header("Content-type: image/png")

PHP学习笔记-----GD库

PHP中GD库的使用 最新的GD库版本支持GIF.JPEG.PNG.WBMP.XBM等格式的图像文件. 创建图像应该完成如下所示的4个步骤. (1)      创建画布 (2)      绘制图像 (3)      输出图像 (4)      释放资源 画布管理 imagecreate()//新建一个基于调色板的图像 imagecreatetruecolor()//新建一个真彩***像 设置颜色 imagecolorallocate()//为一副图像分配颜色 生成图像 imagegif() im

PHP-&gt;利用GD库新建图像

1.确认php中GD库是否开启 在PHP配置文件php.ini中查找extension=php_gd2.dll,去掉前边的(分号) ';' 即可,一般php是默认开启的 2.绘画步骤 创建一个画布(画板).画笔.色彩. *开始绘画(重点,难点) 输出图像(复制型) 销毁图像资源(释放内存) 3.示例 为了方便演示,先了解后两步 输出图像: 1 header("Content-Type: image/jpeg");//设置响应头信息为一个jpeg的图片 2 imagejpeg($im);

PHP系列(十)GD库

GD库 1.Php中gd库的使用 Gd库是一个画图或处理有图片的函数库 2.使用gd库画图 GD库图像绘制的步骤 在PHP中创建一个图像应该完成如下所示的4个步骤: 1.创建一个背景图像(也叫画布),以后的操作都基于此背景图像. 2.在背景上绘制图像轮廓或输入文本. 3.输出最终图形 4.释放资源 代码: <?php //1. 创建画布 $im = imageCreateTrueColor(200, 200); //建立空白画布背景 $white = imageColorAllocate($im

GD库的基本信息,图像的旋转、水印、缩略图、验证码,以及图像类的封装

GD库检测 <?php phpinfo(); ?> GD库安装• Windows 使用phpstudy • Linux 编译安装 –with-gd• Linux 编译安装扩展 GD库支持的图像格式 使用 gd_info() 函数 检测服务器支持的图像格式 图像信息处理 <?php //获取图像详细信息 $image = '../image/b.png'; $info = getimagesize($image); var_dump($info); $string = file_get_c