Linux PDF压缩技巧:快速减小文件大小的最佳方法
这是文章《在Linux上减小PDF文件大小》的第1部分(共3部分)。
内容片段: 在我们的Linux系统中,如果我们有一个大型的PDF文件,我们可能希望减小它的大小。在本教程中,我们将讨论在Linux中减小PDF大小或压缩PDF文件的不同方法。
让我们找出一些命令行和图形界面的方法来处理这个问题。
在Linux中,有命令行工具可以减小PDF文件的大小。
使用GhostScript
我们可以在Linux中使用Ghostscript命令行工具来压缩PDF文件。
如果您的机器上没有该命令的话,您可以使用软件包管理器来安装它。
例如,在Ubuntu中,你可以使用apt来 完成。
sudo apt install ghostscript
您可以使用这个神奇的命令将PDF文件压缩成可读质量的文件。
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf
在这里,根据实际情况将output.pdf和input.pdf替换。
下表提供了-dPDFSETTINGS选项的各种微调方式。根据您的需要使用它们。
-dPDFSETTINGS 选项 | 描述 |
---|---|
-dPDFSETTINGS=/screen |
质量较低,文件较小。(72 dpi) |
-dPDFSETTINGS=/ebook |
质量较好,但文件稍大(150 dpi) |
-dPDFSETTINGS=/prepress |
输出文件大小和质量都较高(300 dpi) |
-dPDFSETTINGS=/printer |
输出为打印机类型质量(300 dpi) |
-dPDFSETTINGS=/default |
选择适用于多种用途的输出。可能会导致PDF文件较大。 |
我使用了上述命令将文件从73MB压缩到了14MB!

使用ps2pdf
这个命令ps2pdf将PDF文件转换为PS文件,然后再将其转换回来,从而有效地压缩文件。
可能不总是有效,但它可以取得非常好的结果。
格式:
ps2pdf input.pdf output.pdf
推荐您使用-dPDFSETTINGS=/ebooks设置以获得最佳性能,因为电子书在可读性方面具有最佳尺寸,并且体积也足够小。
ps2pdf -dPDFSETTINGS=/ebook input.pdf output.pdf
我已经在一个大小为73MB的PDF上尝试过了,结果与Ghostscript命令相同,压缩后的PDF只有14MB。

用于在Linux系统中减少PDF文件大小的图形界面工具
如果你不习惯使用命令行工具,也有图形界面的替代选择。
加密
这是一个针对Ghostscript的图形用户界面(GUI)前端工具,可以安装在任何Linux发行版上,因为它使用Python3及其GTK模块。
这个软件包名为Densify,可以在其GitHub页面找到。
我已经创建了一个简单的bash脚本来完成所有必要的工作。请以root用户权限运行这个bash脚本,以链接和下载必要的文件。
#!/bin/bash
#- DENSIFY安装辅助脚本
#- 原始软件包 https://github.com/hkdb/Densify
#- 脚本作者 Vijay Ramachandran
#- 网站 https://scdev.com
#-
# 进入你的主目录(推荐)
cd $HOME
# 下载软件包
git clone https://github.com/hkdb/Densify
cd Densify
# 文件中的Queue必须改为queue
# 否则无法正常工作
sed -i 's/Queue/queue/g' $PWD/densify
# 创建到/opt的符号链接
sudo ln -s $PWD /opt/Densify
# 执行安装
cd /opt/Densify
sudo chmod 755 install.sh
sudo ./install.sh
# 添加到PATH环境变量
if [ $SHELL == "/bin/zsh" ]; then
if test -f $HOME/.zshrc; then
echo 'export PATH=/opt/Densify:$PATH' >> $HOME/.zshrc
source $HOME/.zshrc
else
echo "未找到zshrc文件!请创建zsh配置文件后重试"
fi
else
if [ $SHELL == "/bin/bash" ]; then
if test -f $HOME/.bashrc; then
echo 'export PATH=/opt/Densify:$PATH' >> $HOME/.bashrc
source $HOME/.bashrc
else
if test -f $HOME/.bash_profile; then
echo 'export PATH=/opt/Densify:$PATH' >> $HOME/.bash_profile
source $HOME/.bash_profile
else
echo "未找到bashrc文件!请创建bash配置文件后重试"
fi
fi
else
echo "默认Shell不是zsh或bash。请手动将/opt/Densify添加到你的PATH中"
fi
fi
如果没有出现错误,你就可以放心使用了!只需从/opt/densify目录输入以下命令来调用图形用户界面,或者从系统仪表盘打开它。
densify

这是文章《在Linux上减小PDF文件大小》的第3部分(共3部分)。
现在,您可以使用图形用户界面压缩任意数量的PDF文件!
参考资料
- StackOverflow上关于减小PDF文件大小的讨论