pdf2htmlex概述
- 将 PDF 转换为HTML而不会丢失文本或格式
- 项目仓库:https://github.com/pdf2htmlEX/pdf2htmlEX
主要特性
- 生成原生的HTML,其中字体和元素位置与pdf一样精准。
- 灵活输出:支持所有内容生成在单个HTML文件中;也支持分页生成多个html文件,资源如字体、图像、CSS生成单独的文件,实现按需加载(需要JavaScript)。
- 文件大小适中,有时甚至比 PDF 还小。
- 支持链接、大纲(书签)、打印、SVG 背景、Type 3字体等
问题
- 不支持在windows中运行,支持linux,如ubuntu、alpine
- 环境比较复杂,难以独立安装
- docker运行必须精确指定标签
docker安装
-
安装镜像
docker pull pdf2htmlex/pdf2htmlex:0.18.8.rc2-master-20200820-alpine-3.12.0-x86_64
-
设置别名
alias pdf2htmlEX='docker run -ti --rm -v "
pwd
":/pdf -w /pdf pdf2htmlex/pdf2htmlex:0.18.8.rc2-master-20200820-alpine-3.12.0-x86_64' -
测试安装
pdf2htmlEX --help
常用命令
-
显示运行参数
pdf2htmlEX -h
pdf2htmlEX --help
-
转化pdf
pdf2htmlEX --zoom 1 test.pdf
-
高级用法
pdf2htmlEX -f 3 -l 5 --fit-width 1024 --bg-format jpg pdf/test.pdf
仅转换第 3、第 4 和第 5 页,并将页面宽度调整为 1024 像素,背景图像将以 JPEG 格式生成
-
对于发布者
pdf2htmlEX --embed cfijo --dest-dir out pdf/test.pdf
将在 out 目录中生成一个test.html和相关的资源文件,资源如字体、图像、CSS 和 JavaScript等都保存在单独的文件中,以便利用浏览器缓存。
-
分页生成
pdf2htmlEX --embed cfijo --split-pages 1 --dest-dir out --page-filename test-%d.page pdf/test.pdf
每个pdf页面都保存在各自单独的文件中,这些文件被命名为 test-0.page、test-1.page 等,在主页面test.html中通过ajax动态加载页面,以实现延迟加载页面。
- fallback模式
pdf2htmlEX --fallback 1 pdf/test.pdf
生成单个test.html,由图像和隐藏文本组成。此模式以更大的文件大小为代价,提供了最大的准确性和兼容性。仅当pdf2htmlEX无法正确处理您的文件时,才使用此模式
原始地址:https://b.i68.ltd/archives/pdf2htmlex-pdfhtml
i68爱六八,链接你我他:https://i68.ltd