PHP中如何输出图片

本篇内容主要讲解“PHP中如何输出图片”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PHP中如何输出图片”吧!

成都创新互联公司服务项目包括天镇网站建设、天镇网站制作、天镇网页制作以及天镇网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,天镇网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到天镇省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

PHP中如何输出图片

图像处理是PHP工作中常遇到的事情,我们遇到需要处理图像的场景有很多,例如图像验证码、图片水印等等场景。其实学习图像处理的重点实际是学习PHP中GD系统的函数,PHP的图像处理需要GD库的支持,那接下来我们首先来看一下关于GD库的相关知识吧。

GD库

GD库可以理解为一个用于创建图形图像的函数库,GD库实际是由C语言编写的,可以用于PHP中,除了PHP外还可以在Perl等多种语言中使用,GD 库中提供了很多用来处理图片的接口,

PHP 中使用 GD 库可以在页面中绘制各种图形图像,统计图,还有图像验证码也可以使用GD库来实现。

示例如下:

当输入之后,在输出结果中,如果出现如下所示的两个选项,则表示当前的机器支持通过GD来处理图像:

PHP中如何输出图片

或者可以使用:

输入之后运行,若输出结果如下图所示,也表示当前机器支持通过GD来处理图像。

PHP中如何输出图片

那如果没有安装好的话,也可以通过在 Windows 系统下只需将 php.ini 配置文件中“extension=php_gd2.dll”一项前面的注释删除的方法完成。

在 PHP 中,通过 GD 库处理图像的操作一般分为 4 个基本步骤:

  • 创建画布

  • 绘制图像

  • 输出图像

  • 释放资源

通过这四步我们就完成了对图像的基本操作了,你接下来我们一起来看一下应该怎么操作吧。

创建画布

我们所有的绘图和图像处理都需要在一个背景图片上面完成,也就是画布,可以理解为为图像我们在内存中有一片临时的区域作为画布,用来储存图像的信息,以后的图像操作都会在这片区域也就是画布上进行。

imagecreate() imagecreatetruecolor() 用来创建画布,它们的语法格式如下:

imagecreate(int $width, int $height)
imagecreatetruecolor(int $width, int $height)

其中,$width 表示创建画布的宽度也可以理解为图像的宽度,$height 表示创建画布的高度也就是图像的高度

这两个函数都可以用来创建画布,不过其中不同的是,他们可以容纳的色彩范围不同。

示例如下:

由于只是创建了一个画布上面并没有东西,浏览器也不会输出画布,但是可以通过 imagesx() 和 imagesy() 来获取图像的宽和高:

画布的高度为:'.imagesy($img).'像素';
?>

输出结果:

PHP中如何输出图片

由此我们便完成了创建一个画布。

除了使用上面两个函数创建画布之外,还可以通过以下方式,通过文件或者url创建图像:

  • imagecreatefromgif()  :  通过 GIF 文件或者 URL 新建一个图像

  • imagecreatefromjpeg()  :   通过 JPEG 文件或者 UR 新建一个图像

  • imagecreatefrompng()  :   通过 PNG 文件或者 UR L新建一个图像

  • imagecreatefromwbmp()  : 通过 WBMP 文件或者URL,新建一个图像

输出图片

上述示例中,我们已经成功的创建了画布,在PHP中不同格式的图像也需要不同的函数来进行输出,不同的函数如下所示:

  • imagegif() :  输出一个GIF格式图像到浏览器或文件

  • imagejpeg()  :  输出一个JPEG格式图像到浏览器或文件

  • imagepng() :输出一个PNG格式图像到浏览器或文件

它们的语法格式如下:

imagegif(resource $image[, string $filename])
imagejpeg(resource $image[, string $filename[, int $quality]])
imagepng(resource $image[, string $filename])

其中,$image为创建的一个图像资源;$filename表示为参数,用来设置文件需要保存的路径。

示例如下:

首先我在根目录中已经保存了一个名为php.png的图像文件

输出结果:

PHP中如何输出图片

通过imagecreatefrompng()函数和imagepng()成功的输出了一个格式为png的图片。

释放图像资源

通过上述示例已经成功的输出了图片,在图片的资源使用完成后,通常需要释放图像处理时所占用的内存,那应该怎样操作呢?

在PHP中我们通过imagedestroy() 函数来释放图像资源,语法格式如下:

imagedestroy(resource $image)

其中$image表示需要释放资源的图像

示例如下:

因为释放图像资源的操作是没有输出内容的,所以就不列出输出结果了。

到此,相信大家对“PHP中如何输出图片”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


网站栏目:PHP中如何输出图片
文章链接:http://csdahua.cn/article/jpohgp.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流