PDFsharp图像压缩

时间:2016-01-26 10:54:54

标签: c# pdf pdfsharp

我正在构建一个将多个PDF连接到一个文件中的工具。

每个源PDF都是包含图像的单个页面。 图像是高分辨率灰度,通常非常大。

我需要找到应用于这些图像的最佳压缩,以使得结果文件比现在小(大约240个源PDF,最终文件超过650 MB)。

我的问题是,是否可以从源PDF中提取图像,将它们转换为灰度TIFF,然后使用它们作为源编译新的PDF?我希望这种方法能够利用内置的LZ压缩,而不是只是逐字节地将图像复制到PDF中的JPEG过程。

图像本身具有高分辨率和大尺寸,因此即使缩放它们也会产生影响(我今天将对此进行测试 - 这些图像将被发送到打印到投资组合书中,因此更高的分辨率是可取的,但是这本书将是A5,他们不需要是巨大的。)

我会很感激任何更好实施的建议,尽管我仍然坚持使用这些单页PDF作为我的资源 - 有太多的图像要从头开始使用原始资源,所以提取它们从源PDF文件是我唯一真正的选择。

1 个答案:

答案 0 :(得分:0)

PDFsharp不会以任何方式缩小您的图像(将来可能出现,但目前图像不会被修改)。

JPEG是一种非常有效的压缩方法。图像质量略有降低,但文件大小急剧缩小。不适合艺术线条,但非常适合照片。
PDFsharp可选择将LZ压缩应用于JPEG图像,但通常仅增加1%到5%。

由您来缩放图像。如果你选择JPEG,你必须决定你需要哪种JPEG质量 - 质量越低,图像越小。

您可以尝试使用TIFF或PNG图像。 PDFshavert在嵌入PDF时也会应用LZ压缩,但在大多数情况下,JPEG会获得更好的压缩效果。

如果没有看到带有真实图像的真实PDF,我只能提供有关PDFsharp如何处理图像的一般答案。