2
最大裁剪区域是否有任何PHP/GD函数,可以计算这样的:对于给定的图像和纵横比
输入:图像宽度,图像的高度和纵横比兑现。输出: 最大居中作物方面给定的纵横比 (尽管图像的原始纵横比)。
例如:图像是1000x500,a.r.是1.25:最大作物是625x500。图像是100x110,最大裁剪是:80x110。
最大裁剪区域是否有任何PHP/GD函数,可以计算这样的:对于给定的图像和纵横比
输入:图像宽度,图像的高度和纵横比兑现。输出: 最大居中作物方面给定的纵横比 (尽管图像的原始纵横比)。
例如:图像是1000x500,a.r.是1.25:最大作物是625x500。图像是100x110,最大裁剪是:80x110。
没有函数,计算这一点,因为这是基本的数学:
$imageWidth = 1000;
$imageHeight = 500;
$ar = 1.25;
if ($ar < 1) { // "tall" crop
$cropWidth = min($imageHeight * $ar, $imageWidth);
$cropHeight = $cropWidth/$ar;
}
else { // "wide" or square crop
$cropHeight = min($imageWidth/$ar, $imageHeight);
$cropWidth = $cropHeight * $ar;
}
谢谢。我花了几分钟的时间来到你的代码之类的东西(但你的解决方案更加优雅)。是的,初级但有用。 – Polmonino 2011-12-17 00:00:24