为什么在将非常大的图像缩小为更小的图像时,使用imagemagick会丢失图像质量?

时间:2014-10-12 18:58:35

标签: imagemagick imagemagick-convert

我有一堆图像要转换成单个PDF,图像主要是文本图像(类似于教科书的扫描图像)。图像文件非常大,我不需要它们提供的分辨率。

首先,作为一个基本文件,我对这些"页面中的26个进行了简单的转换。对于单个pdf,26个页面的总文件大小为46MB。在页面宽度模式下查看会导致原始图像的比例为16%。

convert *.png kapittel1.pdf

PDF页面的质量非常好,它们太大了。因此,我认为16%的图像足以在屏幕上查看整个页面宽度,我可以将图像尺寸缩小到原始值的20%,并保持相同的图像质量。图像质量明显低于缩小尺寸之前的质量。

convert -resize 20% -quality 100% *.png 20percent.pdf

我相信我需要开始研究过滤器,但在我浪费时间使用所有过滤器进行转换然后比较找到我想要使用的过滤器之前,有没有更好的方法来缩小尺寸,保持质量,然后转换为PDF?我不知道为什么我会在这里丢失像素。

修改

我尝试使用-scale代替-resize,但实际上并没有看到输出的差异。看起来,一旦我低于40%,我开始丢失像素数据。

2 个答案:

答案 0 :(得分:1)

优秀的ImageMagick Examples状态,默认情况下,在创建PDF并建议使用Zip(Deflate Compression)时不使用图像压缩:

convert *.png -compress Zip -quality 100 kapittel1.pdf

如果您的图片只有黑白图片,则可以使用-monochrome尝试-compress Group4选项和可选的Group4(传真)压缩。

答案 1 :(得分:0)

好吧,我发现,一旦遵循Shawn Patrick Rice关于优化扫描PDF和OCR + ClearText的建议,PDF的大小在-resize设置为30-50%之间是相当微不足道的。这里的主要目标是将生成的PDF的大小减小到45以下。高度,因为这是Adobe的OCR的门槛。我发现将每个图像单独转换为PDF然后调整大小,或者使用Adobe中的大量其他设​​置都没有任何好处。下面的过程保留了(据我所知)所有的图像质量,并将图像缩小到最小尺寸的PDF(全质量)。

我的流程如下:

convert *.png -resize 50% name.pdf 
// resize amount dependent on original file dimensions, goal is document height < 45"
Adobe Acrobat => Document Processing => Optimize Scanned PDF (Edit => ClearScan output style) => OK

生成的PDF文档的大小仍然很大,但是在Adobe中减少后的大小显着下降(90MB => 4MB)。如果我第一次调整大小为30%会有明显的图像质量损失,但是优化后保存的大小量对于上述文件大约为800KB。