PHP图形图像处理之初识GD库

编程之家收集整理的这篇文章主要介绍了PHP图形图像处理之初识GD库编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

d=====( ̄▽ ̄*)b

 

引语

 

PHP不仅仅局限于html的输出,还可以创建和操作各种各样的图像文件,如GIF、PNG、JPEG、WBMP、XBM等。

PHP还可以将图像流直接显示在浏览器中。

要处理图像,就要用到PHP的GD库。

ps:确保PHP.ini文件中可以加载GD库。可以在PHP.ini文件中找到“;extension=PHP_gd2.dll”,将选项前的分号删除,保存,再重启Apache服务器即可。

 

步骤

 

PHP中创建一个图像一般需要四个步骤:

1.创建一个背景图像,以后的所有操作都是基于此背景。

2.在图像上绘图等操作。

3.输出最终图像。

4.销毁内存中的图像资源。

 

1.创建背景图像

 

下面的函数可以返回一个图像标识符,代表了一个宽为x_size像素、高为y_size像素的背景,默认为黑色。

 1 resource imagecreatetruecolor(int x_size,int y_size) 

在图像上绘图需要两个步骤:首先需要选择颜色。通过imagecolorallocate()函数创建颜色对象。

 1 int imagecolorallocate(resource image,int red,int green,int blue) 

然后将颜色绘制到图像上。

 1 bool imagefill(函数会在image图像的坐标(x,y)处用color颜色进行填充。

 

2.在图像上绘图

 

 1 bool iamgeline(函数用color颜色在图像image中画出一条从(begin_x,begin_y)到(end_x,end_y)的线段。

 1 bool imagestring(string s,int color ) 

imagestring()函数用color颜色将字符串s画到图像image的(begin_x,begin_y)处(这是字符串的左上角坐标)。如果font等于1,2,3,4或5,则使用内置字体,同时数字代表字体的粗细。

如果font字体不是内置的,则需要导入字体库后使用。

 

3.输出最终图像

 

创建图像以后就可以输出图形或者保存到文件中了,如果需要输出到浏览器中需要使用header()函数发送一个图形的报头“欺骗”浏览器,使它认为运行的PHP页面是一个图像。

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

发送数据报头以后,利用imagepng()函数输出图形。后面的filename可选,代表生成的图像文件的保存名称

 1 bool image(resource image [,1)">string filename]) 

 

4.销毁相关的内存资源

 

最后需要销毁图像占用的内存资源。

 1 bool imagedestroy(resource image) 

 

例子:

 1 <?PHP
 2 $width=300;                                              //图像宽度
 3 $height=200;                                             图像高度
 4 $img=imagecreatetruecolor($width,$height);               创建图像
 5 $white=imagecolorallocate($img,255);             白色
 6 $black=imagecolorallocate(黑色
 7 $red=imagecolorallocate(红色
 8 $green=imagecolorallocate(绿色
 9 $blue=imagecolorallocate(蓝色
10 imagefill($white);                              将背景设置为白色
11 imageline($red);                      画出一条红色的线
12 imagestring($blue);       显示蓝色的文字
13 header("content-type: image/png");                    输出图像的MIME类型
14 imagepng($img);                                          输出一个PNG图像数据
15 imagedestroy($img);                                      清空内存

  效果

总结

以上是编程之家为你收集整理的PHP图形图像处理之初识GD库全部内容,希望文章能够帮你解决PHP图形图像处理之初识GD库所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢寻找一群志同道合、互帮互助的学习伙伴,可以点击下方链接加入:
编程之家官方1群
编程之家官方2群
编程之家官方3群
编程之家官方4群

相关文章

猜你在找的PHP相关文章

(o゜▽゜)o☆[BINGO!] ok,我们先看看cookie是什么东东? cookie是服务器留在客户端的用于识别用户或者存储一些数据的小文件(注意,session存储在服务器端,这是两者的区别之一
这是一个表单的时代。。。 我们在浏览器中编辑自己的信息,会遇到上传头像;在文库中,我们会上传文档......到处存在“上传”这个词。 php是最好的语言(其他语言的程序猿们不要打我...)。php在处
d ( ̄▽ ̄*)b 引语 php不仅仅局限于html的输出,还可以创建和操作各种各样的图像文件,如GIF、PNG、JPEG、WBMP、XBM等。 php还可以将图像流直接显示在浏览器中。 要处理图像,
(∩_∩) 1.概述 学了php的一些基础,包括HTML,php,pdo,mysql操作等,一直都没有将它们有机结合。最近写了一个简单的网页版学生信息管理系统,前台用HTML,脚本用到了JavaScr
(^o^)/~ 现在网上越来越离不开验证码了,不知道小伙伴们知不知利用php的GD库就可以生成验证码,Σ(⊙▽⊙&quot;a ...... 首先介绍几个需要用的函数。 1.imagesetpixe
方法1: 用file_get_contents 以get方式获取内容 方法2: 用fopen打开url, 以get方式获取内容 1 stream_get_meta_data($fp); 方法3:用fi
支付完成后,微信会把相关支付结果和用户信息发送给商户,商户需要接收处理,并返回应答。 对后台通知交互时,如果微信收到商户的应答不是成功或超时,微信认为通知失败,微信会通过一定的策略定期重新发起通知,尽
YII2进行MYSQL数据库操作时出现Database Exception – yiidbException SQLSTATE[HY000] [2002] No such file or dire
微信公众号搜索 “ 程序精选 ” ,选择关注!
微信公众号搜 "程序精选"关注