java word转pdf dox4j,java将word转成pdf--之docx4j的export pdf组件

转换工具类

public class Word2PdfUtils {

/**

* docx文档转换为PDF

*

* @param pdfPath PDF文档存储路径

* @throws Exception 可能为Docx4JException, FileNotFoundException, IOException等

*/

public void convertDocxToPdf(String docxPath, String pdfPath) throws Exception {

FileOutputStream fileOutputStream = null;

try {

File file = new File(docxPath);

fileOutputStream = new FileOutputStream(new File(pdfPath));

WordprocessingMLPackage mlPackage = WordprocessingMLPackage.load(file);

setFontMapper(mlPackage);

Docx4J.toPDF(mlPackage, new FileOutputStream(new File(pdfPath)));

}catch (Exception e){

e.printStackTrace();

// log.error("docx文档转换为PDF失败");

}finally {

IOUtils.closeQuietly(fileOutputStream);

}

}

private static void setFontMapper(WordprocessingMLPackage mlPackage) throws Exception {

Mapper fontMapper = new IdentityPlusMapper();

fontMapper.put("隶书", PhysicalFonts.get("LiSu"));

fontMapper.put("宋体", PhysicalFonts.get("SimSun"));

fontMapper.put("微软雅黑", PhysicalFonts.get("Microsoft Yahei"));

fontMapper.put("黑体", PhysicalFonts.get("SimHei"));

fontMapper.put("楷体", PhysicalFonts.get("KaiTi"));

fontMapper.put("新宋体", PhysicalFonts.get("NSimSun"));

fontMapper.put("华文行楷", PhysicalFonts.get("STXingkai"));

fontMapper.put("华文仿宋", PhysicalFonts.get("STFangsong"));

fontMapper.put("宋体扩展", PhysicalFonts.get("simsun-extB"));

fontMapper.put("仿宋", PhysicalFonts.get("FangSong"));

fontMapper.put("仿宋_GB2312", PhysicalFonts.get("FangSong_GB2312"));

fontMapper.put("幼圆", PhysicalFonts.get("YouYuan"));

fontMapper.put("华文宋体", PhysicalFonts.get("STSong"));

fontMapper.put("华文中宋", PhysicalFonts.get("STZhongsong"));

mlPackage.setFontMapper(fontMapper);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值