PHP之图像处理,php图像处理
Jun 13, 2016 am 08:38 AMPHP之图像处理,php图像处理
PHP中提供了一些对图像进行编辑处理的函数,其中最为典型的应用为随机图形验证码、图片水印以及数据统计中饼状图和柱状图的生成等
PHP中有的图形函数可以直接使用,但多数需要在安装了GD2函数库后才能使用。在Windows平台下安装GD2库很简单,就是PHP5自带的ext目录中的php_gd2_dll文件。
如果没有,说明安装PHP时没有安装GD2库,打开php.ini文件,查看php.ini文件(c:\winsows),查看文件中是否有一句";extension = php_gd2.dll"(Paths and Directories 里),如果有,将其中的“;”去掉,再将文件中扩展目录extension_dir的值设置成PHP的ext目录所在的完整路径,如"extension_dir = E:\php5\ext",保存后重启Apache即可
绘制一个图形一般包括4个步骤:1)创建一个背景,2)在背景中绘制图形或输入文本,3)输出图形,4)释放所有资源
在此之前注意先将php.ini文件里 Language Options下的output_buffering默认的off改为on,然后重启Apache(Apache Restart),否则会出现如下的Warning:
Cannot modify header information - headers already sent by.....
例:绘制PNG图形,如绘制一条直线
<span>$image</span> = imagecreate(400,400);<span>//</span><span>创建一个图像,两个参数表示图像的宽度和高度,单位为像素,并返回此图像的数据流</span> <span>$background_color</span> = imagecolorallocate(<span>$image</span>,255,255,255);<span>//</span><span>为图像设置了白色的背景流,</span> <span>$black</span> = imagecolorallocate(<span>$image</span>,0,0,0);<span>//</span><span>为图像设置了黑色的背景流</span> imageline(<span>$image</span>,0,0,100,100,<span>$black</span>);<span>//</span><span>绘制一条直线,并设置其颜色为黑色</span> <span>ob_clean</span>();<span>//</span><span>清除输出,否则图像无法显示</span> <span>header</span>("Content-type:image/png");<span>//</span><span>向浏览器发送头信息,输出png图片</span> imagepng(<span>$image</span>);<span>//</span><span>输出图形</span> imagedestroy(<span>$image</span>);<span>//</span><span>清除资源</span>
图像处理函数可以直接创建一个图像流来绘制图形,还可以将现有的图片作为图像流读入,然后在次基础上对图像进行修饰,如加上水印效果等。这种功能常用来防止图片被盗用
例:在原始图片(jpeg格式)上添加一个水印网址
<span>ob_clean</span><span>(); </span><span>header</span>("Content-type:image/jpeg"<span>); </span><span>$im</span> = imagecreatefromjpeg("dog.jpg"<span>); </span><span>$red</span> = imagecolorallocate(<span>$im</span>,255,0,0<span>); imagestring(</span><span>$im</span>,5,6,10,"http://www.cnblogs.com/520xiuge/",<span>$red</span><span>); imagejpeg(</span><span>$im</span><span>); imagedestroy(</span><span>$im</span>);

인기 기사

인기 기사

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법
