工作流引擎activiti5.16发布了,新版中将绘制流程图的部分独立了出来,在将其引入工程后出现了一些问题,发出来,大家参考,希望下一个版本的activiti能解决这些问题。
1,中文乱码问题
原有工程用的是
ProcessDiagramGenerator.generatePngDiagram(bpmnModel);
来直接输出png格式的InputStream,不用设置其他参数了,中文在启动时定义到了spring配置文件里
<!-- 生成流程图的字体 -->
<property name="activityFontName" value="宋体"/>
<property name="labelFontName" value="宋体"/>
可新版activit5.16这样不行了,中文乱码,研究了一下源码,发现居然不设置参数,直接调用png方法,字体就是默认的Arial字体,郁闷了半天,不想改原始程序,又找到个稍微麻烦点的方法
processEngine.getProcessEngineConfiguration().getProcessDiagramGenerator()
.generateDiagram(bpmnModel, "png",
processEngine.getProcessEngineConfiguration().getActivityFontName(),
processEngine.getProcessEngineConfiguration().getLabelFontName(),
processEngine.getProcessEngineConfiguration().getClassLoader(),1.0);
这个里面主要是这两个参数起了作用
processEngine.getProcessEngineConfiguration().getActivityFontName()
processEngine.getProcessEngineConfiguration().getLabelFontName()
从启动的配置文件读取设定的字体,方法一下变的这么长,算不算是倒退?
2,个别图标出不来
原图是
3,图中的连接线名称显示错位(昨天发布的最新版5.16.3已经将这个问题解决了,不再错位)
原图是
所有的都会偏移,试过了多种输出,都不行,不知大家有什么办法没
4,超大流程图显示不完整
用的是缩略图,原图太大,这是原始流程
而生成的流程图就只有一半了,而且连接线名称全部错位,惨不忍睹啊。。。。。。
以上就是新版activiti5.16所遇到的绘图各种问题,总体来说,5.16版的绘图还有各种各样的问题,希望可以在下一个版本得到解决。