有没有办法用javascript解析svg文件

时间:2019-09-20 00:35:22

标签: javascript svg

我能够读取整个svg块,但是我只想要x1属性(稍后将其输入到数组中)。最好的方法是什么?我在svg文件中添加了我要查看的一行。

我尝试使用filereader类,但不确定如何获取x1。

<line style = "stroke:rgb(0,20,255)" stroke-width = "1" x1 = "25.53951" y1 = "12.65721" x2 = "27.65919" y2 = "16.0494" />"
const input = document.querySelector('input[type = "file"]')
input.addEventListener('change',function (e){
  console.log(input.files)
  const reader = new FileReader()
  reader.onload = function(){
    console.log(reader.result)
  }
  reader.readAsText(input.files[0])
}, false)

1 个答案:

答案 0 :(得分:2)

在这种情况下,最简单的方法是将XML解析为文档,并使用通常的DOM方法来获得所需的内容。

尝试这样的事情:

const parser = new DOMParser();
const svgDoc = parser.parseFromString(data, 'image/svg+sml');

然后您可以执行以下操作:

svgDoc.querySelector('line').getAttribute('x1');
相关问题