在个人项目中,我需要使用 php Imagine 库( http://imagine.readthedocs.ioImageInterface
)从实现(图像)宽度和高度的对象中获取。
我需要解决的具体问题是以调整后的图像保持原始纵横比的方式调整图像的大小,如下面的课程所示:
namespace PcMagas\AppImageBundle\Filters\Resize;
use PcMagas\AppImageBundle\Filters\AbstractFilter;
use Imagine\Image\ImageInterface;
use PcMagas\AppImageBundle\Filters\ParamInterface;
use PcMagas\AppImageBundle\Exceptions\IncorectImageProssesingParamsException;
class ResizeToLimitsKeepintAspectRatio extends AbstractFilter
{
public function apply(ImageInterface $image, ParamInterface $p)
{
/**
* @var ResizeParams $p
*/
if(! $p instanceof ResizeParams){
throw new IncorectImageProssesingParamsException(ResizeParams::class);
}
/**
* @var float $imageAspectRatio
*/
$imageAspectRatio=$this->calculateImageAspectRatio($image);
}
/**
* @param ImageInterface $image
* @return float
*/
private function calculateImageAspectRatio(ImageInterface $image)
{
//Calculate the Image's Aspect Ratio
}
}
但是我怎样才能得到图像的宽度和高度呢?
我发现的所有解决方案都直接使用 gd、imagick 等库,例如:获取图像高度和宽度 PHP,而不是想象一个。