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

2023-12-10

长话短说,我希望能够在浏览器中使用 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="{&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 来弄清楚从 PNG 打开时,draw.io 是如何做到这一点的,但是一些关于它如何工作的示例代码,甚至是源代码中发生这种情况的链接将会有所帮助。


如果 Draw.io 能做到,您也能做到!但我认为只有你选择了才有可能Include a copy of my diagram导出为 PNG 时的选项。使用此选项 Draw.io 将附加数据保存为 PNG(您可以查看writeGraphModelToPng.

但对你来说更有趣的是从 Png 中提取图形模型

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何以编程方式从draw.io PNG中提取XML数据 的相关文章

  • 设置双指缩放时精确的滚动位置

    我正在创建一个地图应用程序 它将标记图像放置在画布上并滚动到它 我正在使用浏览器的捏缩放和滚动来放大 缩小地图 然而 我注意到有一些奇怪的行为 我想知道如何解决它 这有点难以解释 但我们开始吧 假设您处于网页的标准缩放级别 无法进一步缩小
  • 此页面上的脚本导致 ie 运行缓慢

    问题就在标题中 IE 行为异常 并说有一个脚本运行缓慢 FF 和 Chrome 没有这个问题 我怎样才能找到问题所在 那个页面有很多JS 手动检查不是一个好主意 EDIT 这是我正在处理的一个项目的页面 但我需要一个工具来查找问题 End
  • 将html数据解析成python列表进行操作

    我正在尝试读取 html 网站并提取其数据 例如 我想查看公司过去 5 年的 EPS 每股收益 基本上 我可以读入它 并且可以使用 BeautifulSoup 或 html2text 创建一个巨大的文本块 然后我想搜索该文件 我一直在使用
  • 如何在 select 和 option 标签中添加 JSON 数据?

    我有这个html代码 div class searchfilter div class searchwrapper div div
  • JavaScript 将键添加到数组中的每个值

    我下面有这个数组 它由一个简单的数组组成 我想要完成的是放一把钥匙id在每个数组值前面以实现类似的效果 id a id b id c id d 有没有一种简单的方法可以做到这一点 任何帮助将不胜感激 谢谢 var test a b c d
  • 如何在 React Native 上显示 SVG 文件?

    我想显示 svg 文件 我有一堆 svg 图像 但我找不到显示的方式 我尝试使用Image and Use的组成部分反应本机 svg https github com magicismight react native svg但他们不这样做
  • C# 和 Javascript SHA256 哈希的代码示例

    我有一个在服务器端运行的 C 算法 它对 Base64 编码的字符串进行哈希处理 byte salt Convert FromBase64String serverSalt Step 1 SHA256Managed sha256 new S
  • 我想在java中使用XQuery进行Xml处理

    我想用XQuery用于从 java 中的 Xml 获取数据 但我没有得到需要为此添加哪个 Jar 我在谷歌上搜索了很多 但没有得到任何有用的例子 例如我得到以下链接 https docs oracle com database 121 AD
  • 检索 css3 缩放元素的宽度/高度

    我正在与 offsetWidth 属性的奇怪之处 我认为 作斗争 这是场景 比方说 我有一个span标签 在我的js中 在某个时刻我执行css3转换 对于这个元素 例如 el set styles transform scale scale
  • xsd 类型的 JAXB(取消)编组:xsd:base64Binary 和 xsd:hexBinary

    JAXB 映射两者xsd base64Binary and xsd hexBinary类型为byte 鉴于我有一个模式 一个 DOM 元素来表示这些类型 例如
  • 使用 JQuery 禁用和启用所有超链接

    我有以下禁用所有超链接的内容 但在事件发生后我想再次启用它们 我该如何执行此操作 a click function return false 我认为这不仅仅是将其设置为 true 那么简单 谢谢大家 不要以这种方式绑定 点击 处理程序 而是
  • 如何仅显示/隐藏此 bootstrapvue 表的第二列和第三列?

    下面的代码将显示 隐藏 a 中的所有列BootstrapVue桌子 代码的来源就是这里的答案 使用 bootstrap vue 组件和 bootstrap 3 动态显示 隐藏列 https stackoverflow com questio
  • 为什么我收到“在嵌套函数中通过 this 对类字段进行潜在无效的引用访问”错误

    在普通 JS 中 我的代码可以正常工作 对于这种情况 我想组件化我的Wall类应该在浏览器中显示用户上传的图像 同样 这在 vanilla JS 中正常工作 但在 JSX 中不起作用 我得到了一个potentially invalid re
  • 如何使整个跨度落入新行?

    这个片段显示了我想要的 http jsfiddle net 945Df 3 http jsfiddle net 945Df 3 div class sup strong a href Rosario Santa Fe Argentina a
  • 扩展 RegExp 以获取文件扩展名

    我知道 已经有很多基于 RegExp 的解决方案 但是我找不到适合我需求的解决方案 我有以下函数来获取 URL 的各个部分 但我还需要文件扩展名 var getPathParts function url var m url match w
  • dbms_xmlgen.getxml - 如何设置日期格式

    我们使用 dbms xmlgen getxml 实用程序通过 SQL 查询生成 xml 该查询从几乎 10 15 个相关表中获取数据 默认情况下 日期格式生成于dd MMM yy格式 有什么方法可以在 dbms xmlgen getxml
  • 为什么 Node.js 应用程序只能从 127.0.0.1/localhost 访问?

    我本来打算教我的朋友介绍 Node 但是后来 我想知道为什么这个代码来自nodejs org var http require http http createServer function req res res writeHead 20
  • 以角度访问窗口 TemplateUrl 内的范围

    我的模式有一个 windowTemplateUrl 如下 div class modal fade div class modal dialog div class modal content square btn div div div
  • 在 JavaScript 函数的 Django 模板中转义字符串参数

    我有一个 JavaScript 函数 它返回一组对象 return Func id name 例如 我在传递包含引号的字符串时遇到问题 Dr Seuss ABC BOOk 是无效语法 I tried name safe 但无济于事 有什么解
  • ng-include 和 ng-view 不同时加载

    下面是我的应用程序的结构 很简单 页眉和页脚是非常小的文件 而主页上的 ng view 要大得多 当我进入该页面时 我注意到了这一点 首先加载两个 ng include 然后 ng view 出现 页脚被推到底部 页脚闪烁大约 0 1 秒

随机推荐

  • 本地通知“每天上午 7:00”未通知

    我希望每天 7 00 发出通知 但它不会发出 我还希望它在锁定屏幕中显示 这是迄今为止我拥有的所有代码 void EveryDayNotify NSLog Good Morning Working UILocalNotification l
  • 如何在不使用 AudioSessionSetProperty 的情况下将音频路由到扬声器?

    As AudioSessionSetProperty可能会变成deprecated 我正在尝试找到如何将音频路由到的代码示例speaker使用其他方式 之前我做了以下事情 void setSpeakerEnabled debugLog s
  • 为什么“加载事件在 addEventListener() 上不起作用”?

    我尝试在加载页面的正文元素后记录一些内容 但日志没有出现在控制台中 我究竟做错了什么 const body document querySelector body function setInitialGradient console lo
  • 按相关列值排序 Bookshelf.js 获取

    我正在使用 Bookshelf js Knex js 获取具有相关子模型 称为公司 的模型 称为用户 我可以按子模型上的字段订购吗 company name 另外 如果可能的话 我可以进行多重排序吗 company name然后下降last
  • 使用 Google Apps 脚本编辑 Google 日历活动时更新与会者

    情况 我有一个日历 上面有很多活动 员工评估 我已经做了很多修改 改变活动的长度等 但邀请函是发给拥有莲花笔记日历的人 穷人 的 这意味着除非我触发所谓的 发送通知 在用鼠标点击的版本中 他们无法知道事件已更新 类似问题 在此示例中 我尝试
  • 如何截取画布的屏幕截图? [复制]

    这个问题在这里已经有答案了 如何截取画布的屏幕截图 或者如何创建图像 该图像将由图像 自由区域组成 位于画布上 这取决于你的框架 但基本上你可以使用canvas toDataURL 这是一个完整的例子
  • 如何使用 python 运行 matplotlib 和 PyQt5 Video

    我正在尝试一起运行 QVideoWidget 和 matplotlib 动画 但是当我运行这个 py 时 QVideoWidget 不起作用 我得到了 QVideoWidget 代码和 matplotlib 动画代码 然后将这些代码总结在下
  • 如何在带有后续提示的 QnA 问题中实现卡片并在卡片中使用它们

    我已经设置了一个链接到 QnA 服务的简单 QnA 机器人 在 QnA 服务中 我设置了一些带有后续提示的问题 家属 例如我如何乘坐公共汽车 火车等到达校园 请参阅链接中的图像 在 Qna 制造商测试功能中 您只需单击一个名为 启用多轮 的
  • 当我们将命令放在美元符号和括号内时,在 shell 中意味着什么:$(command)

    我只想了解 shell 中的以下代码行 它用于获取当前工作目录 我知道 variable name 返回变量名称内的值 但是什么是 command 应该回来吗 执行命令后是否返回值 在这种情况下 我们可以使用 执行命令 CWD cd dir
  • 在 C# 中格式化带有有效数字的数字

    我有一些十进制数据 正在将其推送到要查看的 SharePoint 列表中 我想根据我对具体计算的了解来限制结果数据中显示的有效数字的数量 有时它会是3 所以12345会变成12300 0 012345会变成0 0123 偶尔会是 4 或 5
  • 如何找出哪个 DOM 元素具有焦点?

    我想知道 在 JavaScript 中 哪个元素当前具有焦点 我一直在浏览 DOM 但还没有找到我需要的东西 有没有办法做到这一点 以及如何做到这一点 我寻找这个的原因是 我正在尝试制作像箭头这样的键enter浏览输入元素表 Tab 现在可
  • 如何将 java.util.Date 转换为 GMT 格式

    我有一个字符串 2014 07 02T17 12 36 488 01 00 显示山区时区 我将其解析为 java util date 格式 现在我需要将其转换为 GMT 格式 谁能帮我 SimpleDateFormat sdf new Si
  • AngularJS 外部 ng-repeat 不在内部 ng-repeat 上注册监视

    这与我的问题有关 Angular JS ng repeat 消耗更多浏览器内存 我的问题是我需要嵌套的 ng repeats 并且由于注册了更多的监视 因此嵌套的 ng repeats 会消耗更多的内存 table thead td Id
  • 如何设置 Eclipse 控制台区域设置/语言

    使用 Eclipse Helios 开发 Web 应用程序时 tomcat 输出将发送到控制台 好的 但是这些消息正在被翻译成我的操作系统语言 事实上 我的 Eclipse 是英语的 但 Tomcat 输出 日志记录 正在翻译为葡萄牙语 可
  • 鼠标移动太快而无法捕获事件

    这与 上一个问题 但问题是 只有当我在 TableLayoutPanel 上和周围快速移动鼠标时 我的代码才会失败 由于鼠标快速移动 C 或 Windows 是否有可能报告 触发事件乱序 如果是这样 我该如何纠正 谢谢 我希望这不会被视为重
  • 如何获取jq中过滤数组后的第一个对象?

    给出以下 JSON tags key env value foo key env value bar 我正在尝试找出密钥所在的第一个标签env 我有这个 tags select key env 0 但这给了我一个错误Cannot index
  • TextField - 在用户开始输入文本之前显示提示

    我正在开发一个黑莓应用程序 我想在用户开始输入之前在 TextField 中显示提示文本 当用户开始输入时 它应该消失 当 TextField 中有 0 个字符时 它应该显示 有人实现了这个吗 然后请分享 protected void pa
  • 如何使用 Bicep 部署带有 .Net 堆栈的 Windows Azure 应用服务?

    我创建了一个 Bicep 来部署带有 linux windows 选择和 net 6 堆栈的服务计划和应用服务 两次部署均成功 Linux 应用程序完全正常 门户网站上存在 net 6 堆栈 然而 Windows 堆栈门户屏幕上为空 我正在
  • 如何在VM之外访问安装在Azure VM(VM角色)上的sql服务器?

    我正在处理 Windows Azure VM 角色 我在 Azure VM 上安装了 sql 服务器 现在我想从外部连接到该 sql 服务器 这可能吗 请参考此链接配置您的VM角色 您需要的一部分是打开一个防火墙端口 允许与您的虚拟机角色进
  • 如何以编程方式从draw.io PNG中提取XML数据

    长话短说 我希望能够在浏览器中使用 PHP 或 JavaScript 从 Draw io 保存的 PNG 中提取 XML 数据 我使用带有图层的draw io 图像来记录网络设备之间的物理连接 文档站点是一个内部站点 运行dokuwiki例