Home > Article > Backend Development > PHP image processing, php image processing_PHP tutorial
PHP provides some functions for editing and processing images. The most typical applications are random graphic verification codes, image watermarks and Generation of pie charts and bar charts in data statistics
Some graphics functions in PHP can be used directly, but most of them need to be installed after the GD2 function library is installed. Installing the GD2 library on the Windows platform is very simple, it is the php_gd2_dll file in the ext directory that comes with PHP5.
If not, it means that the GD2 library was not installed when installing PHP. Open the php.ini file and check the php.ini file (c:winsows) to see if there is a sentence ";extension = php_gd2.dll" (Paths and Directories) in the file. ), if there is, remove the ";" in it, and then set the value of the extension directory extension_dir in the file to the full path of PHP's ext directory, such as "extension_dir = E:php5ext", save and restart Apache
Drawing a graphic generally includes 4 steps: 1) Create a background, 2) Draw graphics or enter text in the background, 3) Output graphics, 4) Release all resources
Before this, please change the default output_buffering under Language Options in the php.ini file from off to on, and then restart Apache (Apache Restart), otherwise the following Warning will appear:
Cannot modify header information - headers already sent by.....
Example: Draw PNG graphics, such as drawing a straight line
<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>
The image processing function can directly create an image stream to draw graphics, and can also read an existing image as an image stream, and then modify the image on a secondary basis, such as adding a watermark effect, etc. This function is often used to prevent pictures from being stolen
Example: Add a watermark URL to the original image (jpeg format)
<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>);