Activity 5.22生成工作流图片时, 不显示文字
By:Roy.LiuLast updated:2018-06-24
今天接到一个朋友的问题,他反馈在他开发的Activity 工作流, 在生成图片时,任务节点上并没有显示任务节点名称。当时我也觉得很奇怪,不过,再仔细问了他情况,在Windows 下是正常的,但部署到linux 下就不正常了。另外我还特地问了下是不是英文名称, 因为按照经验,中文通常是乱码,但如果英文也不显示的话,我就基本猜测到问题所在了。初步猜测也就是 window, linux 字体问题。
在Windows 下默认为:Arial 字体, 但在 linux 下就不是的。另外用 processDiagramGenerator.generatorDiagram() 这个方法生成图片时是可以指定字体的。
你看到的里面是宋体,但这里的字体是可以改的。Activity 默认的是 Arial, 但是在linux 环境下是没有的,要么安装这个字体,要么修改字体名称为: AR PL UMing HK .
那么解决方案就有了:
1. 在 linux 下安装相应的字体。
2. 在程序中判断是windows还是linux 环境,分别用不同的字体。
在Windows 下默认为:Arial 字体, 但在 linux 下就不是的。另外用 processDiagramGenerator.generatorDiagram() 这个方法生成图片时是可以指定字体的。
InputStream imageStream = diagramGenerator.generateDiagram(bpmnModel, "png", highLightedActivitis,highLightedFlows,"宋体","宋体",null,1.0); // 宋体在linux 环境下也是没有的,需要自己安装
你看到的里面是宋体,但这里的字体是可以改的。Activity 默认的是 Arial, 但是在linux 环境下是没有的,要么安装这个字体,要么修改字体名称为: AR PL UMing HK .
那么解决方案就有了:
1. 在 linux 下安装相应的字体。
2. 在程序中判断是windows还是linux 环境,分别用不同的字体。
From:一号门
Previous:mybatis动态更新xml文件后热部署,不重启应用的方法
Next:关于持续集成CI的建议记录
COMMENTS