首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Chrome中coordnate很大时,svg圆弧路径getBBox结果错误

在Chrome浏览器中,当SVG圆弧路径的坐标值很大时,可能会导致getBBox方法返回错误的结果。getBBox方法用于获取SVG元素的边界框信息,包括宽度、高度、位置等。

这个问题可能是由于Chrome浏览器在处理大坐标值时的精度问题导致的。SVG坐标系统使用浮点数来表示坐标值,但是浏览器在处理大坐标值时可能会出现精度丢失的情况,从而导致getBBox方法返回错误的结果。

为了解决这个问题,可以尝试以下几种方法:

  1. 缩小坐标值:将SVG路径中的坐标值缩小到合理的范围内,避免使用过大的坐标值。
  2. 使用视口变换:通过设置SVG元素的视口变换属性(如缩放、平移等),将坐标值缩小到合理的范围内。
  3. 使用其他浏览器:尝试在其他浏览器中运行相同的代码,看是否存在相同的问题。不同浏览器对SVG的处理方式可能有所不同,可能会得到正确的结果。
  4. 使用其他方法获取边界框信息:如果getBBox方法无法正常工作,可以尝试使用其他方法来获取SVG元素的边界框信息,例如使用getBoundingClientRect方法。

总结起来,当在Chrome浏览器中使用getBBox方法获取SVG圆弧路径的边界框信息时,如果坐标值很大导致返回错误的结果,可以尝试缩小坐标值、使用视口变换、使用其他浏览器或其他方法来解决该问题。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

HTML5 学习总结(四)——canvas绘图、WebGL、SVG

beginPath() 清空子路径,一般用于开始路径的创建。在几次循环地创建路径的过程,每次开始创建都要调用beginPath函数。 closePath() 如果当前子路径是打开的,就关闭它。...否则把子路径的最后一个点和路径的第一个点连接起来,形成闭合回路。...1.4、绘制圆弧 context.arc(x,y,radius,startAngle,endAngle,anticlockwise) arc方法用来绘制一段圆弧路径,以(x,y)圆心位置radius为半径...、startAngle为起始弧度、endAngle为终止弧度来,而在画圆弧的旋转方向则由最后一个参数 anticlockwise 来指定,如果为 true 就是逆时针,false 则为顺时针,Math.PI...2.文本独立 SVG图像的文字独立于图像,文字保留可编辑和可搜寻的状态。也不会再有字体的限制,用户系统即使没有安装某一字体,也会看到和他们制作完全相同的画面。

9.5K100

在物理引擎圆弧

本文作者:IMWeb zzbozheng 原文出处:IMWeb社区 未经同意,禁止转载 因为需求的需要,要使用在物理引擎中使用四分之一圆弧,我们来看看怎么实现在物理引擎画出四分之一的圆弧,...下面来探讨一下如何实现四分之一圆弧: 我们来看一下svg的path标签可用参数: 指令 参数 说明 M x y 将画笔移动到点(x,y) L x y 画笔从当前的点绘制线段到点(x,y) H x 画笔从当前的点绘制水平线段到点...L 125 80 Z" fill="green"/> 得出结果: ?...L 128 80 Z 表示画直线到 x: 128 y: 80,Z 表示自动闭合路径。 从外形上来看像是一个外凸的圆弧,那么如果需要一个凹下去的圆弧那应该怎么实现呢?...SVG到物理引擎的转换 因为我们这里使用的是matter.js 那么可以通过 matter.js 提供的方法 Svg.pathToVertices 来把svg转换为canvas路径

2.4K80

在物理引擎圆弧

因为需求的需要,要使用在物理引擎中使用四分之一圆弧,我们来看看怎么实现在物理引擎画出四分之一的圆弧, 在物理引擎绘制圆弧 一般来说,物理引擎都是提供一般的画图方法,比如:circle(圆)、polygon...下面来探讨一下如何实现四分之一圆弧: 我们来看一下svg的path标签可用参数: 指令 参数 说明 M x y 将画笔移动到点(x,y) L x y 画笔从当前的点绘制线段到点(x,y) H x 画笔从当前的点绘制水平线段到点...L 125 80 Z" fill="green"/> 得出结果: ?...L 128 80 Z 表示画直线到 x: 128 y: 80,Z 表示自动闭合路径。 从外形上来看像是一个外凸的圆弧,那么如果需要一个凹下去的圆弧那应该怎么实现呢?...SVG到物理引擎的转换 因为我们这里使用的是matter.js 那么可以通过 matter.js 提供的方法 Svg.pathToVertices 来把svg转换为canvas路径

1.4K30

基础 | 在物理引擎圆弧

作者|zzbozheng 原文|http://imweb.io/topic/5959aee62536e43f14da1a68 因为需求的需要,要使用在物理引擎中使用四分之一圆弧,我们来看看怎么实现在物理引擎画出四分之一的圆弧...下面来探讨一下如何实现四分之一圆弧: 我们来看一下svg的path标签可用参数: 指令 参数 说明 M x y 将画笔移动到点(x,y) L x y 画笔从当前的点绘制线段到点(x,y) H x 画笔从当前的点绘制水平线段到点...说起来比较抽象,我们来看看下图 : 假如要画一个左下角的一个四分之一圆弧: 得出结果: M80 80 表示从画布的 x:80 y:80 开始画 A45 45 表示椭圆的x半径长度为45px ,y...L 128 80 Z 表示画直线到 x: 128 y: 80,Z 表示自动闭合路径。 从外形上来看像是一个外凸的圆弧,那么如果需要一个凹下去的圆弧那应该怎么实现呢?...SVG到物理引擎的转换 因为我们这里使用的是matter.js 那么可以通过 matter.js 提供的方法 Svg.pathToVertices 来把svg转换为canvas路径

1.5K20

路径标记语法(Path Markup Syntax)完全教程

同时,SVG 格式使用的也是完全相同的路径语法,你用文本编辑器打开一个 SVG 格式也会看到这样的字符串。 你只需要阅读本文,即可从零开始了解并最终学会路径标记语法。...XAML 系的路径标记语法与之只有一点点不同。 名称 在 SVG 的解释文档,对此语法的称呼为“SVG Path Syntax”(SVG 路径语法)。...在 SVG 路径语法,一共有如下命令可以使用: M m L l H h V v C c Q q S s T t A a Z z 额外的,XAML 系的路径标记语法还有一个 F。...: 一个路径可以由多段组成,用 M m 来指定一个新段的开始 大写字母后面跟的参数,点坐标是绝对坐标;小写字母后面跟的参数,点坐标是相对坐标 如果连续几段都是相同的命令,那么后续可以只写参数而省略命令...A a 椭圆弧命令 A a(Elliptical Arc,椭圆弧) 含义:在上一个点和此命令的端点之间,连一条椭圆弧 参数:size rotationAngle isLargeArcFlag sweepDirectionFlag

23510

Android开发笔记(一百三十二)矢量图形与矢量动画

因为绘图结果是动态计算得到,所以不管缩放到多少比例,矢量图形都会一样的清晰,不像位图那样拉大后会变模糊。 矢量图形的xml定义有点复杂,其结构可分为三个层次:根标签、组标签、路径标签。...,故而采用了不带单位的相对数值,正因为矢量图形的几何路径以相对坐标来标记,所以不管矢量图形缩放到多少比例,其内部的几何形状也会按同样比例缩放。...横轴半径等于纵轴半径,表示这是个圆圈的圆弧。 -- x-axis-rotation表示圆弧的旋转角度。 -- large-arc-flag表示大弧标志,为0表示取小弧度,1取大弧度。...-- 圆弧经过某点,该点的横坐标为x1 -- 圆弧经过某点,该点的纵坐标为y1 闭合路径 “Z” 连接起点跟终点,即在起点(x0,y0)与终点之间画一根线段。...3、关于圆弧的large-arc-flag和sweep-flag两个标志,光看文字说明其实不易理解,还是上个图观察观察: ? 下面使用SVG标记定义一个心形,先上个心形的效果图: ?

1.7K20

SVG 从入门到后悔,怎么不早点学起来(图解版)

其实点集完全不需要用逗号隔开,上面的例子我使用了逗号隔开,完全是为了让自己阅读代码比价易懂。一个逗号分隔一个 xy 坐标。...="blue" fill="none" > 曲线 - 椭圆弧路径 path 在 SVG ,画曲线其实有很多种方法。...之后打算再写一篇贝塞尔曲线相关的文章骗点赞~ 什么是椭圆弧? 前面讲到的 直线路径 path 是比较好理解的,它把所有点都用直线连接起来即可。只要确定2个点就可以画出一根线段。...而在种种方法,我认为 椭圆弧曲线 是最简单的。 椭圆弧曲线,顾名思义就是和椭圆有关的。如果在椭圆上选择两个点,就可以截取2条曲线。 比如这样,红线处就将椭圆截取成2段弧线。...椭圆弧公式 在 SVG 可以使用 path 配合 A属性 绘制椭圆弧

2.9K10

使用 SVG 和 JS 创建一个由星形变心形的动画

利用路径数据可以获得更有趣的结果,比如一颗星星变成一个心。 ? 我们即将编写的星星变心的动画。 想法 两个形状都是使用五条 三次 Bézier 曲线 创建的。...开始编写代码 正如在 脸部动画 中看到的,我经常使用 Pug 生成这样的形状,但在这里,因为我们生成的路径数据也需要用 JavaScript 来制作路径动画,所以全部使用 JavaScript,包括计算坐标并把数值放入...(i%2)) PTS.push([x, y]); } 接下来,将数据放入对象 O 。对于路径数据的(d)属性,我们将上述函数执行后得到的点数组作为初始数值。...CodePen 查看: See the Pen make SVG star shape by Ana Tudor (@thebabydino) on CodePen....这几乎是我们想要的结果——但还有一点小问题。对于角度这样的循环值,我们不希望在第二次点击反方向转半个圆,而是继续朝同一个方向转半个圆。

4.7K51

探秘神奇的运动路径动画 Motion Path

对于一些简单的圆弧曲线路径,还是可以借助一些巧妙的办法实现的,看看下面这个例子。...CSS Motion Path 实现直线路径动画 CSS Motion Path 规范主要包含以下几个属性: offset-path:接收一个 SVG 路径(与 SVG 的path、CSS 的 clip-path...这个也算好理解,运动的元素可能不是一个点,那么就需要指定元素的哪个点附着在路径上进行运动 offset-rotate:定义沿 offset-path 定位元素的方向,说人话就是运动过程中元素的角度朝向...与 SVG 的path、CSS 的 clip-path 类似,对于这个 SVG Path 还不太了解的可以戳这里先了解下 SVG 路径内容:SVG 路径 我们会得到如下结果: ?...经过实测,Can i use 上写着 offset-anchor 属性的兼容性在为 Chrome 79+、Firefox 72+,但是实际只有 Firefox 支持,Chrome 下暂时无法生效~

1.9K50

使用Raphael绘制流程图,自绘动态箭头,可拖动,有双击事件,纯前端,兼容各种浏览器

关于Raphaël Raphaël是一个在网页上绘图的js类库,非常小压缩版只有89k左右 官方宣称兼容各种主流浏览器,据笔者测试在IE6下尚有一些问题(不过这些与本文无关) 他是使用js来创建vml或svg...$(function () { //用来存储节点的顺序 var connections = []; //拖动节点开始的事件...function getStartEnd(obj1, obj2) { var bb1 = obj1.getBBox(), bb2 = obj2...., 大家还是自己去研究吧 确定箭头路径的代码如下 //获取组成箭头的三条线段的路径 function getArr(x1, y1, x2, y2, size) {...数组 M表示画笔起点移动到此点 L表示从某点绘制到某点,绘制直线 以上函数反馈结果的意思是: 画笔从(x1,y1)开始绘制直线到(x2,y2),然后从(x2,y2)绘制直线到(x2a,y2a)然后画笔移动到

91630

SVG图形绘制入门第一弹

在易读性方面,基于XML也就是说SVG图像文件可以像HTML网页一样有着很好的可读性,可以用任何文本编辑器打开SVG图像,并可看到用来描述图像的代码(掌握了SVG语法的人甚至可以只用一个记事本便可以读出图像的内容来...在SEO,无障碍方面,SVG文件的文字虽然在显示可呈现出各种图像化的修饰效果,但却仍然是以文本的形式存在的, 这些信息可以为搜索引擎所用,而以往搜索引擎通常无法搜索到写在点阵图像的文字。...在视觉方面,SVG图像的文字独立于图像,不会再有字体的限制,用户系统即使没有安装某一字体,也会看到和他们制作完全相同的画面。...然后我们看一下浏览器支持的情况: Internet Explorer 9、Firefox、Opera、Chrome 以及 Safari 支持内联 SVG。... demo A = elliptical Arc 圆弧,他是椭圆形或者说圆形的一部分 A 45 45, 0, 0, 0

3.1K70

图标字体应用实践

因为浏览器同一间能够加载的资源数是一定的,IE 8是6个,Chrome是6个,Firefox是8个。为了验证,写了以下html结构:(这部份虽然有点跑题,但是很要必要深究一下) ?...验证Chrome同时加载个数的html–很多张很大的图片 然后在Chrome的开发者工具里面的Timeline可以看到Chrome确实是6个6个加载的,每次最多加载6个: ?...选中或者hover反色 或者是某一天UI要换颜色、某一天老总挂了,为表哀悼,为个公司的网站要换个灰色调。使用雪碧图,所有的图标都得重新制作。...坑1:图标字体只支持单路径 通常情况下,设计师在制作图标的时候是用多个路径组合出来的,在上面的导出的svg也是带有多个路径的,打开svg文件就可以知道,它是由几个path组成的: ?...svg路径作为src属性,这种方法的缺点是没办法用CSS控制样式。

2.2K20
领券