将图像重新调整为新的高度和宽度,但不要超过原始高度和宽度
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将图像重新调整为新的高度和宽度,但不要超过原始高度和宽度相关的知识,希望对你有一定的参考价值。
在php中需要将图像调整为新的高度和宽度但不要跨越原始图像。示例我需要将图像大小调整为200 * 200.但实际上,图像大小为150 * 150然后调整大小不会发生。
- 如果图像尺寸为300 * 300则需要调整为200 * 200。
- 如果图像尺寸为300 * 150,则调整为200 * 150。
任何人都可以帮助解决这个问题。如果有任何插件可用
答案
这里有一些伪代码可以说明逻辑的可能路径:
function resizeMyImage($incImage){
$imageRatio;
$maxSize = 200;
$originalX;
$originalY;
$newX;
$newY;
$newX = $originalX = imageSize.x;
$newY = $originalY = imageSize.y;
$imageRatio = imageSize.x / imageSize.y;
if($imageRatio >= 1){
// height is greater than (or equal to) width
if($newX > $maxSize){
return false;
}else{
$newX = $maxSize;
$newY = $newX / $imageRatio;
}
}else{
// width is greater than height
if($newY > $maxSize){
return false;
}else{
$newY = $maxSize;
$newX = $newY * $imageRatio;
}
}
resizeTheImage($newX,$newY);
}
这是伪代码并且不起作用,但它是在保持纵横比的同时调整具有最大宽度或高度的图像的快速示例。
我会查看你的代码并编写一个可行的例子,但你没有提供任何代码。我希望这有帮助。
以上是关于将图像重新调整为新的高度和宽度,但不要超过原始高度和宽度的主要内容,如果未能解决你的问题,请参考以下文章