ThinkingRock 是一个基于GTD 的开源软件,它的“报表”功能可以生成各种格式的报告,其中pocketmod 是我最喜欢的,不过,美中不足的是ThinkingRock的缺省配置是不支持中文报告生成的,需要进行一些配置来使它支持中文报告。
由于ThinkingRock采用Apache FOP来生成PDF文件,而内置的字体没有汉字字体,造成生成PDF报告时中文字体只能显示成#,不过好在Apache FOP支持汉字,我们只要添加汉字字体文件以及修改增加些配置即可。
步骤如下:
(1)由于ThinkingRock只内置了Courier、Helvetica和Times Roman三种字体,我们需要添加一种汉字字体,获得字体,我用的是WinXP的仿宋字体simfang.ttf。
(2) 生成TRUE TYPE(.ttf)的Font Metrics Files,在命令行状态下,进入ThinkingRock/lib目录下,使用命令“java -cp {path}\fop.jar;{path}\avalon-framework.jar;{path}\commons-logging.jar;{path}\commons-io.jar org.apache.fop.fonts.apps.TTFReader simfang.ttf simfang.xml”来生成simfang.xml,这里{path}是fop.jar,avalon- framework.jar,commons-logging.jar,commons-io.jar所在的路径,一般在ThinkingRock的 lib子目录下,输入时还要注意这几个JAR文件名字的一致性
(3)复制simfang.ttf以及simfang.xml到ThinkingRock所在目录下的resource/fop子目录里;
(4)编辑resource/fop/目录下的fop.xconf,在<fonts></fonts>段内增加几行,如下:
<font metrics-url="simfang.xml" kerning="yes" embed-url="simfang.ttf">
<font-triplet name="Simfang" style="normal" weight="normal"/>
</font>
<font metrics-url="simfang.xml" kerning="yes" embed-url="simfang.ttf">
<font-triplet name="Simfang" style="normal" weight="bold"/>
</font>
<font metrics-url="simfang.xml" kerning="yes" embed-url="simfang.ttf">
<font-triplet name="Simfang" style="italic" weight="normal"/>
</font>
至此,配置修改好了,打开ThinkingRock程序,在输出报告时字体选择“simfang”,PDF文件即显示正确的汉字。
也可以下载我配置好的文件:

点击下载此文件
好像是因为没有字体选择项,没办法
你好,请问你用的是Thinkingrock的哪一个版本?
我用的是2.2.1,使用了你的文件,其它都没有什么问题,可就是pocketmod始终无法输出中文,请问你有没有碰到这样的问题?还望赐教,谢谢!
[reply=bonashen,2009-10-20 10:49 PM]
是2.2.1,可是DO ASAP等自动产生PDF的功能,还是无法支持中文。[/reply]