PDF合并方案
2024-2-27 21:4:31 Author: mp.weixin.qq.com(查看原文) 阅读量:6 收藏

创建: 2024-02-27 19:51
https://scz.617.cn/misc/202402271951.txt

目录:

☆ 背景介绍
☆ ghostscript
☆ PDF24
☆ PDFPatcher(PDF补丁丁)
☆ Smallpdf 1.24.2.0
☆ 其他讨论
☆ 后记

☆ 背景介绍

场景一,考试前下发多个学习资料,想将多个PDF合并成单个PDF,便于搜索。

场景二,「图书馆文献传递」获取同一电子书各段PDF,需合并成整书。

场景三,「超星PDF阅读」获取同一电子书多个矢量PDF,需合并成整书。

还有许多场景涉及PDF合并。本文提及PDF合并时,暗含压缩且同时保画质的要求。后文所有PDF合并均基于同一测试样本集,蔡志忠的「漫画成语故事1」,共291个矢量PDF,要求合并成一个all.pdf。

PDFsam Basic
https://pdfsam.org/
https://pdfsam.org/download-pdfsam-basic/

只说PDF合并,免费的PDFsam Basic即可,但这是垃圾方案,合并后all.pdf有241MB。相比之下,Adobe Acrobat XI Pro合并、优化、压缩,这一套流程下来,15.4MB;只合并,31.1MB,优化能稍小些,也是31.1MB,压缩后才15.4MB。实测,用PDFsam合并后的PDF,可用Acrobat优化、压缩至15.4MB。

有全功能版Acrobat,就不必瞎折腾其他方案了。本文只讨论PC版本地免费软件方案,完全不考虑在线方案、联网方案、云端方案之类的。不考虑野鸡应用,有些人这辈子都不明白啥叫野鸡应用,不解释。本文未讨论给PDF加挂书签的事,对我非刚需。

☆ ghostscript

From ZZ & UID(5615345989)

apt-get install ghostscript

gs -dCompatibilityLevel=1.4 -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -dPDFSETTINGS=/ebook -sOutputFile=/tmp/all.pdf $(ls *.pdf | sort -n)
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -dPDFSETTINGS=/screen -sOutputFile=/tmp/all.pdf $(ls *.pdf | sort -n)

-dPDFSETTINGS=/screen   Low quality and small size at 72dpi.
-dPDFSETTINGS=/ebook    Slightly better quality but also a larger file size at 150dpi.
-dPDFSETTINGS=/prepress High quality and large size at 300 dpi.

我的gs man手册中没有CompatibilityLevel这个参数,应该是平台或版本差异所致。用/ebook合并出来33.1MB,大致相当于Acrobat的优化,比不上Acrobat的压缩。用/screen合并出来15.7MB,图像质量下降得厉害,并不推荐。

☆ PDF24

From UID(5941823583) & UID(1640026281)

PDF24,一个德国软件,好像是Java开发的。免费不开源,有在线版、离线版,界面语言有中文、英文。Win7/8用一个版本,Win10/11用另一个版本,别下错了。

PDF24 Tools (在线版)
https://tools.pdf24.org

PDF24 Creator (离线版)
https://tools.pdf24.org/en/creator
https://creator.pdf24.org/listVersions.php
https://download.pdf24.org/pdf24-creator-11.16.0-x64.exe (Win10)

PDF24的"合并PDF"结果有243MB,相当于PDFsam的合并。"优化PDF"意义不大。"压缩PDF"可对单一PDF压缩,不一定是PDF24的合并结果。缺省压缩参数如下

DPI:150 图像质量:75 颜色:不变

压缩至36.1MB,放大至232%,仍算清晰。若追求高画质,可调整参数

DPI:200 图像质量:90 颜色:不变

压缩至46.8MB。实测后觉得,若非画质癖,就用缺省参数吧。

PDF24最大的坏处是,离线安装后占用空间较大,不够轻型。若这不是问题的话,可用。

☆ PDFPatcher(PDF补丁丁)

From UID(2710998114)

PDFPatcher(PDF补丁丁)
https://github.com/wmjordan/PDFPatcher
https://github.com/wmjordan/PDFPatcher/releases
https://github.com/wmjordan/PDFPatcher/releases/download/v1.0.1/PDFPatcher.1.0.1.4220.7z

合并文档
  添加文件
    选择所有待合并PDF
  功能选项
    尝试合并PDF文档重复数据以缩小结果文件
  生成合并文件

合并、压缩结果35.7MB。PDFPatcher最大的好处是绿色、小巧,展开即用。

☆ Smallpdf 1.24.2.0

From 小钻风 & UID(1242059990)

Smallpdf
https://smallpdf.com
https://download.smallpdf.com/desktop/win/Smallpdf-Installer.exe (x64/1.24.2.0)

SHA256  5b6d7e3c3a474c135dd0d9b310027bd44fcfffcb0ec3c2fd3bd862f640430653

Smallpdf 1.24.0离线安装方法及无限试用 - 攻防之间 [2019-03-15]
https://www.52pojie.cn/thread-899911-1-1.html

官网现在不再显式提供1.24.2.0版Smallpdf-Installer.exe,但实际仍提供下载,前述下载链接由小钻风提供。此外,可通过SHA256从「微步在线」下载,前提是知道SHA256。破解方案源自「吾爱破解」,只适用于1.24.x版,之后的新版不适用。

先离线安装,比如断网安装或用PFW阻止联网,我用后者。

netsh.exe advfirewall firewall add rule name="Block Smallpdf" enable=yes dir=out action=block profile=any program="C:\Users\scz\AppData\Local\Smallpdf\Smallpdf.exe"
netsh.exe advfirewall firewall show rule name="Block Smallpdf" dir=out verbose

可用wf.msc添加上述规则,注意示例中是我的用户名,需要改成你自己的。

安装快结束时,会自动在浏览器中打开一个页面,安装界面有相应提示。不要理它们,直接关闭浏览器中刚打开的页面,用Process Explorer或任务管理器杀掉所有Smallpdf.exe实例,安装已经结束。编辑如下文件:

notepad %USERPROFILE%\AppData\Roaming\Smallpdf\preferences.json

old

"system.local_token"null,
"system.trial_duration_limit"5,


new

"system.local_token""1",
"system.trial_duration_limit"36500,

原理是,有全功能试用期5天,改成100年。将preferences.json设置成"只读":

attrib +r %USERPROFILE%\AppData\Roaming\Smallpdf\preferences.json

此破解方案不修改PE,安全无毒,不会惹到杀软。

先Merge到242MB,再Compress到24MB,无法指定压缩参数,但压缩结果清晰度可接受。Smallpdf比较傻瓜化,适合小白,安装破解过程不太适合小白。

☆ 其他讨论

From UID(7432902670)

提供一个垃圾测试结果,金山PDF合并完243MB,使用金山自带的压缩,选择低清晰度、最小体积,压缩后220MB,而且软件还是收费的。

scz: 这是真垃圾啊,这算有效反馈,至少说明这是一款垃圾,可以避坑。

From UID(1727858283) & UID(6140947238)

https://github.com/Frooodle/Stirling-PDF

Docker布署的本地方案,不适用于Windows用户,未测试。

☆ 后记

本文只收录了我用同一测试样本集实测过的各种方案,其他方案未收录。

各种方案合并压缩后的大小随软件版本而变化,纯图片PDF、矢量PDF的压缩效果不一样,这些差异不特别强调,假设知道自己在说什么。

有全功能版Acrobat,就不必瞎折腾其他方案了。PDFsam这种属于反面例子。Linux用户用ghostscript即可。Windows用户,PDF24、PDFPatcher、Smallpdf随自己喜欢吧,我个人倾向Smallpdf。

若有其他优质方案,欢迎用此测试样本集实测后反馈下载点至少一周内有效:

https://gofile.io/d/S0Z7aV

反馈合并后all.pdf的大小、所用软件的下载点及可能需要的破解方案,方便其他网友复用。若你的方案只有你自己能用,就不必提了,这种碰上了我会拉黑,啥都不说反而没事。


文章来源: https://mp.weixin.qq.com/s?__biz=MzUzMjQyMDE3Ng==&mid=2247487185&idx=1&sn=b39c0ecad2f0a2227fe841cd5e607a79&chksm=fab2cdeecdc544f8b0268c8e816aaef3019ee1f6449e00e3d293dbd3dbec8f34485ca2217bb8&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh