目前(2011年8月)JPivot的最新版本1.8.0,在PDF格式输出的表格中还不支持中文字体,需要手工添加中文字库。
1. 查看JPivot源码(1.6.0以上)com.tonbeller.jpivot.print.PrintServlet
有一个init()方法
public void init(ServletConfig config) throws ServletException {
super.init(config);
try {
// set base FOP FONT directory. The font config stuff will be looked for here
Configuration.put("fontBaseDir", config.getServletContext().getRealPath("/WEB-INF/jpivot/print/"));
// get the physical path for the config file
String fopConfigPath = config.getServletContext().getRealPath("/WEB-INF/jpivot/print/userconfig.xml");
// load the user proerties, contining the CustomFont font.
new Options(new File(fopConfigPath));
} catch (FOPException e) {
e.printStackTrace();
logger.info("FOP user config file not loaded");
} catch (Exception e) {
e.printStackTrace();
logger.info("FOP user config file not loaded");
}
}
可以看到当打印PDF文档时,系统会尝试去fopConfigPath下加载自定义的font配置文件userconfig.xml
2. OK,我们现在就去添加这么一个FONT configuration,内容为JPivot中定义的Italic/ normal 与中文字体SimHei(黑体)映射关系:
【userconfig.xml】
<configuration>
<fonts>
<font metrics-file="simhei.xml" kerning="yes" embed-file="simhei.ttf">
<font-triplet name="SimHei" style="normal" weight="normal"/>
<font-triplet name="SimHei" style="normal" weight="bold"/>
<font-triplet name="SimHei" style="italic" weight="normal"/>
<font-triplet name="SimHei" style="italic" weight="bold"/>
</font>
</fonts>
</configuration>
3. 使用Apache FOP(lastest stable version is 1.0.0) 转换windows系统自带的字体库simhei.ttf为xml文件(simhei.xml)
具体方法:
java org.apache.fop.fonts.apps.TTFReader
-ttcname SimHei C:\WINDOWS\Fonts\simhei.ttf simhei.xml
运行成功后生成simhei.xml
将simhei.tff和simhei.xml复制到/WEB-INF/jpivot/print目录下。
4. 编辑/WEB-INF/jpivot/table/fomdxtable.xsl
将SimHei添加为所有font-family的首选值,OK,至此问题搞定!
致谢 参考文档:http://www.iteye.com/topic/80801
分享到:
相关推荐
Jpivot 1.8.0是该软件的一个版本,可能包含了一些改进和新特性,比如性能优化、错误修复或新的API支持。 在Jpivot 1.8.0这个压缩包中,我们主要关注以下几个方面的知识点: 1. **多维数据模型**:Jpivot支持MDX...
JPivot是一个JSP 自定制的标签库,可以绘制一个OLAP表格和图表。用户可以执行典型的OLAP导航,如下钻,切片和方块。它使用Mondrian 作为其OLAP服务器。它使用WCF (Web Component Framework) ,基于XML/XSLT来渲染Web...
如何将Mondrian+jpivot用于web项目
JPivot是一款基于Mondrian的在线分析处理(OLAP)前端展示工具,专门解决OLAP的展示层问题。它提供了一系列的JSP标签,使得开发者能够在网页中方便地构建和控制OLAP应用。下面将详细阐述各个主要标签的功能和用法。 ...
开发者可以使用JPivot提供的API来定义表格的布局,包括选择要显示的维度和度量,设定行列的划分方式,以及如何聚合数据。此外,JPivot还支持自定义函数和过滤条件,以满足更复杂的数据分析需求。 在用户交互方面,...
1.jpivot-1.8.0.zip:内有jpivot.war,mondrian-src.zip, 2.wcf-1.7.0.zip,与jpivot-1.8匹配的wcf库,内有wcf.war,wcf-src.zip 可以发布war应用程序,并结合src源代码,研究下mondrian+jpivot实现框架
jpivot-1.8.jar作为jpivot的主要组件,为Java开发者提供了一种高效的数据分析解决方案。它简化了数据透视和OLAP操作,使得企业能够快速响应市场变化,做出基于数据的明智决策。同时,其强大的可扩展性和良好的集成性...
这份文档可能包含了作者在学习和实践JPivot过程中的经验总结,包括遇到的问题、解决方案、最佳实践以及优化技巧。这将为初学者提供宝贵的参考,帮助他们避免常见的陷阱,更快地掌握JPivot的使用。 总的来说,这个...
jpivot1.8帮助文档,为方便大家携带特转换为chm格式的
jpivot支持两种方式来连接数据库: 1. **直接使用JDBC**:这种方式通过提供数据库驱动和URL等信息直接建立连接。 ```xml jdbcDriver="oracle.jdbc.driver.OracleDriver" jdbcUrl="jdbc:oracle:thin:ngykt/...
当用户尝试使用Mondrain将报表导出为PDF时,如果处理不当,可能会出现字符显示不正常,也就是我们常说的“乱码”。 乱码问题通常由以下几个因素引起: 1. **字符编码不一致**:PDF文件默认使用的是Unicode编码...
《jpivot.zip下载包》是针对Java开源项目Jpivot的压缩包资源,它包含了Jpivot的核心组件和相关配置文件,便于用户快速搭建和使用Jpivot的功能。Jpivot是一款基于Java Swing的多维数据分析和报表展示工具,常用于企业...
JPivot 是一套基于 Mondrian 的 OLAP 前端展现工具,它提供了一套标签库来解决的 OLAP 的展现层问题。 在一个 JSP 页面当中,如果要使用 JPivot 标签库,除了要配置相关的配置文件外,我们需要在 JSP 头的位置声明...
jpivot汇总.doc
Jpivot是一个基于Java的开源库,它提供了灵活的数据透视表和图表功能,支持用户通过MDX查询与多维数据集进行交互。在Jpivot中,`clickable`标签允许用户为特定的单元格或区域设置点击事件,通常用于实现数据钻取或...
* 支持多种文件输出格式 * 可以在 Java 环境下使用 * 广泛应用于商业BI 解决方案 二、Pentaho Pentaho 是一个以工作流为核心的、强调面向解决方案而非工具组件的 BI 套件,整合了多个开源项目,目标是和商业 BI 相...
5. `jsexceptions_messages.properties` 和 `jsexceptions_messages_zh_CN.properties`:这些文件包含了JasperServer在遇到异常时显示的错误消息,中文版本有助于调试和解决问题。 为了使用这些中文翻译,你需要先...