您需要查看GD Image Processing Library的文档,尤其是imagecreatefromjpeg()函数。
一个实现这个技巧的示例函数如下所示:
function resize_jpeg( $original_image, $new_height, $new_width, $filename )
{
// Resize the original image
$image_resized = imagecreatetruecolor($new_width, $new_height);
$image_tmp = imagecreatefromjpeg ($original_image);
imagecopyresampled($image_resized, $image_tmp, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
// Output
imagejpeg($image_resized, $filename.".jpg", 100);
imagedestroy($image_resized);
}
该函数基本上创建一个具有新高度的图像参考,加载旧高度,然后重新采样。而不是jpeg你可以使用pngand giftoo。请小心,因为GD无法正确重新采样动画 GIF 文件。
original_image是要加载的图像的文件路径。new_width和new_height分别是目标宽度和高度的整数。filename是目标文件名,.jpg在本例中没有扩展名。