svg在html里按比例缩小,svg 放大缩小后的比例

function getCoords(evt) {

// 计算出当前屏幕与svg的比例

var canvas = document.getElementById("canvase");

var viewbox = svgRoot.getAttributeNS(null, "viewBox"); //获取ViewBox属性

var params = viewbox.split(" ");

// 屏幕和svg的比例 这是初始化比例

var roteX =  svgRoot.clientWidth / parseFloat(params[2])  ;

var roteY =  svgRoot.clientHeight / parseFloat(params[3])  ;

// 用户点击的svg原始坐标,当成屏幕坐标

userCoord.x = evt.layerX;

userCoord.y = evt.layerY;

console.log(svgRoot)

// 如果平移

var tx = parseFloat(params[0]),

ty = parseFloat(params[1]);

// 如果缩放

// var x_scale = 1 / roteX,

//     y_scale = 1 / roteY;

// svg坐标

mouseCoord.x = (userCoord.x/roteX+tx)

mouseCoord.y = (userCoord.y/roteY+ty)

}

内容来源于网络如有侵权请私信删除

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值