什么是在PHP中连接两个图像的最快方法?

时间:2011-04-26 17:28:06

标签: php image image-processing gd2

我需要在php(两个或更多)中连接图像,包括垂直和水平。最快的方法是什么?

obs:我不想使用非本地库

另一个疑问。生成的图像是否具有图像大小的总和,还是可以显着更大?

谢谢(:

1 个答案:

答案 0 :(得分:3)

$newWidth = $w1 + $w2;
$newHeight = $h1 + $h2;
$newImage = imagecreatetruecolor($newWidth, $newHeight);

imagecopyresampled($newImage, $image1, 0, 0, 0, 0, $w1, $h1, $w1, $h1);
imagecopyresampled($newImage, $image2, $w1, 0, 0, 0, $w2, $h2, $w2, $h2);

现在我只是在堆栈溢出编辑器中编写它并且它未经测试,但是应该使用所有本机库并且可能是最快的。只需将image1复制并重新采样到前半部分(宽度方向),然后将第二个图像复制到后半部分(宽度方向),如果你想通过堆叠高度来实现,它只会改变dest_h的位置。以下是一些信息...... http://php.net/manual/en/function.imagecopyresampled.php

哦BTW,那是用于保存图像。这就是我假设你做的事情。另外,关于使用标签在彼此旁边堆叠2个图像的答案将是最快的。

至于产生的图像,请记住。如果它们是水平放置的,则宽度为$w1 + $w2,高度为math.max($h1, $h2),如果图像垂直堆叠则相反