【工具】PDF转HTML

【工具】PDF转HTML

可通过命令执行, 集成到项目中

pdf2htmlEX

windows系统可执行版下载地址:
http://soft.rubypdf.com/software/pdf2htmlex-windows-version

https://github.com/coolwanglu/pdf2htmlEX

复制代码
 .\pdf2htmlEX.exe --zoom 1.8 a.pdf

 .\pdf2htmlEX.exe --embed cfij --embed-image 0 --zoom 1.8 a.pdf

参数说明

以下是 pdf2htmlEX 工具的参数说明解读,按功能分类整理:


​基础信息​

  • 功能:将 PDF 文件转换为 HTML,保留文本格式和样式,非文本对象(如图片)会以图像形式嵌入。
  • 特点 :
    • 支持字体提取(Type 3 字体需实验性选项)。
    • 文本可选中、复制。
    • 可优化网页兼容性和文件体积。

​基础用法​

复制代码

bash

复制

复制代码
pdf2htmlEX [选项] <输入文件> [<输出文件>]
  • 示例 :

    复制代码

    bash

    复制

    复制代码
    pdf2htmlEX input.pdf output.html

​常用选项分类说明​

1. ​页面范围控制​
  • -f, --first-page <num>
    指定起始页码(默认:1)。
  • -l, --last-page <num>
    指定结束页码(默认:最后一页)。

2. ​输出尺寸调整​
  • --zoom <ratio>
    直接指定缩放比例(如 --zoom 1.5)。
  • --fit-width <width> / --fit-height <height>
    指定页面的最大宽度/高度(像素单位)。若同时指定多个,取最小值。
  • 默认行为:页面按 72 DPI 渲染。

3. ​内容嵌入控制​
  • --embed <字符串>
    通过字符组合控制嵌入内容类型(如 cCfFiIjJoO):
    • c/C:CSS 文件(默认嵌入)。
    • f/F:字体(默认嵌入)。
    • i/I:图片(默认嵌入)。
    • j/J:JavaScript(默认嵌入)。
    • o/O:大纲(默认嵌入)。
    • 小写字母 表示不嵌入,大写字母表示嵌入。
  • 分项开关 (优先级低于 --embed):
    • --embed-font 0|1:是否嵌入字体(默认:1)。
    • --embed-image 0|1:是否嵌入图片(默认:1)。
    • --embed-outline 0|1:是否嵌入大纲(默认:1)。

4. ​分页与输出路径​
  • --split-pages 0|1
    是否分页保存(默认:0)。开启后每页存为单独文件。
  • --dest-dir <目录>
    指定输出目录(默认:当前目录)。
  • --page-filename <模板>
    分页文件名模板,支持占位符 %d(页码),如:
    • bar%03d.baz → bar001.baz, bar002.baz...

5. ​字体处理​
  • --font-format <格式>
    字体输出格式(默认:woff)。
  • --decompose-ligature 0|1
    分解连字(如 "fi" → "f"+"i",默认:0)。
  • --process-type3 0|1
    实验性支持 Type 3 字体(默认:0,可能渲染异常)。

6. ​文本优化​
  • --space-threshold <比例>
    插入空格的阈值(默认:0.125 × 字体大小)。
  • --font-size-multiplier <倍数>
    字体大小倍数(默认:4.0),用于解决浏览器最小字体限制。
  • --optimize-text 0|1
    减少 HTML 元素数量(默认:0,可能影响兼容性)。

7. ​图像与背景​
  • --hdpi <dpi> / --vdpi <dpi>
    图像水平/垂直 DPI(默认:144)。
  • --bg-format <格式>
    背景图像格式(默认:png,支持其他格式如 jpg)。

8. ​安全与权限​
  • -o, --owner-password <密码>
    PDF 所有者密码。
  • -u, --user-password <密码>
    PDF 用户密码。
  • --no-drm 0|1
    强制绕过 DRM(默认:0,需合法权限)。

9. ​调试与临时文件​
  • --clean-tmp 0|1
    是否清理临时文件(默认:1,清理)。
  • --debug 0|1
    输出调试信息(默认:0)。

​高级功能​

  • 大纲处理 :--process-outline 0|1 控制是否生成目录大纲。
  • 回退模式 :--fallback 0|1 提升兼容性但增大文件体积。
  • 模板文件 :通过 --data-dir 指定自定义 HTML 模板目录。

​示例场景​

  1. ​基础转换​:

    复制代码

    bash

    复制

    复制代码
    pdf2htmlEX input.pdf output.html
  2. ​分页保存且不嵌入字体/图片​:

    复制代码

    bash

    复制

    复制代码
    pdf2htmlEX --split-pages 1 --embed fI input.pdf
  3. ​加密 PDF 转换​:

    复制代码

    bash

    复制

    复制代码
    pdf2htmlEX -o owner_pass input.pdf

​注意事项​

  • Type 3 字体支持是实验性的,可能导致文本渲染为图像。
  • 调整 --font-size-multiplier 可能影响浏览器渲染性能。
  • 使用 --no-drm 1 需确保合法权限。

另一款

https://github.com/pdf2htmlEX/pdf2htmlEX

相关推荐
ydjs678899-bot10 小时前
如何在Java中打印pdf静默打印和打印对话框选择
java·python·pdf
SamChan9011 小时前
PDF 翻译后 1,250 变成 1.250,是错了吗?用 Python 核对数字格式
python·pdf·ocr·数据校验·文档翻译
开开心心就好14 小时前
打印机卡住打不了?一键清理卡死打印队列
服务器·开发语言·算法·pdf·ocr·idea·visual studio code
打工仔折腾 AI1 天前
在线PDF工具隐私焦虑?把BentoPDF部署到极空间NAS本地处理
人工智能·后端·python·pdf·ai agent 实战
霸道流氓气质2 天前
AI 简历制作平台:结构化输出解析、多模板渲染与 PDF 导出的 Vue3 + Spring AI 全栈实战
人工智能·spring·pdf
开开心心_Every2 天前
黄金价格软件国内外价格实时监控超方便
运维·服务器·游戏·智能手机·pdf·lua·perl
JasonSJX2 天前
DRM-X 5.0 PDF 保护更新:Windows 与 Mac 打印保留用户水印,ZJGet iOS 版支持 PDF 阅读
macos·pdf
shmily麻瓜小菜鸡2 天前
前端实现图片与PDF文字识别敏感信息打码方案
前端·pdf·状态模式
ComPDFKit3 天前
PDF 涂黑后还能复制?用 ComPDF 检查敏感文字是否真正删除
pdf
飞塔老梅子3 天前
21. 按页数或章节分割大PDF文件 ❀ 老梅子学AI
pdf·分割·basic·pdfsam·裁切