Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 确定图像纵横比是否合适_Javascript_Php_Aspect Ratio - Fatal编程技术网

Javascript 确定图像纵横比是否合适

Javascript 确定图像纵横比是否合适,javascript,php,aspect-ratio,Javascript,Php,Aspect Ratio,阿罗哈 如何根据这些信息,通过编程确定/计算Javascript中的图像纵横比是否合适(比例) 例如: 以下是可以的: Width = 570px Height = 520px Ratio = 10 Aspect = 57:52 这不好: Width = 815px Height = 85px Ratio = 5 Aspect = 163:17 如果该“比率”值为最大允许值,则: if (Ratio < (Width / Height)) { ... bad ratio ...

阿罗哈

如何根据这些信息,通过编程确定/计算Javascript中的图像纵横比是否合适(比例)

例如: 以下是可以的:

Width = 570px
Height = 520px
Ratio = 10
Aspect = 57:52
这不好:

Width = 815px
Height = 85px
Ratio = 5
Aspect = 163:17

如果该“比率”值为最大允许值,则:

if (Ratio < (Width / Height)) {
    ... bad ratio ...
}
if(比率<(宽度/高度)){
…坏比率。。。
}

为什么不将高度除以宽度,然后将结果传递给接受大于X小于Y的数字的if语句?如果除法计算的结果不符合要求,则比例将被禁用

var nh=0;
var nw=0;
if (Width>Height) 
{
    nw=100;//or whatever you want the new thing to be.
    nh=(100*Height)/Width;
}
else
{
    nh=100;//same as before just switched
    nw=(100*Height)/Width;
}

然后只需将大小设置为nw,nh

如果希望纵横比在正方形的20%以内,请执行以下操作:

maxOff=0.2; //percent margin of aspect ratio acceptance... (20%)
if ((width/height)>=(1-maxOff)&&(width/height)<=(1+maxOff)) {
//image is ok
}
maxOff=0.2//宽高比接受百分比裕度。。。(20%)

if((width/height)>=(1-maxOff)&((width/height)感谢advanced的帮助。@pakito比率是如何计算的?在javascript中你到底需要它做什么?如果(偶然)你在调整大小时试图让图像保持纵横比,你可能想看看这个(本文的最后一部分):@Ben我是从这里得到的:@Anthony:我正在阅读其他网站的图片,希望显示的图片符合比例,至少达到50像素的最小宽度和高度。就像Facebook一样,当你键入URL时,它只会选择那些“好”的图片ratio.hmm似乎不符合逻辑?图像是由用户上传的,很多高度和宽度是不同的,使用divide很难确定?我的答案基本上和你接受的一样,没有一个例子。语言障碍我猜:)谢谢Marc,我仍然在使用你的逻辑。但看起来像是w245px×h63px的图像通过了。我应该设置一个限制还是什么?@Ben根据h52的w67图像,我得到了1.2884615…等等…有点奇怪?@Ben,但是Ben,有点接近这样的最小或最大百分比。我相信代码与@SDuke在下面提供的提醒类似:((宽/高)%ratio==0)但这不起作用。@pakito只需调整百分比(maxOff)。@Ben非常感谢,但仍然没有骰子。是因为| |?@Ben是的,我已经接受了:)谢谢你的解释和一切,本。这似乎不太管用?我基于w67的图像h52@pakito,你是在除以比率吗?如果是这样的话,我想我可能已经把它向后推了
If ratio%((宽度/高度)==0)
我应该如何重构代码?提到这个简单的测试,它似乎不起作用。