最强私有化PDF工具箱!使用Docker部署『Stirling-PDF』

俺是玩机小能手 2024-07-11 11:23:45
最强私有化PDF工具箱,还支持OCR扫描!使用Docker部署『Stirling-PDF』

哈喽小伙伴们好,我是Stark-C~

我记得前些天给大家分享了一个在NAS上部署的私有化文件转换服务器『Morphos』。

功能虽说强大,但是对于中文的文档格式转换,特别是打工人经常用到的PDF转换非常不友好,所以一直意难平~

网上虽说也有很多线上PDF工具可用,但是抛开隐私和文件安全方面的问题不说,要么广告每天飞,要么最关键的功能需要付费,体验很不好。

不过在后来的几天里,我终于找到一个非常强大且免费的PDF处理工具,它可以说是近乎全能,并且同样可以部署在本地,完全不用担心安全方面的问题。它便是我今天为大家分享的Stirling-PDF。

关于Stirling-PDF

Stirling-PDF是一个可以托管在本地上的免费开源PDF操作工具,它功能非常强大,可以以近乎全能的方式对PDF 文件执行各种操作,包括拆分、合并、转换、重组、添加图像、旋转、压缩等,并且还支持很多付费PDF工具还不支持的OCR扫描功能,最主要的是,该程序原生支持中文,再也不用使用过程中会出现中文乱码的问题,绝对可以称得上是我们打工人的效率神器!

同样的,部署之前咱们也可以根据作者给出的demo在线体验(用户名/密码:demo):https://stirlingpdf.io/

Stirling-PDF更具体的功能我这里直接引用了官方页面叙述:

页面操作:

查看和修改 PDF - 通过自定义查看、排序和搜索查看多页 PDF。加上页面编辑功能,如注释、绘制和添加文本和图像。(将 PDF.js 与 Joxit 和 Liberation.Liberation 字体一起使用)

用于合并/拆分/旋转/移动 PDF 及其页面的完整交互式 GUI。

将多个 PDF 合并到一个生成的文件中。

将 PDF 拆分为指定页码的多个文件,或将所有页面提取为单个文件。

将 PDF 页面重新组织为不同的顺序。

以 90 度的增量旋转 PDF。

删除页面。

多页布局(将 PDF 格式化为多页页面)。

按设置百分比缩放页面内容大小

调整对比度。

裁剪 PDF。

自动拆分 PDF(使用物理扫描的页面分隔符)。

提取页面。

将 PDF 转换为单个页面。

转换操作:

将 PDF 与图像相互转换。

将任何通用文件转换为 PDF(使用 LibreOffice)。

将 PDF 转换为 Word/Powerpoint/其他(使用 LibreOffice)。

将 HTML 转换为 PDF。

URL 到 PDF。

Markdown 转换为 PDF。

安全与权限:

添加和删除密码。

更改/设置 PDF 权限。

添加水印。

对 PDF 进行认证/签名。

清理 PDF。

自动编辑文本。

其他操作:

添加/生成/写入签名。

修复 PDF。

检测并删除空白页。

比较 2 个 PDF 并显示文本差异。

将图像添加到 PDF。

压缩 PDF 以减小其文件大小(使用 OCRMyPDF)。

从 PDF 中提取图像。

从扫描中提取图像。

添加页码。

通过检测PDF标题文本自动重命名文件。

PDF 上的 OCR(使用 OCRMyPDF)。

PDF/A 转换(使用 OCRMyPDF)。

编辑元数据。

拼合 PDF。

获取 PDF 上的所有信息以查看或导出为 JSON。

Stirling-PDF部署

需要说明的是,Stirling-PDF根据不同的需求提供了两种不同的Docker镜像:完整版和超精简版。各镜像之间除了大小上的差别,功能会不一样:

支持的操作

超精简版

完整版

添加页码

✔️

✔️

添加密码

✔️

✔️

添加图像

✔️

✔️

添加水印

✔️

✔️

调整对比度

✔️

✔️

自动拆分pdf

✔️

✔️

自动编辑

✔️

✔️

自动重命名

✔️

✔️

证书签名

✔️

✔️

作物

✔️

✔️

更改元数据

✔️

✔️

更改权限

✔️

✔️

比较

✔️

✔️

extract-page

✔️

✔️

提取图像

✔️

✔️

扁平 化

✔️

✔️

获取信息PDF

✔️

✔️

img-转pdf

✔️

✔️

降价转 PDF

✔️

✔️

合并-PDF

✔️

✔️

多页面布局

✔️

✔️

叠加-PDF

✔️

✔️

pdf-组织者

✔️

✔️

pdf-转csv

✔️

✔️

pdf转IMG

✔️

✔️

PDF转单页

✔️

✔️

删除页面

✔️

✔️

删除密码

✔️

✔️

旋转-pdf

✔️

✔️

SANITIZE-PDF格式

✔️

✔️

缩放页

✔️

✔️

标志

✔️

✔️

show-javascript

✔️

✔️

按大小或计数拆分

✔️

✔️

拆分-PDF

✔️

✔️

拆分-PDF

✔️

✔️

压缩-PDF

✔️

提取图像扫描

✔️

OCR-PDF格式

✔️

pdf-转-pdfa

✔️

删除空白

✔️

本篇教程我直接以支持最全的完整版为大家演示。

先打开NAS的文件管理器,在 docker 目录中(威联通默认为Container文件夹),创建一个新文件夹【Stirling-PDF】,然后在 Stirling-PDF文件夹中再分别新建四个子文件夹trainingData、extraConfigs、customFiles、logs。

然后使用SSH终端工具连接到NAS之后先启用root模式(“ sudo -i ”),输入以下Docker run多行命令(请注意,张大妈编辑器会删掉每行命令后面的反斜杠)并回车即可:

docker run -d \

--name Stirling-PDF \

-p 8080:8080 \

-v /opt/trainingData:/usr/share/tessdata \

-v /opt/extraConfigs:/configs \

-v /opt/customFiles:/customFiles/ \

-v /opt/logs:/logs/ \

-e DOCKER_ENABLE_SECURITY=true \

-e SECURITY_ENABLELOGIN=true \

-e SECURITY_INITIALLOGIN_USERNAME=stark \

-e SECURITY_INITIALLOGIN_PASSWORD=stark \

-e UI_APPNAME='Stark-C PDF' \

-e INSTALL_BOOK_AND_ADVANCED_HTML_OPS=false \

-e SYSTEM_DEFAULTLOCALE=zh_CN \

frooodle/s-pdf:latest

以上命令需要说明的地方为:

-p 8080:8080 -->号前面改为本地没被占用端口;-v /opt/trainingData:/usr/share/tessdata -->冒号前面映射我们前面新建“trainingData”子文件夹的本地实际路径;-v /opt/extraConfigs:/configs -->冒号前面映射我们前面新建“extraConfigs”子文件夹的本地实际路径;-v /opt/customFiles:/customFiles/ -->冒号前面映射我们前面新建“customFiles”子文件夹的本地实际路径;-v /opt/logs:/logs/ -->冒号前面映射我们前面新建“logs”子文件夹的本地实际路径;-e SECURITY_INITIALLOGIN_USERNAME=stark -->Web端登录账号,自行设置;-e SECURITY_INITIALLOGIN_PASSWORD=stark -->Web端登录密码,自行设置;-e UI_APPNAME='Stark-C PDF' -->Web端显示名称,自行设置

或者咱们也可以直接使用docker-compose部署:

version: '3.9'services: stirling-pdf: image: frooodle/s-pdf:latest container_name: Stirling-PDF ports: - '8080:8080' volumes: - /opt/trainingData:/usr/share/tessdata # OCR 语言支持 - /opt/extraConfigs:/configs - /opt/customFiles:/customFiles/ - /opt/logs:/logs/ environment: DOCKER_ENABLE_SECURITY: true # 启用内部安全功能 SECURITY_ENABLELOGIN: true # 启用登录功能 SECURITY_INITIALLOGIN_USERNAME: stark # 登录账户 SECURITY_INITIALLOGIN_PASSWORD: stark # 登录密码 UI_APPNAME: Stark-C PDF # 导航页标题 INSTALL_BOOK_AND_ADVANCED_HTML_OPS: false SYSTEM_DEFAULTLOCALE: zh_CN # 默认中文

将修改好的docker-compose.yml文件放到NAS任意文件夹内,然后运行以下命令即可:

#进入文件夹cd 文件夹实际路径#启动容器docker-compose up -dStirling-PDF体验

直接在浏览器中输入 【http:// NAS的局域网IP:端口号】 就能打开容器界面。

因为我们部署的时候设置了默认账户和密码,所以这里咱们直接以我们设置的账户和密码登录即可。

以上是它完整的功能。

随意拿来一个PDF可以直接打开并编辑。

尝试将我创作的Markdown转PDF也是完全没问题。

我最常用的PDF转为PPT竟然也完美支持。

至于OCR扫描,我们需要先去官方页面下载支持的中文语言,然后将下载好的chi_sim.traineddata中文语言包上传到trainingData子文件即可。

之后我们打开ORC 界面就能看到中文识别选项了。

最后

总的来说,Stirling-PDF是一款非常强大的全能PDF处理工具,开源免费的同时,还非常重视使用者的隐私和文件安全,对于日常需要处理PDF相关文件的打工人来说,Stirling-PDF绝对可以满足你各种需求,非常值得体验!

好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,咱们下期再见!谢谢大家~

0 阅读:0

俺是玩机小能手

简介:感谢大家的关注