java 使用itextpdf工具实现HTML转PDF文件

本文转载https://my.oschina.net/960823/blog/1588166内容
demo

  • maven依赖包
        <dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.5.9</version></dependency><dependency><groupId>com.itextpdf.tool</groupId><artifactId>xmlworker</artifactId><version>5.5.9</version></dependency><dependency><groupId>com.itextpdf</groupId><artifactId>itext-asian</artifactId><version>5.2.0</version></dependency><dependency><groupId>org.xhtmlrenderer</groupId><artifactId>flying-saucer-pdf-itext5</artifactId><version>9.0.3</version></dependency>
  • java 代码
package com.my.utils;import com.itextpdf.text.pdf.BaseFont;
import org.xhtmlrenderer.pdf.ITextFontResolver;
import org.xhtmlrenderer.pdf.ITextRenderer;import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;/**
* Utils - html转换成PDF
*/
public class HtmlToPdfUtils {private HtmlToPdfUtils() {}/*** html转换成PDF* @param htmlFile html文件* @param pdfPath  pdf路径* @throws Exception 异常*/public static void htmlToPdf(File htmlFile, String pdfPath) throws Exception {OutputStream os = new FileOutputStream(pdfPath);ITextRenderer iTextRenderer = new ITextRenderer();iTextRenderer.setDocument(htmlFile);//解决中文编码ITextFontResolver fontResolver = iTextRenderer.getFontResolver();if ("linux".equals(getCurrentOperationSystem())) {fontResolver.addFont("/usr/share/fonts/chiness/simsun.ttc", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);} else {fontResolver.addFont("c:/Windows/Fonts/simsun.ttc", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);}iTextRenderer.layout();iTextRenderer.createPDF(os);os.flush();os.close();}private static String getCurrentOperationSystem() {String os = System.getProperty("os.name").toLowerCase();return os;}public static void main(String[] args){File file = new File("E:\\test.html");String pdfPath = "E:\\testPdf.pdf";try{htmlToPdf(file, pdfPath);}catch (Exception e){e.printStackTrace();}}
}

java 使用itextpdf工具实现HTML转PDF文件相关推荐

  1. Java 使用iText7生成带页码的PDF文件(同时生成目录,但是不会合并两个PDF)

    一.效果图 1.带页码效果 2.目录效果 前言:Java 使用iText7生成带页码的PDF文件,同时生成目录PDF,但限于水平,暂时还在摸索合并两个PDF.不过看了一下,iText好像有生成目录的代 ...

  2. java实现通过url实现浏览器下载pdf文件

    java实现通过url实现浏览器下载pdf文件 // 下载pdf文件工具类 public static void toDownload(HttpServletRequest request, Http ...

  3. Java实现多张图片合并成一份PDF文件

    Java实现多张图片合并成一份PDF文件,一行两列展示 引入依赖包 <dependency><groupId>com.lowagie</groupId><ar ...

  4. java图片转换pdf_Java实现图片转换PDF文件的示例代码

    最近因为一些事情,需要将一张简单的图片转换为PDF的文件格式,在网上找了一些工具,但是这些工具不是需要注册账号,就是需要下载软件. 而对于只是转换一张图片的情况下,这些操作显然是非常繁琐的,所以作者就 ...

  5. java判断是否安装了pdf_Java检查PDF文件是否损坏

    如果在系统中有比较多的PDF文件,但是的pdf文件可能被损坏了,我们可以利用itext 用来检测 首先下载itext包 http://sourceforge.net/projects/itext/fi ...

  6. java实现多张条码转成pdf文件

    目录 需求 管理后台通过查询并生成多张条码并一起打印出来 思路 思路一 思路二 代码编写 maven pom文件 方法一 步骤一:创建barcode 条码文件 步骤二:将创建的barcode 条码文件 ...

  7. java中freemarker使用ftl模版生成PDF文件

    说明 调用方法生成PDF时,使用的ftl模版,以及字体都是从jar中读取的,无需担心多节点部署 引用jar <dependency><groupId>org.freemarke ...

  8. itextpdf将图片转成pdf文件及pdfbox将多张pdf合成一张

    记录只为自己以后方便查找. 转载参考  pdf合并:http://www.cnblogs.com/MoreThinking/archive/2017/07/27/7245433.html 图片转pdf ...

  9. java+icepdf+下载_Java使用icepdf将pdf文件按页转成图片

    本文实例为大家分享了Java使用icepdf将pdf文件按页转成图片的具体代码,供大家参考,具体内容如下 Maven icepdf包,这里过滤掉jai-core org.icepdf.os icepd ...

最新文章

  1. 求教大牛!关于后缀树
  2. Mysql数据库查询语法详解
  3. java找哪一天是星期几_七夕节是几月几日农历时间 2019年七夕情人节哪一天星期几...
  4. 表达式封装和模型驱动封装的区别
  5. Docker配置CTF中的靶机环境
  6. [开源] FreeSql.AdminLTE.Tools 根据实体类生成后台管理代码
  7. java语句类型_01-java数据类型与语句
  8. json字符串、json对象、数组之间的转换
  9. python处理xlsx[联合openpyxl与pandas]
  10. 计算机无法检测电池损耗怎么办,笔记本电脑电池损耗怎么修复 笔记本电脑电池损耗修复方法...
  11. R语言加载UCI糖尿病数据集、并启动Rattle GUI、调用party包中的ctree函数构建条件推理树模型、Rattle混淆矩阵、使用R自定义编写函数通过混淆矩阵计算特异度、敏感度、PPV、NPV
  12. 番外2. OpenCV 中摄像头捕获与视频处理与常见问题解决方案
  13. channel is not opened
  14. 如何将原来Eclipse的一个工作空间设置好的界面复制到另外一个Eclipse里面
  15. java面试题汇总 java面试题集合 - 网络收集
  16. 后台进程很少,CPU内存却占用过高!
  17. 垃圾分类的正确姿势?用 OpenCV 人工智能图像识别技术来进行
  18. p5.js创意绘图(2)自画像
  19. c语言 快速筛质数,快速筛素数(埃式筛+线性筛+Miller_Rabin算法)
  20. 基于matlab的史密斯圆图演示仿真图

热门文章

  1. 力扣977 双指针解决
  2. django的admin站点生成超级用户出错
  3. 《美味在哪》场景绘画教程
  4. 什么是亚稳态,如何消除?
  5. 微信公众号录音功能及录音文件下载到自己服务器 一
  6. ORA-01139:
  7. Win10怎么安装旧版组件DirectPlay?
  8. 混合动作空间(Dis_Conti_Hybrid)
  9. Mac版docker安装
  10. 复数和四元数的几何意义