PHP GD:如何在不写入文件的情况下获取内存中图像资源的维度?

Rya*_*ggs 2 php image php-gd

我只是将图像加载到内存中

$img = imagecreatefromjpeg($filename);
Run Code Online (Sandbox Code Playgroud)

然后,我对图像应用了一个旋转:

$r_img = imagerotate($img, $angle, 0);
Run Code Online (Sandbox Code Playgroud)

根据文档,imagerotate()可能会更改图像的尺寸.一个例子是将矩形图像旋转180度以外的任何值.画布将展开以适应整个图像,填充颜色为"0"或黑色的空白区域.

如何在不将图像写入文件的情况下获得旋转后的新尺寸?(getimagesize()需要一个文件名,似乎不支持资源引用)

Ana*_*Die 5

你可以使用imagesx()imagesy()

imagesx - 返回给定图像资源的宽度.

imagesy - 返回给定图像资源的高度.

$width  = imagesx($r_img);
$height = imagesy($r_img);
echo $width;
echo $height;
Run Code Online (Sandbox Code Playgroud)