在PHP中,你可以使用GD库或Imagick扩展来转换图片格式。以下是一些常见的图片转换操作示例:
GD库是PHP内置的图像处理库,支持常见的图片格式如JPEG、PNG、GIF等。
<?php
// 源图片路径
$sourceImage = 'source.png';
// 目标图片路径
$targetImage = 'target.jpg';
// 获取源图片的尺寸和类型
list($width, $height, $type) = getimagesize($sourceImage);
// 根据图片类型创建图像资源
switch ($type) {
case IMAGETYPE_PNG:
$image = imagecreatefrompng($sourceImage);
break;
case IMAGETYPE_JPEG:
$image = imagecreatefromjpeg($sourceImage);
break;
case IMAGETYPE_GIF:
$image = imagecreatefromgif($sourceImage);
break;
default:
die('Unsupported image type');
}
// 将图像保存为JPEG格式
imagejpeg($image, $targetImage, 100); // 100表示最高质量
// 释放内存
imagedestroy($image);
echo "Image converted successfully!";
?>
Imagick是一个功能更强大的图像处理库,支持更多的图片格式和操作。
<?php
// 源图片路径
$sourceImage = 'source.jpg';
// 目标图片路径
$targetImage = 'target.png';
// 创建Imagick对象
$imagick = new Imagick($sourceImage);
// 将图片转换为PNG格式
$imagick->setImageFormat('png');
// 保存图片
$imagick->writeImage($targetImage);
// 释放内存
$imagick->destroy();
echo "Image converted successfully!";
?>
imagecopyresampled()
函数(GD库)或Imagick::resizeImage()
方法(Imagick)来调整图片大小。imagestring()
函数(GD库)或Imagick::annotateImage()
方法(Imagick)来添加水印。memory_limit
)。通过这些方法,你可以轻松地在PHP中实现图片格式的转换。