推荐这几个流程图设计器web开发方案
转发原文地址:https://segmentfault.com/a/1190000039701868
前沿:一个流程图设计器需要什么?一个是图的绘制能力、基于svg或者canvas来绘制各种形状的节点(矩形、圆形、多边形)以及线,一个是图与图之间的交互包括拖拽,节点之间的连线等,最后是画布面板的便捷性,其中包括:比如ps中的网格功能、对其线、步骤回撤、画布的可伸缩、快捷按钮等等,那前端社区有啥开源解决方案,方便我们快速开发一个属于自己的流程图设计器?
1.绘图能力
提到绘图能力,web主要有两种实现方式:Canvas及Svg,我们看看这两种有什么差异
Canvas | SVG | |
---|---|---|
操作对象 | 基于像素(动态点阵图) | 基于图形元素 |
驱动 | 只能脚本驱动 | 支持脚步以及CSS |
事件交互 | 用户交互到像素点(x,y) | 用户交互到图形元素 |
性能 | 适合小面积、大数量应用场景 | 适合大面积,小数量应用面积 |
基于流程图的场景:节点不会太多,加上节点都是静态图,没有太多动态渲染,那svg可能更适合,而且svg具备高保本,但是如果在大规模数据或图元的情况下请谨慎选择,毕竟性能会差些