图片处理与图像操作:PHP的GD库函数使用示例
发布时间:2023-09-10 03:30:18
PHP的GD库是一个用来创建、操作和处理图像的功能强大的库。它提供了一组函数,可以通过这些函数来生成新的图像,对现有的图像进行修改,以及对图像进行各种操作,如裁剪、缩放、旋转、调整颜色等。
下面是一些PHP GD库函数的使用示例:
1. 创建新的图像并保存
// 创建一个大小为200x200像素的空白图像 $image = imagecreatetruecolor(200, 200); // 分配颜色 $bgcolor = imagecolorallocate($image, 255, 255, 255); // 填充背景颜色 imagefill($image, 0, 0, $bgcolor); // 保存图像为jpg格式 imagejpeg($image, 'new_image.jpg'); // 销毁图像资源 imagedestroy($image);
2. 对图像进行缩放
// 加载图像
$image = imagecreatefromjpeg('image.jpg');
// 获取原图像的宽度和高度
$src_width = imagesx($image);
$src_height = imagesy($image);
// 缩放后的宽度和高度
$dst_width = $src_width * 0.5;
$dst_height = $src_height * 0.5;
// 创建一个新的缩放后的图像
$dst_image = imagecreatetruecolor($dst_width, $dst_height);
// 执行缩放操作
imagecopyresampled($dst_image, $image, 0, 0, 0, 0, $dst_width, $dst_height, $src_width, $src_height);
// 保存缩放后的图像
imagejpeg($dst_image, 'resized_image.jpg');
// 销毁图像资源
imagedestroy($dst_image);
imagedestroy($image);
3. 对图像进行裁剪
// 加载图像
$image = imagecreatefromjpeg('image.jpg');
// 原图像的宽度和高度
$src_width = imagesx($image);
$src_height = imagesy($image);
// 裁剪后的宽度和高度
$dst_width = $src_width / 2;
$dst_height = $src_height / 2;
// 创建一个新的裁剪后的图像
$dst_image = imagecreatetruecolor($dst_width, $dst_height);
// 执行裁剪操作
imagecopy($dst_image, $image, 0, 0, 0, 0, $dst_width, $dst_height);
// 保存裁剪后的图像
imagejpeg($dst_image, 'cropped_image.jpg');
// 销毁图像资源
imagedestroy($dst_image);
imagedestroy($image);
4. 对图像进行旋转
// 加载图像
$image = imagecreatefromjpeg('image.jpg');
// 旋转角度
$angle = 45;
// 执行旋转操作
$rotated_image = imagerotate($image, $angle, 0);
// 保存旋转后的图像
imagejpeg($rotated_image, 'rotated_image.jpg');
// 销毁图像资源
imagedestroy($rotated_image);
imagedestroy($image);
以上只是一些PHP GD库函数的基本使用示例,GD库还提供了很多其他的图像处理函数,如调整亮度、对比度,添加水印等。开发者可以根据自己的需求,学习和使用这些函数来对图像进行更加复杂和高级的操作。
