SECTION 3.2
63
Objects
KEY
TYPE
VALUE
DL
integer
(Optional; PDF 1.5)
A non-negative integer representing the number
of bytes in the decoded (defiltered) stream. It can be used to deter-
mine, for example, whether enough disk space is available to write a
stream to a file.
This value should be considered a hint only; for some stream filters, it
may not be possible to determine this value precisely.
3.2.8 Null Object
The
null object
has a type and value that are unequal to those of any other object.
There is only one object of type null, denoted by the keyword
null
. An indirect
object reference (see Section 3.2.9, “Indirect Objects”) to a nonexistent object is
treated the same as a null object. Specifying the null object as the value of a
dictionary entry (Section 3.2.6, “Dictionary Objects”) is equivalent to omitting
the entry entirely.
3.2.9 Indirect Objects
Any object in a PDF file may be labeled as an
indirect object.
This gives the object
a unique
object identifier
by which other objects can refer to it (for example, as an
element of an array or as the value of a dictionary entry). The object identifier
consists of two parts:
•
A positive integer
object number.
Indirect objects are often numbered sequen-
tially within a PDF file, but this is not required; object numbers may be
assigned in any arbitrary order.
•
A non-negative integer
generation number.
In a newly created file, all indirect
objects have generation numbers of 0. Nonzero generation numbers may be in-
troduced when the file is later updated; see Sections 3.4.3, “Cross-Reference
Together, the combination of an object number and a generation number
uniquely identifies an indirect object. The object retains the same object number
and generation number throughout its existence, even if its value is modified.