如何缩小pdf文件的大小?


51

我正在Ubuntu中寻找一种减小pdf大小的方法(通过降低图像质量)。

我知道可以在Ghostscript中通过在终端中键入以下命令来完成此操作:

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

问题是我无法准确指定质量。参数-dPDFSETTINGS=/screen是决定质量的参数;但其他选择却相当僵化(例如,可以做到-dPDFSETTINGS=/ebook质量稍高)。

我正在寻找一种减小pdf大小的方法,该方法允许我以数字方式指定所需的质量。


您可能要检查一下此问答
Glutanimate


确实是重复的!
hectorpal

Answers:


57

我可以使用@drN的-r300选项对您的命令成功进行一些细微改动-r选项允许您在pdf和png中设置输出分辨率。

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/default \
    -dNOPAUSE -dQUIET -dBATCH -dDetectDuplicateImages \
    -dCompressFonts=true -r150 -sOutputFile=output.pdf input.pdf

7
此命令将25MB的4页PDF转换为几乎相同的质量,但只有2MB。干杯!

这适用于大多数文件。但是,在某些情况下,它实际上会增加文件大小。-r在这些情况下,似乎忽略了该选项。
路易·德·索萨

该命令消耗了我所有的RAM(8Gb),并用1000页的pdf文件冻结了我的笔记本电脑。

12

我在Stackoverflow上发布的这两篇文章应该会对您有所帮助。我试图减小pdf的大小,同时确保它们满足我的论文要求的dpi或ppi。

用ghostscript减小pdf的大小

使用gs更改pdf图像dpi

您是否尝试过convert在Linux中玩耍?

编辑:

gs \
  -o out300.png \
  -sDEVICE=pngalpha \
  -r300 \
   input.pdf

如果我没记错的话,r300是输出,dpi但是您可能要检查一下。不过,这会将pdf转换为png。

要么

convert -units PixelsPerInch myPic.pdf -density 300 fileout.pdf

让我们知道怎么回事!这是用于pdf或任何其他格式的任何其他格式。我只是使用了myPic.pdf的输入文件和fileout.pdf的输出文件


嗯...我看着您链接的问题。它们很有趣,但是很难得出我应该使用的具体命令。我正在寻找一个带有一些数值的命令,可以确定质量。可以执行这样的命令吗?可以使用转换吗?
妮可

我修改了答案,加入了一些更简单的选项。看一看,让我们知道!:)
亲爱的

1
即使使用100 dpi,该转换也会增加我的pdf大小。也许最好的选择是使用“ gs”将其转换为png,然后“转换”为pdf?
妮可

@Nicole pdf转换始终存在问题。您打算将pdf用于什么?
dearN 2012年

@Nicole我注意到要获得pdfs / eps文件的最佳效果,我必须回到最初制作pdf的程序,并更改我的保存选项以保存在所需的dpi / ppi中。我希望这会有所帮助,是的,这可能会给您带来一些痛苦。
亲爱的

12

我发现的最简单的方法是使用LibreOffice Draw打开源PDF文件,然后使用预期的DPI导出为PDF。Draw的“导出”对话框窗口允许您为导出的PDF指定DPI和其他选项。


1
我尝试了所有其他命令行操作,但是最后,这使我可以为自己的目的充分提高压缩率。
C.Rogers

1
图形化的方式,仍然有很多控件。
Agmenor

我发现LibreOffice Draw在打印/导出pdf方面比其他任何方面都更好,所以+1。
Yoric

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

我认为这是最简单的方法,可以将大小减小到50 +/- kb。在您的终端上,转到文件目录:example

cd ~/document/files

然后在上面的代码中键入:

myNewFile.pdf

是文件的新名称,

myOldFile.pdf

是文件名。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.