apache Fop 2.1 支持中文

Apache Fop可以把xsl-fo格式、xml、xslt转换pdf文件。其中关键点就是熟悉xsl-fo语法和xslt

在使用的过程,遇到了fop中文转换的问题,通过查找资料,和官方例子解决了

apache fop 2.1 mavne 仓库地址

      <dependency><groupId>org.apache.xmlgraphics</groupId><artifactId>fop</artifactId><version>2.1</version></dependency>

建议从官网下载fop,里面包含了xsl-fo的语法和例子,下面就是官网的下载

http://mirrors.hust.edu.cn/apache/xmlgraphics/fop/binaries/fop-2.1-bin.zip

官方例子

import org.apache.fop.apps.FopFactory;
import org.apache.fop.apps.Fop;
import org.apache.fop.apps.MimeConstants;

public static void convertFO2PDF()throws IOException, SAXException, ConfigurationException{

//读取字体配置文件,配置中文

FopFactory  fopFactory =Fop Factory.newInstance(new File("C:/Temp/bar.conf.xml"));

//输出pdf文件路径
OutputStream out = new BufferedOutputStream(new FileOutputStream(new File(“C:/Temp/myfile.pdf”)));

try {
// Step 3: Construct fop with desired output format
Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, out);

// Step 4: Setup JAXP using identity transformer
TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer(); // identity transformer// Step 5: Setup input and output for XSLT transformation
// Setup input stream
Source src = new StreamSource(new File("C:/Temp/myfile.fo"));// Resulting SAX events (the generated FO) must be piped through to FOP
Result res = new SAXResult(fop.getDefaultHandler());// Step 6: Start XSLT transformation and FOP processing
transformer.transform(src, res);

} finally {
//Clean-up
out.close();
}

网上下载中文字体,通过fop自带的工具类,生成xml文件,fop好像只支持ttf格式的字体,可以生成fop识别的字体文件

代码如下

String[] parameters = {
“-ttcname”,
“NotoSansCJK-Black”,
“xxx.ttf”,
xxx.xml文件}
TTFReader.main(parameters);

配置bar.conf.xml文件的内容

方正宋三简体.xml文件是我用工具生成xml
然后可以在fop中调用Barcode字体,

文件我都是用的绝对路径,官网可以用相对路径,可是我没试成功 ,希望看到这篇文章的大神,可以帮我解决下这个问题 ,其中我用的Freemarker+FOP 生成自定义pdf的内容

xsl-fo详细教程:https://www.antennahouse.com/XSLsample/FOsample.htm

最后的结果

apache Fop 2.1 支持中文相关推荐

  1. linux apache中文名称图片,Apache、NGINX支持中文URL图片、文件名的终极解决方案

    本帖最后由 vzandy 于 2013-3-15 15:40 编辑 Apache(32位):安装环境:CentOS 5.6 + Apache 2.2.15 安装结果:安装后支持"中文图片.文 ...

  2. java实现zip的压缩和解压(支持中文文件名)

    2019独角兽企业重金招聘Python工程师标准>>> 额(⊙o⊙)- package com.ly.xjgl.utils;import java.io.BufferedInputS ...

  3. PHP生成PDF完美支持中文,解决TCPDF乱码

    PHP生成PDF完美支持中文,解决TCPDF乱码 2011-09-26 09:04 418人阅读 评论(0) 收藏 举报 phpfontsheaderttfxhtml文档 PHP生成PDF完美支持中文 ...

  4. [转载]tomcat的配置文件server.xml不支持中文注释的解决办法

    原文链接:http://tjmljw.iteye.com/blog/1500370 启动tomcat失败,控制台一闪而过,打开catalina的log发现错误指向了conf/server.xml,报错 ...

  5. php下载的文件不是汉字,php实现支持中文的文件下载功能示例

    前言 本文主要给大家介绍了关于php实现支持中文的文件下载功能的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 问题说明 文件下载,通常有一种最为简单的方法,那就是将url ...

  6. Apache FOP与Eclipse和OSGi的集成

    Apache FOP是由XSL格式化对象( XSL-FO )驱动的开源打印处理器. 例如,将数据对象转换为PDF可能非常有用. 但是,将其集成到PDE中并最终以OSGi Service的形式运行并最终 ...

  7. java 生成pdf 乱码_利用java处理fop导出pdf的中文乱码问题解决方案

    本文的作用是,生成带中文的加密pdf格式的文件,防止被人修改. 在项目下建立docbook-xsl, fo-res, out, sample四个文件夹 docbook-xsl目录: 放从sourcef ...

  8. nginx中文url php,使Nginx服务器支持中文URL的相关配置详解

    关于中文URL已经是老话题了,到目前为止依然有很大一部分SEOer都会说不要使用中文URL,对搜索引擎不友好. 不过,那已经是以前的事了,谷歌很早就支持了中文URL,当时百度技术没有跟上,URL中会出 ...

  9. DirectAdmin安装mod_encoding支持中文

    以下的DirectAdmin安装mod_encoding支持中文文件名的过程,完全来自全球主机论坛Captain大神分享, 由于32位和64位系统下的操作方式略有差异,所以分开表述.首先,我们来看32 ...

  10. Flying Saucer 不支持中文,换行,粗体,CheckBox多选框的解决方案

    最近要生成打印版的保单信息,内容比较多,也比较复杂,iText直接生成的话,想必花很多时间,而且可能也很难维护,偶然看到了HTML 在 Fly Saucer的帮助下能转换成PDF,解析CSS还不错,顿 ...

最新文章

  1. oracle的安装与plsql的环境配置
  2. docker 中用docker 启动应用访问docker中的mysql
  3. groovy 兼容 java_java – eclipse插件和maven依赖项中存在的’groovy-all’jar之间的兼容性问题...
  4. oracle数据基本操作,Oracle数据库基本操作
  5. 计算机视觉三大会议——ICCV、ECCV和CVPR
  6. Linux的重定向与管道
  7. linux限制进程使用的cpu使用率
  8. Mydumper 多线程备份工具
  9. python爬取酷狗音乐付费音乐包_一篇文章教会你使用Python网络爬虫下载酷狗音乐...
  10. 计算机流体仿真,ANSYS FLUENT 计算流体力学软件
  11. v2ex站长专访 - 100offer专访Livid:不仅仅是V站站长
  12. 【机器学习7】决策树
  13. 原生js编写的todos
  14. 使用GOOGLE API做了个简繁英互译小工具
  15. android文件夹隐藏,Android – 快速获取隐藏图像和文件夹的方法
  16. 我们为什么要参与到 GSoC/GSoD 的活动中?
  17. Linux下ll命令
  18. 阿里心电图数据特征分析
  19. xmapp启动mysql出现Error: MySQL shutdown unexpectedly.
  20. Gamit Gloness 数据处理 流程

热门文章

  1. ShaderMap Pro(贴图制作转换生成工具)v1.3.1官方版
  2. 拆卸台式计算机的顺序,台式电脑拆装与清灰教程,让电脑焕然一新|Crucial(英睿达)...
  3. MyBatis Mapper.xml的choose/case标签详解
  4. 平安科技软件+金山WPS测试面试题
  5. spark的数三角形算法_腾讯开源全栈机器学习平台 Angel 3.0,支持三大类型图计算算法...
  6. 微型计算机使用的键盘shift,微型计算机使用的键盘中,shift键称为什么
  7. 中国经济刺激计划将提振大宗商品
  8. 408计算机组成原理学习:数据的表示与计算
  9. 去除桌面图标蓝底的方法
  10. BF(暴力求解算法)