使用D3.js旋转外部SVG文件
Rotate external SVG file with D3.js
当我用D3.js点击外部SVG文件时,我正试图旋转它。我注意到SVG只允许在<g>
、<circle>
和<rect>
等标签上旋转。我找不到实现这一目标的方法。
HTML:
<div id="canvasdiv" style="border: 1px solid black; width:800px; height: 600px"></div>
Javascript:
// CREATE SVG DRAWING CANVAS
var paper = d3.select("#canvasdiv")
.append("svg")
.attr("id", "canvas")
.attr("width", 800)
.attr("height", 600);
// CREATE CONTAINER BOX FOR SVG FILE
var innerSvg = paper.append("svg")
.attr("id", "iSvg")
.attr("x", 500)
.attr("y", 10)
.on("mousedown", function() {
d3.select(this)
.attr("transform", "rotate(90)");
});
//IMPORT SVG FILE
d3.xml("Boiler.svg", "image/svg+xml", function(xml) {
var importedNode = document.importNode(xml.documentElement, true);
d3.select("#iSvg").node().appendChild(importedNode);
});
您可以将g
元素添加到生成的SVG中,并将外部SVG的内容附加到该元素中。然后你可以旋转它。任何你不想旋转的内容都可以附加到其他g
元素中。
相关文章:
- 如何获取从 HTML 到 SVG 文件的值
- JavaScript在嵌入SVG文件中不起作用
- 在rails中操作上传的svg文件
- 使用D3.js旋转外部SVG文件
- HTML-SVG文件动画不适用于主机,但适用于本地
- 不呈现使用拉斐尔的SVG文件
- 我们可以使用 Javascript 更改加载的 SVG 文件的颜色吗?
- 如何获取上传的SVG文件对象的内容
- 如何使用此 js svg 解析器将 svg 文件或元素中的路径小数位更改为 n 位小数
- 图像(jpeg 和 png)文件如何在 SVG 文件中格式化
- 下载被 Chrome 阻止的 xml 和 svg 文件的 zip 存档(无论是否为空)
- 将编辑的 SVG 文件另存为新文件或保存到数据库
- 加载许多 svg 文件并更改填充
- 使用 fabricjs 在 svg 文件中查找组 ID
- 如何使用javascript将SVG文件转换为JSPDF中的PDF
- 使用 javascript 调用不同的 svg 文件
- 将用Javascript绘制的外部SVG文件导出为PNG图像
- SVG文件 :如何使用Inkscape将PNG文件转换为SVG文件后获取路径标记数据
- 动态更改SVG文件的文本
- 使用 snap SVG,如何以像素为单位计算 SVG 文件的整个路径