如何在PHP中调整图像资源的大小?

如何在PHP中调整图像资源的大小?,php,Php,我有一个脚本,可以创建一个图像,其高度取决于递归树的深度。预先计算图像的高度会很痛苦,因为我需要运行递归函数两次。因此,我想知道是否可以从我唯一的递归函数中调整图像的大小。长话短说,我需要调整图像资源的大小,是否可能?例如,如何使以下代码正常工作?谢谢 //Create the image $image = imagecreatetruecolor(800, 100); //Change the image height from 100 to 1000 pixels imagecopyres

我有一个脚本,可以创建一个图像,其高度取决于递归树的深度。预先计算图像的高度会很痛苦,因为我需要运行递归函数两次。因此,我想知道是否可以从我唯一的递归函数中调整图像的大小。长话短说,我需要调整图像资源的大小,是否可能?例如,如何使以下代码正常工作?谢谢

//Create the image
$image = imagecreatetruecolor(800, 100);

//Change the image height from 100 to 1000 pixels
imagecopyresized($image, $image, 0, 0, 0, 0, 800, 1000, 800, 100);

//Set the header
header('Content-Type: image/png');

//Output the image
imagepng($image);

//Destroy the image
imagedestroy($image);

你的代码几乎是完美的,除了你没有给它的源图像工作。您需要
$source=imagecreatefrompng(“someimage.png”)
,然后在
imagecopyresize
中将源图像参数设置为
$source

是否有无法运行递归函数的原因,将该数据存储在另一个数据类型中,然后根据该数据类型计算图像大小?可以这样做,但我认为必须运行递归函数两次,首先获取并存储数据(比如数组),然后计算图像大小。但也许不是,我正在考虑,谢谢!我不确定我是否理解,imagecreatetruecolor()是否返回imagecreatefrompng()将返回的相同类型的数据?
imagecreatetruecolor
将创建您的“目标”图像,
imagecreatefrompng
将获取您的“源”图像。ic。。好吧,我用另一种方式解决了我的问题,但我会把你的答案标记为正确的,因为它看起来是正确的。谢谢