还是不明白,为什么是(图片的宽度乘以窗口的高度)除以真实的高度??还有我做的为什么图片是一般高度啊?我用firebug试了一下,发现貌似是canvas的问题啊。。。
1 回答
你是说这里么?
var realw = winHeight * w/h;
var realh = winWidth * h/w;
这么理解把,图片要看起来协调就要保证图片放大缩小时纵横比不变, 而图片本身的纵横比是 h / w 或者 横纵 比是 w / h,
所以当图片比较长,也就是竖图时,需求是把窗口高度(winHeight) 当做真实展示高度,我们就需要按下面这个比例关系 来求图片展示的宽度(realw),把除数拿到右面不就是乘法么。。
realw / winHeight = w / h
同理当图片比较宽时,也就是横图时,需求是把窗口宽度(winWidth)当做真实展示宽度,我们就需要按下面这个比例关系 来求图片展示的高度(realh)
realh / winWidth = h / w
举报
0/150
提交
取消