在 Linux 中减小 PDF 文件大小

在我们的Linux系统中,如果我们有一个大的PDF文件,我们可能想减少它的大小,我们将看看在本教程中减少PDF大小或压缩PDF文件的不同方式。

让我们来找出一些命令行和GUI方法来解决这个问题。


命令行工具在Linux中减少PDF文件大小

1、使用GhostScript

我们可以在Linux中使用ghostscript命令行实用程序来压缩PDF。

如果该命令在您的机器上不可用,您可以使用您的包管理器来安装它。

例如,在Ubuntu中,你可以使用apt:

1sudo apt install ghostscript

您可以使用这个魔法命令将 PDF 压缩到可读的质量。

1gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf

在这里,相应地取代output.pdfinput.pdf

在下面的表中提供dPDFSETTINGS选项的各种调整,根据您的需要使用它们。

-dPDFSETTINGS OptionDescription
-dPDFSETTINGS=/screenHas a lower quality and smaller size. (72 dpi)
-dPDFSETTINGS=/ebookHas a better quality, but has a slightly larger size (150 dpi)
-dPDFSETTINGS=/prepressOutput is of a higher size and quality (300 dpi)
-dPDFSETTINGS=/printerOutput is of a printer type quality (300 dpi)
-dPDFSETTINGS=/defaultSelects the output which is useful for multiple purposes. Can cause large PDFS.

我用上面的命令实现了从 73MB14MB的压缩!

Ghostscript Reduce Pdf Size


使用 ps2pdf

此命令 'ps2pdf' 将 PDF 转换为 PS,然后再次返回,从而高效地压缩。

它可能并不总是有效的,但它可以带来非常好的结果。

• 格式:

1ps2pdf input.pdf output.pdf

建议您使用dPDFSETTINGS=/ebooks设置以获得最佳性能,因为电子书具有最佳的可读性尺寸,并且尺寸也足够小。

1ps2pdf -dPDFSETTINGS=/ebook input.pdf output.pdf

我在一个 73MB PDF 上尝试过,它与ghostscript命令具有相同的结果,压缩的PDF只有 14MB!

Ps2pdf Reduce Pdf Size


GUI 工具在 Linux 中减少 PDF 文件大小

如果您对使用命令行工具感到不舒服,还有一个GUI替代方案。

丹尼斯

这是一个GUI前端到ghostscript,可以安装在任何Linux发行版中,因为它使用Python3GTK模块。

此套件名为 Densify,并可在 [这里(链接到github)。

我创建了一个简单的bash脚本来完成所有必要的工作. 运行这个bash脚本作为根,链接和下载必要的文件。

 1#!/bin/bash
 2#- HELPER SCRIPT FOR DENSIFY
 3#-    original package https://github.com/hkdb/Densify
 4#-    script author Vijay Ramachandran
 5#-    site https://journaldev.com
 6#- 
 7
 8# Go to your home directory (preferred)
 9cd $HOME
10
11# Download the package
12git clone https://github.com/hkdb/Densify
13cd Densify
14
15# Queue must be changed to queue in the file.
16# Will not work otherwise
17sed -i 's/Queue/queue/g' $PWD/densify
18
19# Create the symlink to /opt
20sudo ln -s $PWD /opt/Densify
21
22# Perform the install
23cd /opt/Densify
24sudo chmod 755 install.sh
25sudo ./install.sh
26
27# Export to PATH
28if [ $SHELL == "/bin/zsh" ]; then
29    if test -f $HOME/.zshrc; then
30        echo 'export PATH=/opt/Densify:$PATH' >> $HOME/.zshrc
31        source $HOME/.zshrc
32    else
33        echo "No zshrc Found! Please create a zsh config file and try again"
34    fi
35else
36    if [ $SHELL == "/bin/bash" ]; then
37        if test -f $HOME/.bashrc; then
38            echo 'export PATH=/opt/Densify:$PATH' >> $HOME/.bashrc
39            source $HOME/.bashrc
40        else
41            if test -f $HOME/.bash_profile; then
42                echo 'export PATH=/opt/Densify:$PATH' >> $HOME/.bash_profile
43                source $HOME/.bash_profile
44            else
45                echo "No bashrc Found! Please create a bash config file and try again"
46            fi
47        fi
48    else
49        echo "Default Shell is not zsh or bash. Please add /opt/Densify to your PATH"
50    fi
51fi

如果没有错误,你可以去! 只需从opt/densify键入下面的命令来召唤GUI,或者从你的仪表板中打开它。

1densify

Densify Gui Utility

您现在可以使用 GUI 压缩所需的尽可能多的 PDF 文件!


参考


Published At
Categories with 技术
Tagged with
comments powered by Disqus