问题标签 [mxgraph]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 在不使用服务器的情况下保存和加载 mxGraph 文件
我想创建一个无需使用服务器即可保存和加载(XML 格式)的编辑器。我看到了grapheditor的例子,但似乎代码需要一个服务器才能保存。
如何在不使用服务器的情况下在 mxGraph 中保存/加载,即通过浏览器下载和上传文件。谢谢你。
javascript - SVG 形状而不是模板
我是 mxGraph 世界的新手,并试图找出如何在 JS 中将 SVG 符号与 mxGraph 一起使用。我有许多 SVG 文件,我想将它们与 mxGraph 一起使用,而不是将它们中的每一个都转换为模板。有没有办法做到这一点?我曾尝试使用 SVG 符号作为形状中的图像,但是我遇到了连接没有完全进入符号的问题。
有什么建议么?提前谢谢。
javascript - mxGraph 可以使用 UUID 将 id 生成的默认值替换为整数类型吗?
mxCell 的 id 默认使用整数类型,每次递增 1,但我们希望将其替换为 UUID 类型。覆盖默认功能的更好方法是什么?谢谢
上面的方法我已经改了,但是不确定是否会影响mxGraph中的其他模块。
javascript - 更改 mxgraph 单元格/顶点上的标签
我创建了一个界面,包括 mxgraph (javascript),它允许用户单击单元格并以与图形分开的常规文本输入形式编辑单元格的标签。我想在用户保存表单(ajax 提交)后更改单元格的标签,而无需重新加载图表。
我真的不需要对单元格/顶点标签做任何花哨的事情,但我确实需要能够更改它的文本。如果可以避免的话,我不需要 HTML 标签。而且,我还没有在 API 中找到类似“setLabel”方法的东西。
听起来很简单。我错过了什么?
谢谢
jquery - mxGraph 自定义用户对象,带有 xml 子元素读写
在 mxGraph 教程页面中,可以使用 graph.insertVertex() 方法对自定义用户对象进行参数化。
自定义用户对象采用工作流编辑器示例中包含的 wfeditor-commons.xml 中的模板定义的 xml 格式。
但是,通过 HTMLCollection 构建子元素的更好方法是什么?下面的 xml 是我自己定义的模板,如果某些值已更改,我需要维护 Description 和 ActivityType 子元素。
要通过以下代码访问子 xml 元素 Description 和 ActivityType 节点:
我不确定这是否是通过 HTMLCollection 实现自定义用户对象读写的有效方法。
顺便说一句,如果自定义用户对象的子元素已更改,则需要保存。如何设置节点属性和文本内容值?更改这些值后,还需要调用 set value 方法来刷新用户对象。谢谢
file - 通过 urlParam 在 MxGraph 中打开本地文件
如何在通过 urlParam 传递名称的 grapheditor 中打开本地文件?我尝试在 index.html 中使用此代码,但它不起作用。
提前致谢。
mxgraph - DrawIo mxGraph:使用 XmlToSvg 会丢失形状信息
我正在尝试使用 Java 将 XML 转换为 SVG,但看起来形状信息在此过程中丢失了。
给定一个简单的draw.io
图表:
运行XmlToSvg.java后,我得到:
我将它保存为未压缩的 XML。我正在使用mxgraph-all.jar
来自mxGraph 回购
您是否知道是否有隐藏设置可启用以保留形状和颜色?
javascript - mxGraph 编辑器 xml 指数
我正在尝试使用 mxGraph 编辑器。我阅读了这些示例并尝试理解它。但我不能。我不喜欢使用 xml。但是这些示例使用 XML。我只喜欢使用 Js 编程。在教程页面的输入/输出部分,它们描述了 XML 从对象构建的方式。但是,从diagrameditor.xml
文件中,他们有以下代码:
我假设对象是:
但是,我从 mxEditor API 搜索,我找不到mxEditor.ui
或mxEditor.graph.element
为了设置编辑器图形容器,我使用了以下代码:
editor.graph.init(document.getElementById("xml"));
但是,我在示例中没有看到此代码。也是正确的吗?
如何以编程方式使用 mxEditor?或者是关于 mxEditor 的一个很好的参考文档?(不是来自 Github 的 API 规范或 mxGraph 教程页面)
javascript - mxgraph 中的自动泳道布局
mxgraph 中有泳道示例,但它不是自动的。所以我以graphlayout的例子为基础,做了一些改动:
- 始终使用 mxSwimlaneLayout
- 从泳道示例中获取泳道单元样式
- 创建了两条泳道
- 将它们用作顶点的父级
以下是我创建泳道的方法:
并执行布局:
这是测试页。
现在,这里有两个问题:
- 节点未放置在通道内;似乎根本不尊重车道。如何进行布局以将节点放置在适当的通道内?像父母一样划清界限似乎是不够的。
- 我以为 WEST 会在左边建立图表,但事实恰恰相反...... NORTH 也会下降......为什么?
javascript - Javascript:访问嵌套方法
我知道以前已经回答过此类问题,但我找不到可以将我的代码与之关联的解决方案。
我目前正在使用 mxGraph 库来实现附加到形状的下拉菜单,但我想扩展该功能以便能够根据使用的形状动态生成菜单项。
我将如何使用上面 IF 语句中的 access addMenuItem 根据我传递给它的参数创建一个菜单项?(我必须在图形下包含该函数...factoryMethod 函数,因为它从菜单中继承了 .addItem )