Previous Next


                                                    333
          SECTION 4.7                                                             External Objects



  4.7.1 PostScript XObjects

          Beginning with PDF 1.1, a content stream can include PostScript language frag-
          ments. These fragments are used only when printing to a PostScript output de-
          vice; they have no effect either when viewing the document on-screen or when
          printing it to a non-PostScript device. In addition, applications that understand
          PDF are unlikely to be able to interpret the PostScript fragments. Hence, this ca-
          pability should be used with extreme caution and only if there is no other way to
          achieve the same result. Inappropriate use of PostScript XObjects can cause PDF
          files to print incorrectly.

          Note: Since PDF 1.4 encompasses all of the Adobe imaging model features of the
          PostScript language, there is no longer any reason to use PostScript XObjects. This
          feature is likely to be removed from PDF in a future version.

          A PostScript XObject is an XObject stream whose Subtype entry has the value PS.
          A PostScript XObject dictionary can contain the entries shown in Table 4.38 in
          addition to the usual entries common to all streams (see Table 3.4 on page 62).

                TABLE 4.38 Additional entries specific to a PostScript XObject dictionary
KEY         TYPE          VALUE

Type        name          (Optional) The type of PDF object that this dictionary describes; if present, must be
                          XObject for a PostScript XObject.

Subtype     name          (Required) The type of XObject that this dictionary describes; must be PS for a Post-
                          Script XObject.
                          Note: Alternatively, the value of this entry may be Form, with an additional Subtype2
                          entry whose value is PS.

Level1      stream        (Optional) A stream whose contents are to be used in place of the PostScript
                          XObject’s stream when the target PostScript interpreter is known to support only
                          LanguageLevel 1.

          When a PDF content stream is translated into the PostScript language, any Do
          operation that references a PostScript XObject is replaced by the contents of the
          XObject stream itself. The stream is copied without interpretation. The PostScript
          fragment may use Type 1 and TrueType fonts listed in the Font subdictionary of
          the current resource dictionary (see Section 3.7.2, “Resource Dictionaries”), ac-
          cessing them by their BaseFont names using the PostScript findfont operator. The
          fragment may not use other types of fonts listed in the Font subdictionary. It

Previous Next