首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何以编程方式从draw.io PNG中提取XML数据

如何以编程方式从draw.io PNG中提取XML数据
EN

Stack Overflow用户
提问于 2019-05-24 08:50:13
回答 2查看 1.6K关注 0票数 2

长话短说,我希望能够在浏览器中使用PHP或JavaScript从从draw.io保存的PNG中提取XML数据。

我正在使用带有层的draw.io图像来记录网络设备之间的物理连接。文档站点是运行dokuwiki实例的内部站点,我对该实例没有管理权限。我可以将导出的PNG文件上载到站点,但不允许上载TXT、XML或SVG文件。无论出于什么原因,我都可以在页面上嵌入HTML、PHP和JavaScript。我现在可以粘贴HTML嵌入代码,但这会显著降低浏览器在编辑页面时的速度,以至于一旦粘贴了嵌入代码,就无法进行任何进一步的更改。

我打算的解决方案是使用PHP或JavaScript从上传的PNG中提取XML数据。与this ask截然相反。然后,我会将它插入到页面的嵌入代码中。

以下是我将使用的嵌入代码:

代码语言:javascript
复制
<div
  class="mxgraph"
  style="max-width:100%;border:1px solid transparent;"
  data-mxgraph="{&quot;highlight&quot;:&quot;#0000ff&quot;,&quot;nav&quot;:true,&quot;resize&quot;:true,&quot;toolbar&quot;:&quot;zoom layers lightbox&quot;,&quot;edit&quot;:&quot;_blank&quot;,&quot;xml&quot;:&quot;_INSERT_XML_DATA_HERE_&quot;}">
</div>

<script
  type="text/javascript"
  src="https://www.draw.io/js/viewer.min.js">
</script>

我不知道足够多的JavaScript来理解当draw.io从PNG打开时如何做到这一点,但是一些关于它如何工作的示例代码,或者甚至是源代码中发生这种情况的链接将会很有帮助。

EN

Stack Overflow用户

发布于 2019-05-24 12:39:05

XML数据无法从PNG中提取,因为它是光栅化的压缩像素数据。我认为您正在寻找的格式是SVG,它是一种基于XML的图像格式。使用svg图像,您将能够对文件中的XML做任何您需要的事情,或者只是上传SVG。

在draw.io中,您需要导出为svg。

文件>导出为> SVG...

希望这能有所帮助。

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56284570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档