PHP图片处理基础

  • 图像处理函数库:PHP内置了GD库,用于处理图像,包括读取、修改和输出图像。
  • 图像资源:在处理图像时,PHP会创建一个图像资源,用于存储图像数据。
  • 图像格式:PHP支持的图像格式包括JPEG、PNG、GIF等。

图片缩放比例计算

function calculateScale($originalWidth, $originalHeight, $targetWidth, $targetHeight) {
    $ratioX = $targetWidth / $originalWidth;
    $ratioY = $targetHeight / $originalHeight;
    $scale = min($ratioX, $ratioY);
    return $scale;
}

图片缩放实例

<?php
// 源图像路径
$sourceImage = 'source.jpg';
// 目标图像路径
$targetImage = 'target.jpg';
// 目标宽度和高度
$targetWidth = 500;
$targetHeight = 300;

// 创建图像资源
$sourceImageResource = imagecreatefromjpeg($sourceImage);

// 计算缩放比例
$scale = calculateScale(imagesx($sourceImageResource), imagesy($sourceImageResource), $targetWidth, $targetHeight);

// 创建目标图像资源
$targetImageResource = imagecreatetruecolor($targetWidth, $targetHeight);

// 缩放图像
imagecopyresampled($targetImageResource, $sourceImageResource, 0, 0, 0, 0, $targetWidth, $targetHeight, imagesx($sourceImageResource), imagesy($sourceImageResource));

// 输出目标图像
imagejpeg($targetImageResource, $targetImage);

// 释放图像资源
imagedestroy($sourceImageResource);
imagedestroy($targetImageResource);
?>

在这个例子中,我们首先读取源图像,然后计算缩放比例,接着创建目标图像资源,并使用imagecopyresampled函数进行缩放。最后,输出目标图像并释放图像资源。

总结