PDF文件内部结构:decode params

Internal structure of PDF file: decode params

解码的下一个参数是什么意思?

<</DecodeParms<</Columns 4/Predictor 12>>/Filter/FlateDecode/ID[<4DC888EB77E2D649AEBD54CA55A09C54><227DCAC2C364E84A9778262D41602AD4>]/Info 37 0 R/Length 69/Root 39 0 R/Size 38/Type/XRef/W[1 2 1]>>

我知道,Filter/FlateDecode -- 它是过滤器,用于压缩流。但是 ID、Info、Length、Root、Size 是什么?这些参数是否与 compression/decompression 相关?

请查阅 ISO-32000-1:

您正在显示压缩交叉引用的字典 table (/Type/XRef):

7.5.8 交叉引用流

交叉引用流是流对象,包含字典和数据流。

  • Flatedecode: 流的压缩方式。
  • 长度: 这是流中的字节数。您的 PDF 至少是 PDF 1.5 文件,并且具有压缩的外部参照 table.
  • DecodeParms: 包含有关流编码方式的信息。

交叉引用流有一些典型的字典条目:

  • W: 表示单个交叉引用条目中字段大小的整数数组。在你的情况下 [1 2 1].
  • 大小: 比本节或任何更新的节中使用的最高对象数大一的数字。它应等同于预告片字典中的 Size 条目。

我还看到一些条目属于 PDF 文件的 /Root 词典(又名目录):

14.4 文件标识符

File identifiers shall be defined by the optional ID entry in a PDF file’s trailer dictionary. The ID entry is optional but should be used. The value of this entry shall be an array of two byte strings. The first byte string shall be a permanent identifier based on the contents of the file at the time it was originally created and shall not change when the file is incrementally updated. The second byte string shall be a changing identifier based on the file’s contents at the time it was last updated. When a file is first written, both identifiers shall be set to the same value.

14.3.3 文档信息词典

您看到的是对另一个间接对象的引用,该对象是一个名为 Info 字典:

的字典

The optional Info entry in the trailer of a PDF file shall hold a document information dictionary containing metadata for the document.

注意:这个问题不太适合 Whosebug。 Whosebug 是一个可以 post 编程问题的论坛。你的问题不是编程问题。您只是要求我们 copy/paste 引用 ISO-32000-1.