有时候需要把doc文件转成PDF文件,比如需要在网页上预览doc文件。那么可以使用xdocreport这个库。

xdocreport是基于itext的,使用非常简单只需要:

XWPFDocument doc = null;

try {

doc = new XWPFDocument(is);

PdfOptions options = PdfOptions.create();

//中文字体处理

options.fontProvider(new IFontProvider() {

public Font getFont(String familyName, String encoding, float size, int style, Color color) {

try {

BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);

Font fontChinese = new Font(bfChinese, size, style, color);

if (familyName != null)

fontChinese.setFamily(familyName);

return fontChinese;

} catch (Exception e) {

e.printStackTrace();

return null;

}

}

});

PdfConverter.getInstance().convert(doc, os, options);

值得注意的是项目中需要引入和xdocreport依赖的itext版本一致的itext-Asian.jar 否则会出现找不到中文字体的错误。

doc转pdf java不失真,java doc转PDF相关推荐

  1. doc转pdf java不失真_java使用Aspose实现 word文档转pdf文件高效不失真

    java使用Aspose word文档转pdf功能实现 主要步骤 使用Aspose进行文档转换,首先引入相应的jar包到系统环境 项目resource下导入license.xml文件 使用Aspose ...

  2. java 实现wps、doc...格式转 pdf 或html,wps转doc,等

    一:需求 客户需要,要实现一个wps.doc.docx(主要就这几种格式),转换为pdf或者是html,上代码! 二:pom引入 <dependencies> <dependency ...

  3. java实验四结果,java实验四异常处理.doc

    java实验四异常处理.doc 实验四异常处理一.实验目的1.掌握异常的概念和Java异常处理机制.2.掌握异常的定义.抛出和捕捉处理.二.实验内容与要求1.仔细读下面的JAVA语言源程序,自己给出程 ...

  4. java人学生大学生类的继承,java实验报告7.doc

    java实验报告7.doc 实 验 报 告( 2014 / 2015学年 第2学期)课程名称JAVA程序设计实验名称 类的继承实验时间2015年4月30日指导单位计算机学院/软件学院软件工程系指导教师 ...

  5. Java使用POI将doc文档转为Html

    Java使用POI将doc文档转为Html 前提 几个使用到的类 几个方法的理解 converter.setPicturesManager(xxxx) converter.processDocumen ...

  6. java生成自己的Doc文档

    java生成自己的Doc文档 第一种通过命令行来生成 简要代码如下: package com.can.www;/*** @author liu* @version 1.0* @since 1.8*/ ...

  7. JAVA 根据模板生成doc文件

    JAVA 根据模板生成doc文件 需求 根据模板生成对应的doc文档,文档内容动态填充. 实现 1.将doc模板转换为ftl文件,放入项目中 1.1 首先将模板另存为xml文件 1.2 更改xml文件 ...

  8. 福州大学java期末试卷,Java Web认证题.doc

    Java Web认证题.doc 福州大学工程技术学院福州大学工程技术学院 04 级级 Web 应用程序设计应用程序设计Java 扬帆把舵,奋勇拼搏,看我扬帆把舵,奋勇拼搏,看我Java,英姿焕爽,英姿 ...

  9. java象棋实验报告_中国象棋java程序设计实验报告.doc

    中国象棋java程序设计实验报告.doc 东北大学秦皇岛分校 信息与计算科学系 Java 程序设计实验报告 专业名称 信息与计算科学 班级学号 7080206 学生姓名 彭 军 指导教师 王薇 完成时 ...

最新文章

  1. linux进程调度浅析
  2. mvp架构 java_GitHub - AnthonyCoder/MvpForJava: 一个可直接快速引入的 Java 版本的模块化 MVP 框架...
  3. fzu 2139 久违的月赛之二
  4. Treasure Exploration
  5. Valve开发校准软件,LCD屏也能与高端VR头显适配了
  6. 比较abc大小的java_比较abc大小java
  7. 【Excel】如何用SUMIF实现SUMIFS的功能
  8. Python pickle模块学习(超级详细)
  9. 管家婆 打开经营历程 Date exceeds maximum of 19-12-31报错解决
  10. 计算机病毒如何防范英语作文,英语作文_妙招大看台:如何避免电脑中病毒_沪江英语...
  11. 使用Tor绕过防火墙进行远程匿名访问
  12. JavaWeb实训项目案例开发之在线图书网站开发【非常适合初学者】
  13. 拓展:将simulink的仿真图_在matlab画出_复制到word
  14. WPS无法关闭excel表格,提示:关闭窗口前请先退出编辑单元格内容或格式
  15. 嵌入式计算机系统简述,嵌入式系统简述
  16. junit-vintage-engine和junit-jupiter-engine之间的区别?
  17. 关于在word里的表格里面打公式出现换行问题
  18. 11款Windows必装软件,每一款都非常好用
  19. 轻松解决keil4跟keil5在同一个系统下不能共存的问题
  20. 【PTA】C语言 7-3 大炮打蚊子

热门文章

  1. “你们是我带过的最差的一届”,从基因组的持续衰败来看,这可能是真的
  2. java o2o_全渠道java b2b b2c o2o平台
  3. GTX TITANX 显卡下显卡驱动和cuda的安装血泪史
  4. 记录一次微信开发者工具打不开的坑
  5. 基于FPGA的多路彩灯设计及代码
  6. android 重新编译内核,[原创]华为内核重新编译踩坑记
  7. 学理财应该从哪些学起_学理财入门知识理财的知识有哪些
  8. 智能灌溉系统数字化浇水
  9. ​真的存在可以检测万物的模型吗?联汇科技提出了一种有趣的解决方案
  10. 脉冲神经网络的五脏六腑