无法使用DOM解析器解析存储在MSSQL数据库中的自定义设计的SVG

时间:2018-08-06 20:26:12

标签: javascript html css svg

我尝试使用JavsScript DOM解析器解析MSSQL中存储的SVG图像。

我尝试了很多可能性(在代码中有注释)。在生成的SVG中出现“ \ n”和“ \ r”,并且SVG看起来很糟。 SVG是使用Adobe Photoshop设计的,因此SVG元素标记中具有尚未应用的样式。

这是我的代码

 function func1(svgId) {
     // ajax call to fetch the SVG string from the database
     let xhr = new XMLHttpRequest();
     xhr.onreadystatechange = function() {
         if (this.readyState == 4 && this.status == 200) {
             let resSVG = JSON.parse(xhr.response)[0]['SVG'];
             // Removing the whitespaces from the SVGS
             resSVG = resSVG.trim();
             // Removing \ that is appened to all the double quotes (")
             resSVG = resSVG.replace(/\\/g, "");
             // DOM parser to parse the SVG
             let parser = new DOMParser();
             let docSVG = parser.parseFromString(resSVG, "image/svg+xml");
             // let docSVG = parser.parseFromString(resSVG, "text/html");
             level1.append(docSVG.documentElement);
         }
     };
     xhr.open("GET", URL.getFloorSVGs + svgId, false);
     // xhr.overrideMimeType("application/xml");
     xhr.overrideMimeType("image/svg+xml");
     xhr.setRequestHeader("Content-type", "text/xml");
     xhr.send("");
 }

0 个答案:

没有答案