activiti流程图设计

2023-03-22 10:57:30 来源:网络

activiti流程图设计

activiti6.0源码剖析之使用图片生成器设置流程图高亮显示

在一个流程流转的过程中,可能已经经过多个节点,或者正在停留在某个任务节点。那么我们如何直观的显示当前流程已经完成了哪些节点,或者此时当前流程流转到了哪里?那么这里就用到了activiti提供的图片生成器ProcessDiagramGenerator。使用它可以对流程中的节点或者连线等进行高亮标识(也就是用显著的颜色圈起来)后生成图片的输入流,当然也可以对流程图中各个节点的图标,字体之类进行设置。

如果默认的图片生成器满足不了我们的业务需求,比如我要求用户任务被标注高亮的时候颜色使用蓝色或者其他颜色,我想要图片中显示的字体是黑体、楷体?那么如果是这样应该怎么实现呢?

自定义类继承DefaultProcessDiagramCanvas,这里 业务需求是连线标注为蓝色 所以需要重写drawConnection方法, 只需要修改 当highLighted为true时,调用this.g.setPaint()参数为连线的颜色。

2. 扩展DefaultProcessDiagramGenerator,当initProcessDiagramCanvas时候,使用自定义的ProcessDiagramCanvas, 只需要修改initProcessDiagramCanvas方法中最后一行为创建我们自定义的initProcessDiagramCanvas

注意: 这里必须同时定义generateProcessDiagram方法,实现与DefaultProcessDiagramGenerator中的实现相同。如果不定义,程序依然会调用DefaultProcessDiagramGenerator中的generateProcessDiagram方法生成默认的DefaultProcessDiagramCanvas

3. 使用自定义图片生成器进行流程运转图的生成

- 生成结果

免责声明:内容来自网络,若侵犯您的权利,请在一个月内通知我们,会及时删除 @轻流