pathseg 1.2.1 (XStatic打包标准)
项目描述
SVGPathSeg polyfill
这是SVGPathSeg、SVGPathSegList和getPathSegAtLength API的替代品,这些API已被从SVG2中删除(https://lists.w3.org/Archives/Public/www-svg/2015Jun/0044.html)。使用SVGPathSeg或SVGPathSegList API的现有代码可以使用此polyfill来保持工作。此polyfill基于从Chromium 47中删除的精确代码和测试。
SVGPathSeg API难以使用,已被从SVG规范中删除,转而使用Paths模块中的新、更酷的API(https://lists.w3.org/Archives/Public/www-svg/2015Jun/0044.html)。所有新开发都应该使用SVG路径数据API。对于尚未支持新API的浏览器,有一个polyfill(path-data-polyfill.js)。
实现状态
现在通过所有来自Chromium存储库的SVGPathSeg测试。
现在由svg-edit使用,并通过所有svg-edit路径测试。
Blink可能将删除SVGPathElement.getPathSegAtLength(参见:[Intent to deprecate and remove SVGPathElement.getPathSegAtLength] (https://groups.google.com/a/chromium.org/d/msg/blink-dev/Gc1Aw282beo/NsfsKf8LBgAJ))。已向此库添加了一个getPathSegAtLength polyfill。
Firefox 59可能将删除SVGPathSeg和SVGPathSegList API的部分(参见:[Remove the WebIDL methods for creating and mutating SVG path data] (https://bugzilla.mozilla.org/show_bug.cgi?id=1436438))。此库支持对此部分实现进行polyfill。
使用pathseg.js
只需将pathseg.js添加到您的服务器,并在您的html或svg文件中包含它。
<script src="pathseg.js"></script>
示例API使用
var path = document.createElementNS("http://www.w3.org/2000/svg", "path");
var moveToSeg = path.createSVGPathSegMovetoRel(10, 10);
var lineToSeg = path.createSVGPathSegLinetoRel(100, 100);
path.pathSegList.appendItem(moveToSeg);
path.pathSegList.appendItem(lineToSeg);
console.log(path.getAttribute('d')); // m 10 10 l 100 100
moveToSeg.x += 200;
moveToSeg.y += 200;
console.log(path.getAttribute('d')); // m 210 210 l 100 100
这些API已从SVG 2中删除,但它们的原始定义可以在以下位置找到:
http://www.w3.org/TR/SVG/single-page.html#paths-InterfaceSVGPathSeg
http://www.w3.org/TR/SVG/single-page.html#paths-InterfaceSVGPathSegList
https://www.w3.org/TR/SVG/single-page.html#paths-__svg__SVGPathElement__getPathSegAtLength
项目详情
XStatic-pathseg-1.2.1.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 923377ecedd6577b2965d6c8f2e0e299a2c3b019814d3e3c29e6d9058f9edad5 |
|
MD5 | 59d5616db706eb79a5542bf31d1f67db |
|
BLAKE2b-256 | e1c5e915e83315f9f3b6be1844cabb20f99434a694689e1d07595b965d8c05f8 |