首页 > 解决方案 > 调整图像大小并保持叠加位置

问题描述

我正在调整 Javascript 中的图像大小,以使图像以其正确的纵横比填充父容器。在该图像之上,我有需要以特定坐标覆盖在图像上的项目。


标签: javascript

解决方案


您可以使用图像元素的属性来确定要应用于覆盖项的缩放因子。

图像的内在(未缩放)尺寸是:

const unscaledWidth = img.naturalWidth,
  unscaledHeight = img.naturalHeight;

绘制的图像尺寸为:

const scaledWidth = img.offsetWidth,
  scaledHeight = img.offsetHeight;

因此,比例因子为:

const scaleX = scaledWidth / unscaledWidth,
  scaleY = scaledHeight / unscaledHeight;

参考:


推荐阅读