【问题标题】:What the standard used by a "hybrid PDF file"?“混合 PDF 文件”使用什么标准?
【发布时间】:2021-05-02 15:55:11
【问题描述】:

我需要由software tool like Prince or PDFreactor 创建Open 和易于阅读的“带有源内容的PDF”(也称为PDF 混合)...这个DocumentFoundation's FAQ explain what it is a PDF Hybrid,但不说什么标准正在使用:


检测已知混合 PDF 文件的标准将是一个很好的替代方法......但有人说它是 PDF 混合文件中使用的impossible to detect the standard

【问题讨论】:

    标签: pdf hybrid


    【解决方案1】:

    首先,这个 Hybrid PDF 似乎没有在一个独立的标准中指定,即没有相应的 ISO/ETSI/ANSI/... 标准它。

    话虽如此,这显然是 LibreOffice PDF 导出的一个突出特点:

    (来自LibreOffice Writer FAQ on hybrid PDFs

    检查这样一个文件(例如this one)会发现PDF预告片中有额外的条目:

    ...
    trailer
    <</Size 128/Root 126 0 R
    /Info 127 0 R
    /ID [ <518EBB4C2FE2F6B638478335A7ED9CA4>
    <518EBB4C2FE2F6B638478335A7ED9CA4> ]
    /DocChecksum /7B00A6EE0349EB2EA1DFB5ECC5899A7C
    /AdditionalStreams [/application#2Fvnd#2Eoasis#2Eopendocument#2Etext 66 0 R
    ]
    >>
    startxref
    291605
    %%EOF 
    

    对象 66 中引用的附加流确实包含源 OpenOffice 文档。

    显然,支持这些 混合 PDF 文件的应用程序会检查该 AdditionalStreams 预告片条目的值,以及它们是否知道处理给定的文档类型(/application#2Fvnd#2Eoasis#2Eopendocument#2Etext 这里对应于application/vnd.oasis.opendocument.text),它们提供了一种提取嵌入文档并打开它进行编辑的方法。


    注意:除非我忽略了一些 ISO 规范,否则那些额外的条目严格来说是禁止被 PDF 规范 ISO 32000 禁止的:在预告片中可能只有带有键的条目在 ISO 规范中为预告片定义或任何二级名称AdditionalStreamsDocChecksum 都不是 ISO 指定的或二等的。因此,严格来说,那些混合 PDF 是无效的 PDF。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-28
      • 2022-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多