已知数据来源坐标,计算其在图片上的定位问题

有时候会遇到关于图片上一些数据的定位问题,这个时候需要后台提供的数据有哪些呢?

  1. 原图的宽(因为前端显示图片的时候会因为自适应,或者有图片缩放功能,所以原图的宽必须知道,记做pWidth)
  2. 关于定位区域的坐标(记做 top,left,right,bottom)

接下来就是关于具体坐标的计算,我们生成一个红色的div框,来框出具体的坐标

1.定义一个div ,设置定位position:absolute,设置样式border:2px solid red
2.计算这个div的宽和高
宽 = right-left
高 = bottom-top
3.定位出div的左边距和上边距
左边距 = left
(当前图片的宽/pWidth)
上边距 = top*(当前图片的宽/pWidth)
4.这样子这个矩形框就画出来了*

下面附上具体代码

let pWidth //原图的宽
let imgwidth = $('.xxx').find('img').css("width").split("px")[0]; //当前图片的宽
let str = "<div style='position:absolute;width:" + Number(rows.right - rows.left) * Number(imgwidth
 / pWidth) + "px;height:" + Number(rows.bottom - rows.top) * Number(imgwidth / pWidth) +
  "px;border:2px solid red;top:" + Number(rows.top) * Number(imgwidth / pWidth) + "px;left:" +
   Number(rows.left) * Number(imgwidth / this.set.width) + "px'></div>"
$('.xxx').append(str)
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值