当先锋百科网

首页 1 2 3 4 5 6 7

PHP GD支持是PHP编程中非常重要的一个部分,图像处理是Web开发中常用的一种技术,PHP内置的GD扩展可以帮助我们轻松生成、处理和显示图片。本文将着重介绍PHP GD扩展的主要功能和使用方法。

1. 图片生成

//新建一个宽度为200,高度为100的画布
$img = imagecreatetruecolor(200, 100);
//给画布设置背景颜色
$bgcolor = imagecolorallocate($img, 255, 255, 255);
imagefill($img, 0, 0, $bgcolor);
//在画布上面写入文字
$text = 'Hello World';
$font = 'fonts/arial.ttf';//字体文件路径
$fontsize = 20;
$fontcolor = imagecolorallocate($img, 0, 0, 0);
imagettftext($img, $fontsize, 0, 50, 50, $fontcolor, $font, $text);
//输出图片
header('Content-Type:image/png');
imagepng($img);
imagedestroy($img);

2. 图片处理

2.1 重新调整大小

$img = imagecreatefromjpeg('images/test.jpg');
$new_img = imagecreatetruecolor(200, 200);
imagecopyresampled($new_img, $img, 0, 0, 0, 0, 200, 200, 
imagesx($img), imagesy($img));
header('Content-Type:image/jpeg');
imagejpeg($new_img);
imagedestroy($img);
imagedestroy($new_img);

2.2 添加水印

$img = imagecreatefromjpeg('images/test.jpg');
$watermark = imagecreatefrompng('images/watermark.png');//水印图片
imagecopy($img, $watermark, imagesx($img)-imagesx($watermark), imagesy($img)-imagesy($watermark), 0, 0, imagesx($watermark), imagesy($watermark));
header('Content-Type:image/jpeg');
imagejpeg($img);
imagedestroy($img);
imagedestroy($watermark);

3. 图片输出

$img = imagecreatefromjpeg('images/test.jpg');
header('Content-Type:image/png');
imagepng($img);
imagedestroy($img);

4. 其它常用功能

4.1 获取图片尺寸

$img = imagecreatefromjpeg('images/test.jpg');
echo 'width:'.imagesx($img).'
'; echo 'height:'.imagesy($img).'
'; imagedestroy($img);

4.2 获取像素颜色值

$img = imagecreatefromjpeg('images/test.jpg');
$rgb = imagecolorat($img, 100, 100);
$colors = imagecolorsforindex($img, $rgb);
echo 'red:'.$colors['red'].'
'; echo 'green:'.$colors['green'].'
'; echo 'blue:'.$colors['blue'].'
'; imagedestroy($img);

总结:

在Web开发中,图像处理是不可缺少的一种技术。PHP GD扩展提供了一系列强大的图像处理能力,可以帮助我们轻松生成、处理和显示图片。通过本文的介绍,相信读者们可以轻松应对一些常见的图像处理需求。