繁体   English   中英

缩小图像以适合div

[英]Scale down image to fit div

我正在尝试按比例缩小一个装料,以适合大于最大宽度和高度设置的div容器。 我下面的代码获取图像的宽度和高度以及允许的最大尺寸设置。

这是我无法进入的深度,它在下面加载的图像为662x599。 宽度大于允许的最大值,因此我需要将其正确缩小并放置在div的中心。

var max_width = 713;
var max_height = 550;

var img = new Image();
img.onload = function() {
    img.width = this.width;
    img.height = this.height;
}
img.src = 'files.jpg';

以下是我手动调整图像大小的示例,它看起来不错,可以为您提供一个粗糙的外观示例。 我打算使用样式“ top”和“ left”将图像放置在div的中心。

<img style="width: 613px; height: 550px; top: 0px; left: 50px;" src="files.jpg">

任何帮助将非常感谢。

这是用于计算widthheighttopleft

// max_width  = 713
// max_height = 550
// img.width  = 662
// img.height = 599

scale_width = max_width / img.width;
scale_height = max_height / img.height;

scale = Math.min(scale_width, scale_height);

width = img.width * scale;  // 608
height = img.height * scale;  // 550

left = (max_width - width)/2; // 52
top = (max_height - height)/2;  // 0

为什么甚至需要JavaScript? 只需将图像上的max-width设置为与包含divmax-width (即100%)匹配即可。

http://jsfiddle.net/Pp7Rg/1/

<div>
    <img src="https://www.google.com/url?q=http://www.photoinpixel.com/mypicture/persian-cat-hd-wallpaper.jpg&ei=dTWZUYHKOoqkiQLto4GYAw&sa=X&oi=unauthorizedredirect&ct=targetlink&ust=1368996989961871&usg=AFQjCNHdsjijJ2oeKrUuvZRMFUuIRxydtg"/>
</div>

div {
    width: 500px;
}

img {
    max-width: 100%;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM