首页 > 其他 > 详细

activiti 5.17 流程图中文乱码问题

时间:2015-09-22 21:59:48      阅读:2150      评论:0      收藏:0      [点我收藏+]

1. 流程图中任务中的中文乱码显示问题。

 
解决方法:设置processEngineConfiguration中的两个字体属性,例如:
<bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration">
     。。。
     <!-- 生成流程图的字体 -->

     <property name="activityFontName" value="宋体"/>
     <property name="labelFontName" value="宋体"/>

</bean>
 
2. 流程图中TextAnnotation中的中文乱码显示问题。
 
此乱码产生的原因是,负责画流程图的类DefaultProcessDiagramCanvas 定义注解的字体了属性(为Arial):
protected static Font ANNOTATION_FONT = new Font("Arial", Font.PLAIN, FONT_SIZE);
然后再画流程图时,不知什么原因,在外部配置了的字体并没有使用,在代码中硬编码设置textAnnotation 字体为ANNOTATION_FONT ,导致出现中文乱码,外部配置也没用。见下面代码:
       public void drawTextAnnotation(String text, GraphicInfo graphicInfo) {
         int x = (int) graphicInfo.getX();
         int y = (int) graphicInfo.getY();
         int width = (int) graphicInfo.getWidth();
         int height = (int) graphicInfo.getHeight();
    
       Font originalFont = g.getFont();
       Stroke originalStroke = g.getStroke();
       
       g.setFont(ANNOTATION_FONT);

       ...
解决方法:重新编译此模块,将默认字体改成宋体,或者注释掉设置字体代码。是否可以自定义DefaultProcessDiagramCanvas,通过扩展的方式来解决,目前我没有发现。

activiti 5.17 流程图中文乱码问题

原文:http://www.cnblogs.com/yanzhenxing/p/4830569.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!