php输出图像的方法实例分析


Posted in PHP onFebruary 16, 2017

本文实例讲述了php输出图像的方法。分享给大家供大家参考,具体如下:

PHP作为一种Web语言,无论是解析出的HTML代码还是二进制的图片,最终都要通过浏览器显示。应用GD2函数绘制图像首先需要用header()函数发送HTTP头信息给浏览器,告知所要输出的图像的类型,然后应用imagegif()函数、imagejpeg()函数或者imagepng()函数等分别输出GIF,JPG和PNG格式的图片。

header(string,replace,http_response_code)


参数 描述
string 必需。规定要发送的报头字符串。
replace 可选。指示该报头是否替换之前的报头,或添加第二个报头。 默认是 true(替换)。false(允许相同类型的多个报头)。
http_response_code 可选。把 HTTP 响应代码强制为指定的值。(PHP 4 以及更高版本可用)

bool imagegif( resource $image[, string $filename] )

imagegif()函数从image图像以filename为文件名创建一个GIF图像。image参数是imagecreate()或imagecreatefromgif()等创建图像函数的返回值,图像格式为GIF。如果应用imagecolortransparent()函数,则图像设置为透明,格式即为gif。filename参数为可选,如果省略,则原始图像流将被直接输出。

imagejpeg()imagepng()函数的使用方法与imagegif()函数的使用方法类似,这里不再讨论。

例如:

首先应用header()函数发送HTTP头信息给浏览器告知输出的媒体类型,在这里输出GIF格式的图片,然后创建一副192*36像素的画布,并在画布上绘制"I Like PHP"的文字,最后应用函数imagegif()输出所创建的图像。

<?php
 header("Content-type:image/gif");
 $image = imagecreatetruecolor(192,36); //新建图像
 $trans_color = imagecolorAllocate($image,200,200,200); //分配一个灰色
 imagefill($image,0,0,$trans_color); // 从左上角开始填充灰色
 $color = imagecolorallocate($image,255,0,255); //设置图像中文字的颜色
 imagettftext($image,18,0,50,26,$color,"arial.ttf","I Like PHP");//输出文字
 imagegif($image);//输出图像
 imagedestroy($image);//释放内存空间

运行结果为:

php输出图像的方法实例分析

代码解析:

imagecreatetruecolor(int x,int y)建立的是一幅大小为x和y的黑色图像(默认为黑色),如想改变背景颜色则需要用填充颜色函数imagefill($img,0,0,$color);

imagecreate 新建一个空白图像资源,用imagecolorallocate()添加背景色

array Imagettftext(int im, int size, int angle, int x, int y, int col, string fontfile, string text);

本函数将 TTF (TrueType Fonts) 字型文字写入图片。参数 size 为字形的尺寸;angle 为字型的角度,顺时针计算,0 度为水平,也就是三点钟的方向 (由左到右),90 度则为由下到上的文字;x,y 二参数为文字的坐标值 (原点为左上角);参数 col 为字的颜色;fontfile 为字型文件名称,亦可是远端的文件;text 当然就是字符串内容了。返回值为数组,包括了八个元素,头二个分别为左下的x、y 坐标,第三、四个为右下角的 x、y 坐标,第五、六及七、八二组分别为右上及左上的 x、y 坐标。

注意此函数中的fontfile的路径问题,上例中,字体文件和PHP文件处于同一个目录中。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP 和 HTML
Oct 09 PHP
PHP 柱状图实现代码
Dec 04 PHP
php带密码功能并下载远程文件保存本地指定目录 修改加强版
May 16 PHP
一个简单的网页密码登陆php代码
Jul 17 PHP
用php随机生成福彩双色球号码的2种方法
Feb 04 PHP
linux使用crontab实现PHP执行计划定时任务
May 10 PHP
PHP+Mysql基于事务处理实现转账功能的方法
Jul 08 PHP
基于ThinkPHP实现批量删除
Dec 18 PHP
PHP计算数组中值的和与乘积的方法(array_sum与array_product函数)
Apr 01 PHP
PHP中STDCLASS用法实例分析
Nov 11 PHP
Yii CFileCache 获取不到值的原因分析
Feb 08 PHP
PHP xpath提取网页数据内容代码解析
Jul 16 PHP
替换php字符串中的单引号为双引号的方法
Feb 16 #PHP
php中照片旋转 (orientation) 问题的正确处理
Feb 16 #PHP
php使用PDO事务配合表格读取大量数据插入操作实现方法
Feb 16 #PHP
php的PDO事务处理机制实例分析
Feb 16 #PHP
php使用include 和require引入文件的区别
Feb 16 #PHP
Yii2实现UploadedFile上传文件示例
Feb 15 #PHP
使用PHPMailer发送邮件实例
Feb 15 #PHP
You might like
PHP设计模式之责任链模式的深入解析
2013/06/13 PHP
php代码调试利器firephp安装与使用方法分析
2018/08/21 PHP
PHP hex2bin()函数用法讲解
2019/02/25 PHP
用javascript实现画板的代码
2007/09/05 Javascript
Js切换功能的简单方法
2010/11/23 Javascript
javascript页面动态显示时间变化示例代码
2013/12/18 Javascript
JavaScript限定图片显示大小的方法
2015/03/11 Javascript
JavaScript的Polymer框架中dom-repeat与VM的相关操作
2015/07/29 Javascript
js简单实现Select互换数据的方法
2015/08/17 Javascript
BootStrap使用popover插件实现鼠标经过显示并保持显示框
2016/06/23 Javascript
浅谈jQuery添加的HTML,JS失效的问题
2016/10/05 Javascript
基于JavaScript实现轮播图原理及示例
2020/04/10 Javascript
vue+iview+less+echarts实战项目总结
2018/02/22 Javascript
bootstrap里bootstrap动态加载下拉框的实例讲解
2018/08/10 Javascript
vue项目中,main.js,App.vue,index.html的调用方法
2018/09/20 Javascript
通过cordova将vue项目打包为webapp的方法
2019/02/02 Javascript
express框架中使用jwt实现验证的方法
2019/08/25 Javascript
24行JavaScript代码实现Redux的方法实例
2019/11/17 Javascript
JS中类的静态方法,静态变量,实例方法,实例变量区别与用法实例分析
2020/03/14 Javascript
Python实现的单向循环链表功能示例
2017/11/10 Python
利用信号如何监控Django模型对象字段值的变化详解
2017/11/27 Python
Python 网络爬虫--关于简单的模拟登录实例讲解
2018/06/01 Python
Python使用os.listdir()和os.walk()获取文件路径与文件下所有目录的方法
2019/04/01 Python
利用python在excel中画图的实现方法
2020/03/17 Python
最新Python idle下载、安装与使用教程图文详解
2020/11/28 Python
HTML5 canvas实现移动端上传头像拖拽裁剪效果
2016/03/14 HTML / CSS
贝玲妃美国官方网站:Benefit美国
2016/08/28 全球购物
StubHub墨西哥:购买和出售您的门票
2016/09/17 全球购物
HSRP的含义以及如何工作
2014/09/10 面试题
什么是属性访问器
2015/10/26 面试题
过程装备与控制工程专业个人的求职信
2013/12/01 职场文书
入党积极分子思想汇报
2014/01/02 职场文书
幼儿园毕业园长感言
2014/02/24 职场文书
教育专业毕业生推荐信
2014/07/10 职场文书
公司年夜饭通知
2015/04/25 职场文书
教师节祝酒词
2015/08/11 职场文书