PHP GD库生成图像的几个函数总结


Posted in PHP onNovember 19, 2014

使用GD库中提供的函数动态绘制完成图像以后,就需要输出到浏览器或者将图像保存起来。在PHP中,可以将动态绘制完成的画布,直接生成GIF、JPEG、PNG和WBMP四种图像格式。可以通过调用下面四个函数生成这些格式的图像:

bool imagegif(resource $image[,string $filename])                              //以GIF格式将图像输出

bool imagejpeg(resource $image[,string $filename[,int $quality]])                        //以JPEG格式将图像输出

bool imagepng(resource $image[,string $filename])                                 //以PNG格式将图像输出

bool imagewbmp(resource $image[,string $filename[,int $foreground]])                      //以WBMP格式将图像输出

以上四个函数的使用类似,前两个参数的使用是相同的。第一个参数$image为必选项,是前面介绍的图像引用句柄。如果部位这些函数提供其他参数,访问时则直接将原图像流出,并在浏览器使用中显示动态输出的图像。但一定要在输出之前,使用header()函数发送标头信息,用来通知浏览器使用正确的MIME类型对接收的内容进行解析,让它知道我们发送的是图片而不似乎文本的HTML。以下代码段通过自动检测GD库支持的图像类型,来写出移植性更好的PHP程序。如下所示:

<?php

    if(function_exists("imagegif")){                //判断生成GIF格式图像的函数是否存在

        header("Content-type:image/gif");           //发送标头信息设置MIME类型为image/gif

        imagegif($im);                              //以GIF格式将图像输出到浏览器

    }elseif(function_exists("imageipeg")){

        header("Content-type:image/jpeg");

        imagejpeg($im,"",0.5);

    }elseif(function_exists("imagepng")){

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

        imagepng($im);

    }elseif(function_exists("imagewbmp")){

        header("Content-type:image/wbmp");

        imagewbmp($im);

    }else{

        die("在PHP服务器中,不支持图像");

    }

?>

如果希望将PHP动态绘制的图像保存在本地服务器上,则必须在第二个可选参数中指定一个文件名字符串。这样不仅不会将图像直接输出到浏览器,也不需要使用header()函数发送标头信息。如果使用imageJPEG()函数生成JPEG格式的图像,还可以通过第三个可选参数$quality指定JPEG格式图像的品质,该参数可以提供的值是从0(最差品质,但文件最小)到100(最高品质,文件也最大)的整数,默认值为75.也可以为函数imageWBMP()提供第三个可选参数$forground,指定图像的前景颜色,默认颜色值为黑色。

PHP 相关文章推荐
社区(php&amp;&amp;mysql)二
Oct 09 PHP
php下通过POST还是GET来传值
Jun 05 PHP
php下实现在指定目录搜索指定类型文件的函数
Oct 03 PHP
PHP用GD库生成高质量的缩略图片
Mar 09 PHP
PHP安全配置详细说明
Sep 26 PHP
PHP实现将textarea的值根据回车换行拆分至数组
Jun 10 PHP
php实现在服务器端调整图片大小的方法
Jun 16 PHP
PHP连接Nginx服务器并解析Nginx日志的方法
Aug 16 PHP
php实现表单多按钮提交action的处理方法
Oct 24 PHP
PHP调用API接口实现天气查询功能的示例
Sep 21 PHP
详解PHP变量传值赋值和引用赋值变量销毁
Mar 23 PHP
PHP中__set()实例用法和基础讲解
Jul 23 PHP
PHP中绘制图像的一些函数总结
Nov 19 #PHP
PHP中round()函数对浮点数进行四舍五入的方法
Nov 19 #PHP
PHP中创建图像并绘制文字的例子
Nov 19 #PHP
PHP图片处理之图片背景、画布操作
Nov 19 #PHP
php使用function_exists判断函数可用的方法
Nov 19 #PHP
PHP图片处理之使用imagecopyresampled函数实现图片缩放例子
Nov 19 #PHP
PHP判断一个gif图片是否为动态图片的方法
Nov 19 #PHP
You might like
vs中通过剪切板循环来循环粘贴不同内容
2011/04/30 PHP
PHP判断搜索引擎蜘蛛并自动记忆到文件的代码
2012/02/04 PHP
php5.3中连接sqlserver2000的两种方法(com与ODBC)
2012/12/29 PHP
php unset全局变量运用问题的深入解析
2013/06/17 PHP
php实现高效获取图片尺寸的方法
2014/12/12 PHP
PHP实现图片自动清理的方法
2015/07/08 PHP
Jquery弹出窗口插件 LeanModal的使用方法
2012/03/10 Javascript
基于jQuery的公告无限循环滚动实现代码
2012/05/11 Javascript
JavaScript与DOM组合动态创建表格实例
2012/12/23 Javascript
JavaScript匿名函数用法分析
2015/02/13 Javascript
TinyMCE提交AjaxForm获取不到数据的解决方法
2015/03/05 Javascript
移动开发之自适应手机屏幕宽度
2016/11/23 Javascript
JavaScript原生节点操作小结
2017/01/17 Javascript
利用vueJs实现图片轮播实例代码
2017/06/03 Javascript
微信小程序云开发之使用云函数
2019/05/17 Javascript
Vue组件之高德地图地址选择功能的实例代码
2019/06/21 Javascript
JavaScript监听触摸事件代码实例
2019/12/30 Javascript
TypeScript魔法堂之枚举的超实用手册
2020/10/29 Javascript
[07:39]第一届亚洲邀请赛回顾视频
2017/02/14 DOTA
python 从远程服务器下载日志文件的程序
2013/02/10 Python
Python使用matplotlib简单绘图示例
2018/02/01 Python
python多线程之事件Event的使用详解
2018/04/27 Python
opencv实现简单人脸识别
2021/02/19 Python
关于探究python中sys.argv时遇到的问题详解
2021/02/23 Python
浅谈css3中的渐进增强和优雅降级
2017/12/01 HTML / CSS
html5中audio支持音频格式的解决方法
2018/08/24 HTML / CSS
DC Shoes荷兰官方网站:美国极限运动品牌
2019/10/22 全球购物
中介公司区域经理岗位职责范本
2014/03/02 职场文书
珍爱生命演讲稿
2014/05/10 职场文书
党的群众教育实践活动实施方案
2014/06/12 职场文书
高中生期中考试失利检讨书
2014/10/23 职场文书
党的群众路线教育实践活动学习计划
2014/11/03 职场文书
担保书范文
2015/01/20 职场文书
功夫熊猫观后感
2015/06/10 职场文书
2016年国培研修日志
2015/11/13 职场文书
2016入党心得体会范文
2016/01/06 职场文书