代码之家  ›  专栏  ›  技术社区  ›  RocketNuts

使用poppler拆分和重新连接PDF会导致更大的文件?(尽管剥离元数据)

  •  0
  • RocketNuts  · 技术社区  · 6 年前

    如果我有一个多页的PDF,并使用优秀的 poppler package (安装在MacOS上使用 brew install poppler 像这样:

    pdfseparate foo.pdf bar-%04d.pdf

    然后重新加入结果栏-.pdf文件,如下所示:

    pdfunite bar-*.pdf baz.pdf

    生成的baz.pdf似乎包含相同的内容,但是 文件要大得多 .

    起初我假设是因为结果中会有重复的元数据或其他东西。但即使我从所有文件中剥离所有元数据,即从输入以及中间条.pdf文件以及生成的输出文件中,使用 exiftool qpdf 这样地:

    # command line steps to strip metadata from (and re-linearize) example.pdf :
    exiftool -all= -overwrite_original example.pdf ;
    mv example.pdf temp.pdf ;
    qpdf --linearize temp.pdf example.pdf
    

    然后 仍然 生成的baz.pdf文件比原始输入大得多。

    造成这种情况的原因是什么?在多页PDF文件中,除了它的纯内容之外还能有什么?假设波普勒的 pdfseparate pdfunite 保持实际内容本身不受影响,并且我对元数据的剥离是正确的。

    或者有可能 PDFACT 磷镁石 不知何故,以一种无损但次优的方式分解和重构PDF内容?(我对PDF文件的内部结构不太了解,但我可以想象有很多不同的方法可以对相同的内容进行编码)

    顺便说一下,如果我使用 exiftool somefile.pdf 它确实没有显示任何元数据(线性化:是的)。

    1 回复  |  直到 6 年前
        1
  •  2
  •   Mihai Iancu    6 年前

    PDF页面使用共享资源,如字体、图像等。拆分文档时,共享资源将进入每个结果文件。合并这些文件时,资源可能不会被合并回去(这取决于合并工具是如何实现的),从而产生一个更大的文件。

    推荐文章