编程语言
首页 > 编程语言> > javascript – 调整SMALLEST图像尺寸

javascript – 调整SMALLEST图像尺寸

作者:互联网

参见英文答案 > How do I auto-resize an image to fit a div container                                    30个
这似乎是以前会被问过但我找不到副本的东西……

我希望图像的最小尺寸最大可缩放200,同时保持纵横比.所以:

> 600×400图像的最小尺寸为400,应为200,因此比例为0.5:新图像为300×200
>同样400×800将是200×400
> 100×300的最小尺寸已经是< 200所以它将保持100x300.
显然,如果它可以用css完成那么这比javascript更受欢迎.

解决方法:

是的,你需要JS:

LIVE DEMO

function scale(W, H, max) {
  var min = Math.min(W, H),        // Get the smallest size
      nr  = min>max,               // NeededResize (Boolean)
      rat = Math.min(max/W, max/H);// Ratio
  return {
    W: nr?W*rat:W, // if NeededResize do W*rat, else just use the image W
    H: nr?H*rat:H
  };
}
// Use like: scale(imageWidth, imageHeight, maxSizeToRespect);
var resize = scale(this.width, this.height, 200);
// Where from now on
resize.W // is the returned width scale
resize.H // is the returned height scale

标签:javascript,css,aspect-ratio,image-resizing
来源: https://codeday.me/bug/20190629/1322551.html