Html转换器
2025/7/21大约 1 分钟pdfbox模块高级功能转换器
提示
- 基于 playwright 实现
- 首次使用会自动下载开源浏览器,并初始化
- 若转换内容有缺失,可尝试调整页面加载状态:
convertor.setPageState(PageLoadState.NETWORKIDLE);
说明
- 默认 dpi 为 96
- 默认页面方向为纵向
- 默认页面尺寸为 A4
- 默认页面边距为 0px
- 默认页面请求超时时间为 60000ms
- 默认页面加载状态为 PageLoadState.DOMCONTENTLOADED
- 默认包含背景
- 支持 html 转 pdf
- 支持 html 转图片
添加依赖
<dependency>
<groupId>com.microsoft.playwright</groupId>
<artifactId>playwright</artifactId>
<version>1.53.0</version>
</dependency>
示例
远程网页转pdf
说明
加载远程网页并转成 document 对象
// 获取html转换器
HtmlConvertor convertor = PdfHandler.getDocumentConvertor().getHtmlConvertor();
// 转换文档
Document document = convertor.toPdf("https://x-easypdf.cn");
// 保存并关闭
document.saveAndClose("E:\\PDF\\pdfbox\\convertor\\html\\x-easypdf.pdf");
本地网页转pdf
说明
加载本地 html 文件并转成 document 对象
// 获取html转换器
HtmlConvertor convertor = PdfHandler.getDocumentConvertor().getHtmlConvertor();
// 转换文档
Document document = convertor.toPdf("E:\\PDF\\pdfbox\\convertor\\html\\test.html");
// 保存并关闭
document.saveAndClose("E:\\PDF\\pdfbox\\convertor\\html\\test.pdf");
网页图像转pdf
说明
加载网页,先转成图片,再由图片转成 document 对象
// 获取html转换器
HtmlConvertor convertor = PdfHandler.getDocumentConvertor().getHtmlConvertor();
// 转换文档
Document document = convertor.toPdfWithImage("E:\\PDF\\pdfbox\\convertor\\html\\test.html");
// 保存并关闭
document.saveAndClose("E:\\PDF\\pdfbox\\convertor\\html\\test-image.pdf");
网页转图像
说明
加载网页并转成图片
// 获取html转换器
HtmlConvertor convertor = PdfHandler.getDocumentConvertor().getHtmlConvertor();
// 转换图像
BufferedImage image = convertor.toImage("E:\\PDF\\pdfbox\\convertor\\html\\test.html");
// 保存
ImageUtil.write(image, new File("E:\\PDF\\pdfbox\\convertor\\html\\test.png"));