引言
一、PHP图像处理库
二、图片加载
<?php
// 加载图片
$image = imagecreatefromjpeg('path/to/your/image.jpg');
?>
三、图片缩放
<?php
// 设置缩放后的图片尺寸
$width = 500;
$height = 300;
// 计算缩放比例
$ratio = min($width / imagesx($image), $height / imagesy($image));
// 创建新图像
$new_image = imagecreatetruecolor($width, $height);
// 复制并缩放图像
imagecopyresampled($new_image, $image, 0, 0, 0, 0, $width, $height, imagesx($image), imagesy($image));
// 输出缩放后的图片
imagejpeg($new_image, 'path/to/your/zoomed_image.jpg');
?>
四、图片裁剪
<?php
// 设置裁剪区域
$x = 100;
$y = 100;
$width = 200;
$height = 200;
// 创建新图像
$new_image = imagecreatetruecolor($width, $height);
// 复制并裁剪图像
imagecopy($new_image, $image, 0, 0, $x, $y, $width, $height);
// 输出裁剪后的图片
imagejpeg($new_image, 'path/to/your/cropped_image.jpg');
?>
在上面的代码中,我们设置了裁剪区域,并使用imagecopy函数将原图像中的指定区域复制到新图像中。
五、添加水印
<?php
// 加载水印图片
$watermark = imagecreatefrompng('path/to/your/watermark.png');
// 设置水印位置
$x = imagesx($image) - imagesx($watermark);
$y = imagesy($image) - imagesy($watermark);
// 复制并添加水印
imagecopy($image, $watermark, $x, $y, 0, 0, imagesx($watermark), imagesy($watermark));
// 输出添加水印后的图片
imagejpeg($image, 'path/to/your/image_with_watermark.jpg');
?>
六、调整亮度、对比度和饱和度
”`php <?php // 获取图像的宽度和高度 \(width = imagesx(\)image); \(height = imagesy(\)image);
// 遍历图像的每个像素 for (\(y = 0; \)y < \(height; \)y++) {
for ($x = 0; $x < $width; $x++) {
// 获取当前像素的RGB值
$col = imagecolorat($image, $x, $y);
$r = ($col >> 16) & 0xFF;
$g = ($col >> 8) & 0xFF;
$b = $col & 0xFF;
// 调整亮度、对比度和饱和度
$r = ($r +