长话短说,我希望能够使用浏览器中的PHP或JavaScript从draw.io保存的PNG中提取XML数据。
我正在使用带有层的draw.io图像来记录网络设备之间的物理连接。文档站点是运行dokuwiki实例的内部站点,我没有管理权限。我可以将导出的PNG文件上载到站点,但不允许上载TXT,XML或SVG文件。无论出于何种原因,我都可以在页面上嵌入HTML,PHP和JavaScript。我现在可以粘贴HTML嵌入代码,但是这在编辑页面时大大降低了浏览器的速度,使我一旦粘贴了嵌入代码便无法进行任何进一步的更改。
为此,我想要的解决方案是使用PHP或JavaScript从上载的PNG中提取XML数据。与this ask相反。然后,将其插入页面上的嵌入代码中。
这是我要使用的嵌入代码:
<div
class="mxgraph"
style="max-width:100%;border:1px solid transparent;"
data-mxgraph="{"highlight":"#0000ff","nav":true,"resize":true,"toolbar":"zoom layers lightbox","edit":"_blank","xml":"_INSERT_XML_DATA_HERE_"}">
</div>
<script
type="text/javascript"
src="https://www.draw.io/js/viewer.min.js">
</script>
我不了解足够的JavaScript来弄清楚draw.io在从PNG打开时如何做到这一点,但是一些有关其工作方式的示例代码甚至是指向源代码发生位置的链接都将是有帮助。
答案 0 :(得分:1)
如果Draw.io可以做到,那么您也可以做到!但是我认为只有在导出到PNG时选择Include a copy of my diagram
选项才有可能。使用此选项Draw.io将其他数据保存为PNG(您可以查看writeGraphModelToPng。
但是对您来说更有趣的是extractGraphModelFromPng
答案 1 :(得分:0)