ITextRenderer将多个页面导在一个pdf中

  • 需求
  • 解决
  • 使用
  • 说明

需求

需要将多个html页面导出合并到同一个pdf文件中。


解决

在网上百度查询资料,找到代码

renderer.setDocumentFromString(htmlStrList.get(i));
renderer.layout();
renderer.writeNextDocument(i);

使用

//加载中文字体
ITextRenderer renderer = new ITextRenderer();
ITextFontResolver fontResolver = renderer.getFontResolver();
//simsun.ttc: 如果页面中包含中文,必须导入此字体文件,否则中文字体不显示
fontResolver.addFont(reportPath + FONT_PATH, BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
renderer.setDocumentFromString(htmlStrList.get(0));
renderer.layout();
OutputStream os = new FileOutputStream(savePath + filePath);
renderer.createPDF(os,false);
for (int i = 1; i < htmlStrList.size(); i++) {renderer.setDocumentFromString(htmlStrList.get(i));renderer.layout();renderer.writeNextDocument(i);
}
renderer.finishPDF();

说明

  1. htmlStrList是导出的网页页面内容字符串列表,一个网页内容是其中的一项。页面内容使用Htmlutil导出
  2. renderer.createPDF(os,false);false代表finish-false,默认是true,如果不输入,后面renderer.writeNextDocument(i);会报错:“document没打开”。
  3. renderer.createPDF(os,false);必须在renderer.writeNextDocument(i);前面,不然会空指针错误。我一开始就是放前面,导致报错。
          点进入查看源码,发现writeNextDocument()方法中有一个变量_writer,这个变量是在createPDF()中实例化的。

参考:
https://www.codota.com/code/java/classes/org.xhtmlrenderer.pdf.ITextRenderer

ITextRenderer将多个页面导在一个pdf中相关推荐

  1. 怎么提取pdf中的某一页?试试这三种提取办法

    怎么提取pdf中的某一页?在我们日常办公和学习中,经常会遇到需要提取 PDF 文件中的某一页的情况.比如需要转发文件中的某一页给同事或朋友,或者需要将文件中的某一页用作资料整理.此时,提取 PDF 中 ...

  2. 网页html转为pdf,html页面转换成PDF文件

    html页面转换成PDF文件 发布时间:2020-06-14 05:24:50 来源:51CTO 阅读:523 作者:robinmars package pdftest; import java.io ...

  3. html页面转成PDF,PDF下载

    先说要完成的功能:把填写好的信息转换成PDF文件,并且下载到本地,类似在智联上下载自己的简历,不过下载下来是PDF文件. 参考了网上的多篇博客,发现有两种方法,但两种方法都各有利弊.下边介绍这两种方法 ...

  4. Microsoft.Office.Interop.Excel的用法以及利用Microsoft.Office.Interop.Excel将web页面转成PDF

    1.常见用法 using Microsoft.Office.Interop.Excel; 1)新建一个ExcelApplicationClass ExcelApp = New ApplicationC ...

  5. js将页面转成PDF文档

    <!DOCTYPE html> <html><head><title>jsPDF插件</title><meta http-equiv= ...

  6. jquery将html转为pdf文件,HTML+CSS入门 jsPDF插件实现将HTML页面转换成PDF详解

    本篇教程介绍了HTML+CSS入门 jsPDF插件实现将HTML页面转换成PDF详解,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS入门. < 1.目的:在前段是 jQuery库 或 ...

  7. echart转换成pdf js_【jsPDF】jsPDF插件实现将html页面转换成PDF,并下载,支持分页...

    1.目的:在前段是 jQuery库 或者 VUE库 或者两者混合库,将html 页面和数据 转换成PDF格式并下载,支持分页 1.项目背景: 对客户报修记录进行分类统计,并生成各种饼图.柱状图.线性图 ...

  8. 考研题库小程序中如何实现打开考研思维导图pdf

    考研题库小程序中如何实现打开考研思维导图pdf 需求:遇到这么一个需求,考研题库小程序中,为解决分享学习资料的痛点,需要做一个资料库,所以就要实现打开考研资料思维导图pdf的功能. 问题:微信小程序中 ...

  9. R语言将多张可视化结果图像保存到PDF中实战:多图保存到同一PDF页、将多个绘图保存到PDF格式的不同页面

    R语言将多张可视化结果图像保存到PDF中实战:多图保存到同一PDF页.将多个绘图保存到PDF格式的不同页面 目录 R语言将多张可视化结果图像保存到PDF中实战:多图保存到同一PDF页.将多个绘图保存到 ...

最新文章

  1. java 定义一个未知长度数组
  2. linux命令上常用命令
  3. 【涛声依旧】华为的“大服务”
  4. 笔记-项目风险管理-风险应对
  5. day_work_02
  6. 读书:我编程我快乐(一.4)
  7. jquery监听textarea内容变化
  8. 3.JUC线程高级-同步容器 ConcurrentHashMap
  9. 自己写daemon守护进程
  10. lisp ssget 浩辰_ssget 详解
  11. 利用 Google 搜索学术论文和资源的一些心得
  12. 走进晶圆厂,深入了解芯片制造流程
  13. 猜姓氏c语言题目,猜姓氏游戏及其数学原理
  14. 换服务器皮肤文件,lol怎么替换皮肤文件
  15. 微信早安,利用uniCloud阿里云的云函数实现定时推送
  16. css 比较好看的字体
  17. python xlwt表格写入操作
  18. java中的clear()
  19. 武汉疫情 - 新型冠状病毒信息整理
  20. [激光原理与应用-41]:《光电检测技术-8》- 白光干涉仪

热门文章

  1. C++11中type_traits中的基石 - integral_constant
  2. 【HarmonyOS HiSpark IPC DIY Camera试用连载1】开箱组装初印象
  3. 快速分辨订单号生成工具
  4. ubuntu 18.04重装+Nvidia驱动+Anaconda
  5. 数组名作为函数的参数 与数组作为函数参数的区别
  6. 零基础学Python--------第10章 文件及目录操作
  7. mysql 收货地址表,没法到达的快递地址 一次偷懒表设计带来的惨痛教训
  8. word插页码 目录不同编号
  9. c语言将一幅画转换为字符画,C#将图片转换成字符画
  10. 优酷大数据 OLAP 技术选型