使用fs文件系统创建.svg文件

问题描述

我正在从客户端向快递服务器发送一个巨大的字符串

               createString(){
                var s = new XMLSerializer();
                this.svg = $('#svg')[0]
                this.svg = s.serializetoString(this.svg)
                console.log(this.svg)
                return  this.svg;
                },async sendStringToServer(obj){
                await axios.put(`http://localhost:3000/recolor`,obj)
                }

到目前为止,当我将我的投放限制设置为2mb时,这似乎可行

app.use(bodyParser.json({limit: '50mb'}));
app.use(bodyParser.urlencoded({limit: '50mb',extended: true}));
app.use(express.json());

由于必须对对象进行字符串化处理,因此必须剪切对象的前两个字符{"<svg></svg>"}

这是我的代码

function Recolor(obj){
    console.log(obj)
    let element = JSON.stringify(obj)
    element = element.substring(2,element.length-2)
    fs.writeFile('map.svg',element,(err) => {
        if (err) throw err;
        console.log('The file has been saved!');
      });
}

fs成功创建了文件,但是存在问题。 SVG文件仅包含一列,并且文本不会被识别为SVG。

SVG content

解决方案吗?也许以某种方式将字符串转换为SVG?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)