Draw.io XML 文件的格式? [英] Format of Draw.io XML file?

查看:17
本文介绍了Draw.io XML 文件的格式?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在 draw.io 中创建了一个形状并将其导出以获取其 XML 文件,如下所示:

I created a shape in draw.io and exported it to get its XML file, which looks like this:

<代码>< mxlibrary> [{ XML": vZTNcoIwEMefJnckXjxarF7aXvoEKawk05Blwirap + 8SooLa0XbaZoaZ7H8/sssPImRW7VZe1foZC7BCPgqZeUTqd9UuA2tFmphCyIVI04QfkS6/8E6CN6mVB0f3JKR9wlbZDfRKLzS0t1EoPW5qIR88kiL1FuSE7ZgJnmA3Oj1H5yA/hB5bGHUVQmNLK8AKyO85pDUF6Rgxi2kaTKkPaTKKqonNHXNPQ/Imznl9Znkx8wsSNBeD89yugCKO22pD8FqrvPO2DIw1TRUfspjwttGqwPZgkMd3yNCiD6VkFhZ71sbagT4Lq9PR0UBfhsW6sqZ0rFlYU1eYzzeufArWYtpRgcZ8DKhUuB1YUJghsjGZJNS32M69x7aJyt2YhzjTn + H8DZrT21/wX4A8A9O9H5MrO48yYX0V1xjPObz/5rMfY7j59yXf58Xm6TYLvtFl9wk =", W":190, H":130,"aspect":"fixed","title":"notes"}]</mxlibrary>

是否可以使用此数据插入新顶点?我什至不知道从哪里开始这个.

Is it possible to insert a new vertex using this data? I don't even know where to begin on this one.

推荐答案

终于搞定了.查看 mxCodec 示例 这里.因此,首先,按照 kjhughes 的描述或通过 Draw.io 中的 Extras -> Edit Diagram 菜单获取节点的未压缩 xml.然后你可以像这样添加节点:

Finally got this working. Check out the mxCodec example here. So first, get the uncompressed xml for the node either as described by kjhughes or via the Extras -> Edit Diagram menu in Draw.io. Then you can add the node like so:

var xml = '<root><mxCell id="2" value="Hello," vertex="1"><mxGeometry x="20" y="20" width="80" height="30" as="geometry"/></mxCell><mxCell id="3" value="World!" vertex="1"><mxGeometry x="200" y="150" width="80" height="30" as="geometry"/></mxCell><mxCell id="4" value="" edge="1" source="2" target="3"><mxGeometry relative="1" as="geometry"/></mxCell></root>';
var doc = mxUtils.parseXml(xml);
var codec = new mxCodec(doc);
var elt = doc.documentElement.firstChild;
var cells = [];

while (elt != null)
{
  cells.push(codec.decode(elt));
  elt = elt.nextSibling;
}

graph.addCells(cells);

xml 替换为您节点的任何 xml.另外,一定不要包括

Replace xml with whatever the xml for your node is. Also, be sure not to include

<mxCell id="0"/>
<mxCell id="1" parent="0"/>

因为这些是默认的父级,它们的包含会导致无限递归而破坏图.

as these are the default parents and their inclusion will break the graph by causing infinite recursion.

这篇关于Draw.io XML 文件的格式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆