修剪图像以便在PHP中临时使用

时间:2009-06-30 13:21:40

标签: php image

我希望能够修剪图像,其中许多图像垂直很长......从2000到4000px,总是800.所以只能获得图像的顶部。然后,我想用PHP输出这个页面/报告,而不会产生合成的修剪图像。

$ imagepng->修剪最佳方法吗?

2 个答案:

答案 0 :(得分:1)

你会做这样的事情:

$srcName = 'source.png';

$info = getimageinfo($srcName);
$src = imagecreatefrompng($srcName);

// Create a new image up to 800px tall
$dest = imagecreate($info[0], min($info[1], 800));
imagecopy($dest, $src, 0, 0, 0, 0, $info[0], min($info[1], 800));

// Output
header('Content-type: image/png');
imagepng($dest);

答案 1 :(得分:0)

GD是imagepng使用的,它是在PHP中进行图像处理的最广泛支持的方式,所以这是一个非常安全的选择,特别是如果您希望在无法控制的服务器上部署代码。

另一种方法是看看ImageMagick,虽然我发现在大多数情况下GD速度要快一些。