一、GD库简介

GD库是PHP的一个扩展库,用于生成和编辑图像。它支持多种图像格式,包括GIF、JPEG、PNG等。要使用GD库,首先需要确保PHP安装了GD扩展。

1. 检测GD库支持类型

$gd_info = gd_info();
echo "<pre>";
print_r($gd_info);
echo "</pre>";

2. GD库版本信息

$gd_info['GD Version']将返回GD库的版本信息。

二、图片生成

1. 创建空白图片

$im = imagecreatetruecolor(100, 50);

2. 设置背景颜色

$background_color = imagecolorallocate($im, 255, 255, 255);
imagefill($im, 0, 0, $background_color);

3. 输出图片

header('Content-Type: image/png');
imagepng($im);
imagedestroy($im);

三、图片处理

1. 图片裁剪

$source_image = imagecreatefromjpeg('source.jpg');
$destination_image = imagecreatetruecolor(100, 100);
imagecopyresampled($destination_image, $source_image, 0, 0, 50, 50, 100, 100, 200, 200);
imagepng($destination_image, 'destination.jpg');
imagedestroy($destination_image);

2. 图片压缩

$source_image = imagecreatefromjpeg('source.jpg');
imagejpeg($source_image, 'destination.jpg', 50); // 质量参数为50
imagedestroy($source_image);

3. 图片添加水印

$source_image = imagecreatefromjpeg('source.jpg');
$watermark_image = imagecreatefrompng('watermark.png');
imagealphablending($source_image, true);
imagecopy($source_image, $watermark_image, 10, 10, 0, 0, imagesx($watermark_image), imagesy($watermark_image));
imagepng($source_image, 'source_with_watermark.jpg');
imagedestroy($source_image);

四、图片信息获取

$source_image = imagecreatefromjpeg('source.jpg');
$image_info = getimagesize($source_image);
echo "Width: " . $image_info[0] . "<br>";
echo "Height: " . $image_info[1] . "<br>";
echo "Type: " . $image_info[2] . "<br>";
echo "Size: " . $image_info[3] . "<br>";
imagedestroy($source_image);

五、总结