Ghotstscript增加了内容的长度

时间:2018-06-25 03:05:53

标签: ghostscript

我正在使用ghostscript压缩PDF大小。使用以下命令/opt/pdf/ghostpdl-9.23/bin/gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=$1 $2

这将通过压缩PDF内的所有图像来减小PDF的大小。但是,当我在PDFBox的调试器工具中检查压缩的PDF时,我可以看到内容的长度增加了。看起来是ghostscript未压缩内容,但是重新压缩未正确完成

原始PDF:https://35.200.235.243/download?fileName=/opt/pdf/test.pdf 压缩的PDF:https://35.200.235.243/download?fileName=/opt/pdf/test-compress1.pdf

我尝试使用iText使用setCompressionLevel(9)重新压缩内容。但是,原始压缩仍然无法实现

是否有任何机制可以通过ghostscript在后期处理中实现内容的原始压缩

1 个答案:

答案 0 :(得分:0)

Ghostscript(更具体地说是pdfwrite设备)根本不会“压缩” PDF文件。它会产生一个全新的PDF文件,该文件可能(或同样可能不会)比原始文件小。

Ghostscript总是解压缩输入,here描述了该过程,并应说明为什么总是会发生这种情况。

我看不出您认为Ghostscript没有重新压缩图像流的任何原因,所有图像流都使用Flate或DCT编码进行了压缩。

您尚未说出您认为哪些内容有所增加,并且考虑到原始文件为1.2 MB,Ghostscript输出为390KB,我不清楚您的投诉实际上是什么。输出文件对我来说要小得多。

如果期望输出文件中的流编号与输入文件中的编号相同,那么您不走运,请参阅上面的概述链接以了解原因。

请注意,您的命令行不会压缩图像,它会降低图像分辨率,从而降低图像质量。