使用SVG+Java实现灵活的信息显示,这是否可行?
我需要创建复杂电气系统的“模拟”显示。我可以在Visio中访问实时状态信息和系统框图
这是否可行的方法:
从系统框图创建SVG图形
使用SVG属性标记感兴趣的SVG元素
将SVG DOM加载到java中
找到标记的元件,并根据系统状态信息对其进行修改(例如,如果元件“处于报警状态”,则使其变为红色)
使用蜡染将SVG渲染为PNG以显示(使用swing组件:JSVGCanvas)
一个关键需求是在部署应用程序后修改SVG的灵活性。该应用程序能够根据SVG中的标记灵活地引入不同的“数据点”
有人成功地使用了类似的策略吗? 我应该期待什么陷阱? SVG编辑工具的发展方向是什么
# 1 楼答案
你也应该看看SVG Salamander,我自己没有用过,但有些功能是:
# 2 楼答案
我做了一些类似的健康状态显示。实际上,我对数据对象进行了注释,并让它们将其状态推送到一个哑SVG文件中,但机器应该大致相同,只是颠倒过来
好处:
陷阱:
编辑: Inkscape。还有一些其他的矢量图形编辑器可以直接或作为导出目标来处理SVG,但我所见过的这些编辑器中没有一个接近Inkscape。它不支持当前SVG规范中的所有功能,但听起来它已经足够满足大多数(如果不是全部)需求。当您需要SVG不支持的内容时,不需要手动编辑SVG文件也是一个不错的选择