bbc

Adobe® Supplement to the
ISO 32000
BaseVersion: 1.7
ExtensionLevel: 3
Adobe® Acrobat® SDK
June 2008 Version 9.0
© 2008 Adobe Systems Incorporated. All rights reserved.
Adobe® Acrobat® 9.0 SDK Adobe Supplement to the ISO 32000
Edition 1.0, June 2008
If this guide is distributed with software that includes an end user agreement, this guide, as well as the software described in it, is furnished
under license and may be used or copied only in accordance with the terms of such license. Except as permitted by any such license, no part
of this guide may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, recording,
or otherwise, without the prior written permission of Adobe Systems Incorporated. Please note that the content in this guide is protected
under copyright law even if it is not distributed with software that includes an end-user license agreement.
The content of this guide is furnished for informational use only, is subject to change without notice, and should not be construed as a
commitment by Adobe Systems Incorporated. Adobe Systems Incorporated assumes no responsibility or liability for any errors or
inaccuracies that may appear in the informational content contained in this guide.
Please remember that existing artwork or images that you may want to include in your project may be protected under copyright law. The
unauthorized incorporation of such material into your new work could be a violation of the rights of the copyright owner. Please be sure to
obtain any permission required from the copyright owner.
Any references to company names, company logos and user names in sample material or sample forms included in this documentation
and/or software are for demonstration purposes only and are not intended to refer to any actual organization or persons.
Adobe, the Adobe logo, and Acrobat are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States
and/or other countries.
Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, USA.
Notice to U.S. Government End Users. The Software and Documentation are “Commercial Items,” as that term is defined at 48 C.F.R. §2.101,
consisting of “Commercial Computer Software” and “Commercial Computer Software Documentation,” as such terms are used in 48 C.F.R.
§12.212 or 48 C.F.R. §227.7202, as applicable. Consistent with 48 C.F.R. §12.212 or 48 C.F.R. §§227.7202-1 through 227.7202-4, as applicable,
the Commercial Computer Software and Commercial Computer Software Documentation are being licensed to U.S. Government end users
(a) only as Commercial Items and (b) with only those rights as are granted to all other end users pursuant to the terms and conditions herein.
Unpublished-rights reserved under the copyright laws of the United States. Adobe Systems Incorporated, 345 Park Avenue, San Jose, CA
95110-2704, USA. For U.S. Government End Users, Adobe agrees to comply with all applicable equal opportunity laws including, if
appropriate, the provisions of Executive Order 11246, as amended, Section 402 of the Vietnam Era Veterans Readjustment Assistance Act of
1974 (38 USC 4212), and Section 503 of the Rehabilitation Act of 1973, as amended, and the regulations at 41 CFR Parts 60-1 through 60-60,
60-250, and 60-741. The affirmative action clause and regulations contained in the preceding sentence shall be incorporated by reference.
3
Contents
Preface.......................................................................................................................................... 5
What’s in this guide? ..................................................................................................................................................................... 5
Who should read this guide? ..................................................................................................................................................... 5
Related documentation............................................................................................................................................................... 5
Transitioning the PDF Specification to ISO ............................................................................... 6
Extensions to the PDF specification ........................................................................................................................................ 6
Behavior of PDF consumers that does not support an extension.......................................................................... 6
Subsequent extensions to a BaseVersion ....................................................................................................................... 6
Plans related to the first version of ISO 32000............................................................................................................... 7
Plans related to subsequent versions of ISO 32000 .................................................................................................... 7
Part I: Extensions to the PDF Specification
What’s New................................................................................................................................... 9
Adobe BaseVersion 1.7 and ExtensionLevel 3 ..................................................................................................................... 9
Extension identification......................................................................................................................................................... 9
Bates numbering page artifact ........................................................................................................................................... 9
Features for Architecture, Engineering and Construction........................................................................................ 9
Accessibility.............................................................................................................................................................................. 10
Portable collections............................................................................................................................................................... 10
Rich media................................................................................................................................................................................ 10
Seed values and locking a document for digital signatures .................................................................................. 10
Encryption and passwords ................................................................................................................................................. 10
Barcode form fields ............................................................................................................................................................... 11
PDF/A-2 and XML form data .............................................................................................................................................. 11
Adobe BaseVersion 1.7 and ExtensionLevel 1 ................................................................................................................... 11
PRC in 3D annotations.......................................................................................................................................................... 11
Other........................................................................................................................................................................................... 11
Syntax (Chapter 3 in PDF Reference) ....................................................................................... 13
3.5 Encryption................................................................................................................................................................................ 13
3.5.1 General Encryption Algorithm................................................................................................................................ 15
3.5.2 Standard Security Handler ....................................................................................................................................... 16
3.5.3 Public-Key Security Handlers .................................................................................................................................. 21
3.5.4 Crypt Filters.................................................................................................................................................................... 22
3.6 Document Structure............................................................................................................................................................. 23
3.6.1 Document Catalog...................................................................................................................................................... 23
3.6.2 Page Tree........................................................................................................................................................................ 23
3.6.3 Name Dictionary.......................................................................................................................................................... 23
3.6.4 Extensions to PDF........................................................................................................................................................ 23
3.10 File Specifications ............................................................................................................................................................... 26
3.10.2 File Specification Dictionaries .............................................................................................................................. 26
Graphics (Chapter 4 in PDF Reference) .................................................................................... 27
4.8 Images ....................................................................................................................................................................................... 27
4.8.4 Image Dictionaries ...................................................................................................................................................... 27
Adobe Acrobat SDK
Adobe® Supplement to the ISO 32000 4
4.9 Form XObjects.................................................................................................................................................................. 27
Interactive Features (Chapter 8 in PDF Reference) ................................................................. 28
8.2 Document-Level Navigation............................................................................................................................................. 28
8.1 Viewer Preferences......................................................................................................................................................... 28
8.2.4 Collections...................................................................................................................................................................... 28
8.4 Annotations............................................................................................................................................................................. 37
8.4.5 Annotation Types ........................................................................................................................................................ 38
8.5 Actions....................................................................................................................................................................................... 40
8.5.3 Action Types.................................................................................................................................................................. 40
8.6 Interactive Forms................................................................................................................................................................... 42
8.6.3 Field Types ..................................................................................................................................................................... 43
8.6.7 XFA Forms ...................................................................................................................................................................... 48
8.8 Measurement Properties .................................................................................................................................................... 48
8.8.1 Geospatial Features .................................................................................................................................................... 49
Multimedia Features (Chapter 9 in PDF Reference)................................................................ 55
9.5 3D Artwork............................................................................................................................................................................... 55
9.5.1 3D Annotations ............................................................................................................................................................ 55
9.5.2 3D Streams..................................................................................................................................................................... 56
9.5.3 3D Views ......................................................................................................................................................................... 57
9.5.3 3D Views (Node Dictionaries).................................................................................................................................. 57
9.5.6 Persistence of 3D Measurements and Markups ............................................................................................... 59
9.6 Rich Media................................................................................................................................................................................ 76
9.6.1 RichMedia Annotations............................................................................................................................................. 76
Document Interchange (Chapter 10 in PDF Reference)........................................................ 100
10.7 Tagged PDF........................................................................................................................................................................ 100
10.7.1 Tagged PDF and Page Content......................................................................................................................... 100
Bibliography ............................................................................................................................ 102
Resources from Adobe Systems Incorporated............................................................................................................... 102
Other Resources......................................................................................................................................................................... 103
Part II: Reference Errors and Implementation Notes
Implementation Notes ............................................................................................................ 106
Implementation Notes to the PDF Reference, sixth edition...................................................................................... 106
Implementation Notes to Adobe Extensions to ISO 32000....................................................................................... 130
Index ......................................................................................................................................... 133
5
Preface
The Portable Document Format (PDF) is a file format for representing documents in a manner
independent of the application software, hardware, and operating system used to create them and of the
output device on which they are to be displayed or printed.
What’s in this guide?
This document describes Adobe’s extension and implementation notes relative to the
soon-to-be-published ISO 32000, Document management, Portable document format, PDF 1.7. Until
ISO 32000 is published, this document will reference the PDF specification represented by the PDF
Reference, sixth edition, version 1.7 (Nov. 2006) and the PDF Redaction: Addendum to the PDF Reference, sixth
edition, version 1.7. The next version of this document to be released after ISO 32000 is published will
reference specifications in ISO 32000.
The extensions are to the PDF document format. Adobe plans to submit these extensions to ISO as
candidates for inclusion into the next version of the ISO 32000 specification. The implementation notes are
differences between the PDF specification, including the extensions, and what is implemented in Adobe
PDF applications, such as Adobe Acrobat.
Who should read this guide?
This guide is intended for developers of applications that consume or produce PDF content. The
implementation notes are intended for developers who need more detail about the Adobe Acrobat family
of products.
Related documentation
The resources in this table can help you understand the material in this document. These documents, with
the exception of ISO 32000, are available through the Adobe PDF Technology Center (select “PDF
Specification, Sixth Edition”).
For information about Resource
PDF specification PDF Reference, sixth edition, version 1.7
PDF specification for redaction annotations PDF Redaction: Addendum to the PDF Reference, sixth
edition, version 1.7
Corrections to the PDF specification Errata for the PDF Reference, sixth edition, version 1.7
Changes made to content taken from Adobe PDF
1.7 Reference and ported into the ISO32000
draft.
ISO 32000 - Summary of Changes,
About the ISO Draft of the PDF 1.7 Reference
ISO version of the PDF Reference. This document
is not yet publicly available.
ISO 32000
6
Transitioning the PDF Specification to ISO
Adobe has transferred responsibility for the PDF specification to the International Standards Organization
(ISO). As of this document’s publication date, ISO 32000, Document management, Portable document
format, PDF 1.7 has not been published. Consequently, this document references the last PDF
specifications published by Adobe, which are the PDF Reference, sixth edition, version 1.7 (Nov. 2006), the
PDF Redaction: Addendum to the PDF Reference, sixth edition, version 1.7, and the Errata for the PDF Reference,
sixth edition, version 1.7.
Extensions to the PDF specification
The language extensions described in this guide may be submitted to ISO as proposed changes to the PDF
specification. ISO may or may not accept these Adobe extensions. If accepted, the exact syntax and
semantics of the ISO version of these extensions may differ from that described in this guide.
In the past, Adobe identified extensions to the PDF specification with PDF version identifiers, such as
PDF 1.7. Now that ISO has responsibility for the PDF specification, such identification is no longer within
Adobe’s control. As an alternative, Adobe will use the extensions mechanisms defined for ISO 32000-1 by
which Adobe and other companies can identify extensions to the PDF specification.
The new convention lets companies and other entities identify their own extensions relative to a base
version of PDF. Additionally, the convention identifies extension levels relative to that base version. For
normative information on the use of base versions and extension levels in a PDF document, see “3.6.1
Document Catalog” on page 23.
Behavior of PDF consumers that does not support an extension
The extension convention also relies on the behavior of PDF consuming applications when they encounter
PDF properties they do not recognize. The Section 2.2.8 “Extensibility” in the PDF Reference, sixth edition,
version 1.7 describes this behavior as follows:
PDF is designed to be extensible. Not only can new features be added, but applications based on
earlier versions of PDF can behave reasonably when they encounter newer features that they do not
understand. Appendix H describes how a PDF consumer application should behave in such cases.
And Appendix H in PDF Reference, sixth edition, version 1.7 provides this additional guidance:
Both viewer applications and PDF have been designed to enable users to view everything in the
document that the viewer application understands and to ignore or inform the user about objects not
understood. The decision whether to ignore or inform the user is made on a feature-by-feature basis.
Subsequent extensions to a BaseVersion
Each subsequent company-specific extension level for a particular PDF base version is cumulative. In other
words, PDF-processing applications that support the third extension level for a particular base level shall
also support the first and second extension levels.
It is Adobe’s intent to increment the base version extensions only with major releases of its PDF-processing
applications.
Adobe Acrobat SDK Transitioning the PDF Specification to ISO
Adobe® Supplement to the ISO 32000 Plans related to the first version of ISO 32000 7
Plans related to the first version of ISO 32000
Adobe expects that the first version of ISO 32000 will convey the same requirements as the PDF Reference,
sixth edition, version 1.7. Because of this similarity and to avoid unnecessary confusion, Adobe will continue
using 1.7 as its base version until the second release of ISO 32000.
For information about changes Adobe made to PDF Reference, sixth edition, version 1.7 to become the ISO
Draft International Standard (DIS), see ISO 32000 — Summary of Changes. This document is available
through www.adobe.com/go/pdf_developer (select “PDF Specification, Sixth Edition”).
Plans related to subsequent versions of ISO 32000
After the second version of ISO 32000 is released, Adobe will use a new base version value that reflects the
new Version value specified by that second version of ISO 32000. Features that are included in the second
ISO version will henceforth be considered as features of the ISO version and the designation (in the PDF
files) as being Adobe extensions will no longer be used.
Extensions described for the 1.7 base version that are incorporated into the second version of ISO 32000
will not be included in future versions of this document. Extensions described in a prior release that are
not incorporated into ISO 32000 will remain in this document with their original base version and
extension level.
The third and subsequent releases of ISO 32000 will repeat this pattern.
8
Part I: Extensions to the PDF Specification
9
What’s New
This section provides an overview of the extensions to the PDF specification.
Adobe BaseVersion 1.7 and ExtensionLevel 3
The Adobe PDF extensions for BaseVersion 1.7 and Adobe ExtensionLevel 3 extend the PDF specification
with the features introduced here. Each feature description references the format changes that make the
feature possible.
Extension identification
Extension identification lets companies and other entities identify their own extensions relative to a base
version of PDF. Additionally, the convention identifies extension levels relative to that base version. (See
“TABLE 3.25 Entries in the catalog dictionary” on page 23.)
Bates numbering page artifact
The Bates number page artifact lets PDF processors override the starting point for the Bates Numbering
for the pages in a PDF document. This feature ensures consistent Bates Numbering for pages that were
extracted from another PDF document. (See “TABLE 10.17 Property list entries for artifacts” on page 100.)
Features for Architecture, Engineering and Construction
Enforced viewer preferences
Enforced viewer preferences instruct a conforming reader that the user cannot override viewer settings
specified in PDF documents. Examples of such viewer preferences are default print scaling value and
number of copies.
In one application of this feature, consider a PDF document that contains architectural or engineering
drawings. If the scaling of such a document were changed for printing, the document may be
compromised. This feature can be used to enforce default print scaling, which ensures that the document
is printed with the default scaling. (See “Table 8.1 Entries in a viewer preferences dictionary” on page 28.)
Persistence of 3D measurements and markup
3D measurement and markup data can now be stored in the PDF file, facilitating the communication of 3D
shape information between users. The introduction of 3D annotations to the PDF format lets users create
views of 3D data to illustrate important 3D features. The addition of 3D measurement definitions also lets
users more accurately describe 3D data. This capability is a key step in using a PDF document as the
primary mechanism for transferring information in manufacturing and AEC workflows. (See “9.5.6
Persistence of 3D Measurements and Markups” on page 59.)
Adobe Acrobat SDK What’s New
Adobe® Supplement to the ISO 32000 Accessibility 10
Accessibility
A PDF document can specify the order in which user tabs cause attention to move from one annotation to
the next. (See “TABLE 3.27 Entries in a page object” on page 23.)
Portable collections
The following are changes to the PDF language in support of portable collections that use a SWF
file-based presentation of the collection contents:
● New entries in the collection dictionary support SWF file-driven layouts of a collection. (See Table 8.6
on page 29.) The SWF file that manages the presentation is called a navigator. The Navigator entry is
an indirect reference to a navigator dictionary, which contains information about the layout to be used
to present the collection. For information about the navigator dictionary, see “Navigators” on page 34.
● Users can decouple the splitter orientation from the View key in a collection dictionary. This
enhancement provides a details view or tile view with either a horizontal or vertical split. (See Table 8.6
of Section 8.2.4 on page 29.)
● Introduction of a Thumb entry to the file specification dictionary. (See Table 3.41 on page 26.) The entry
is used to create thumbnail images in conjunction with portable collections that use navigators.
● The CompressedSize value of the Subtype key in the collection field dictionary is used to display
the compressed file sizes for embedded files. (See Table 8.8 on page 30.)
● The new Colors entry in a collection dictionary (Table 8.6 on page 29) takes as its value a collection
colors dictionary (Table 8.6a on page 31), which is used to specify a list of colors that a navigator should
use in its layout of a portable collection.
Rich media
There is a new annotation subtype of RichMedia. (See Section 8.4.5 “Annotation Types” on page 38.) The
rich media annotation means that Flash applications, video, audio, and other multimedia can be attached
to a PDF document. The rich media annotation incorporates the existing 3D annotation structure to
support multiple multimedia file assets, including Flash video and compatible variations on the H.264
format. The new constructs allow a two-way scripting bridge between the Flash player and Acrobat. There
is support for generalized linking of a Flash application state to a comment or view, which enables video
commenting. Finally, actions can be linked to video chapter points. (See the section on “Rich Media”
beginning on page 76.)
Seed values and locking a document for digital signatures
Seed values specify constraining information that are used at the time a digital signature is applied.
Acrobat 9.0 has two new seed values. LockDocument supports controlling the user interface for locking
documents after the signature is applied. AppearanceFilter filters signature appearances that can be
used when signing or certifying a document by name. Additionally, a new entry in the signature field lock
dictionary supports the locking after signature feature. (See “Signature Fields” on page 43.)
Encryption and passwords
For Acrobat 9.0, encryption of data uses the AES-256 algorithms. In addition, a new password algorithm
supports the use of Unicode-based passwords and passphrases.
There are three parts to the new encryption and password design:
Adobe Acrobat SDK What’s New
Adobe® Supplement to the ISO 32000 Barcode form fields 11
● A new AES variant (AESV3) uses AES-256 encryption.
● A new Crypt Filter Version code (5) enables 256-bit (32-byte) keys and does not try to mix the Object ID
with the encryption key.
● A new Crypt Revision value (5) activates a new Password algorithm.
See “3.5 Encryption” on page 13.
Barcode form fields
The PDF language additions that support barcode form fields are now documented for Adobe extension
level 3. The barcodes feature adds an entry to the widget annotation dictionary. (See Table 8.39 on
page 39.) This entry takes as its value a PaperMetaData generation parameters dictionary. (See Table 8.39b
on page 46.) It also adds an entry to the form field dictionary. (See Table 8.39a on page 46.) For more
information about barcode form fields, see the “Barcode Fields” on page 45.
PDF/A-2 and XML form data
A new entry, XFAResources, is added to the names dictionary. (See Table 3.28 on page 23.) This entry can
be used to save XML form data within a PDF/A-2 conforming file. (See “Incorporation of XFA Datasets into
a PDF/A-2 Conforming File” on page 48.)
Adobe BaseVersion 1.7 and ExtensionLevel 1
Acrobat 8.1 extended the PDF language for several 3D-related features. These extensions occurred before
the BaseVersion and ExtensionLevel properties were established. The Acrobat 8.1 PDF extensions were
finalized in April 2007 and are included in the Adobe PDF extensions for Adobe BaseVersion 1.7 and
ExtensionLevel 1.
These extensions were originally specified in Acrobat Implementation of the PDF Specification, which is
available at the Adobe PDF Technology Center. Select the PDF Specification link.
PRC in 3D annotations
Starting with Acrobat 8.1, 3D annotations can specify streams that conform to the PRC file format. Acrobat
8.1 introduced extended existing PDF features to add support for PRC and to extend support for U3D. PRC
is a new highly-compressed CAD visualization format. U3D is another standard for 3D representations.
(See TABLE 9.39 Entries in a 3D view dictionary on page 57, and TABLE 9.47 Entries in a 3D node dictionary
on page 58.)
Other
Universal 3D file format
PDF 1.6 and later provide support for ECMA-363, Universal 3D file format, edition 1. Acrobat 8.1 extends
this support to ECMA-363, Universal 3D file format, 3rd Edition. This feature affects the bibliography. (See
“Bibliography” on page 102.)
Adobe Acrobat SDK What’s New
Adobe® Supplement to the ISO 32000 Other 12
Support for rich text conventions
Acrobat 8.1 extends support for the rich text conventions described in XML Forms Architecture (XFA)
versions 2.5 and 2.6. (See “Table 8.73 Attributes of the <body> element” on page 42.)
13
Syntax (Chapter 3 in PDF Reference)
This section describes extensions to the PDF specification contained in the PDF Reference, sixth edition,
version 1.7 and in ISO 32000 (Document management - Portable document format - PDF 1.7). The latter
document is the version of the PDF specification that has been ratified by the ISO. These documents differ
as described in About the ISO Draft of the PDF 1.7 Reference.
Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. For
convenience, the phrase BaseVersion 1.7, Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3
throughout this document.
3.5 Encryption
On page 116, modify the paragraph as shown below where unchanged content is shown in gray.
The V entry, in specifying which algorithm to use, determines the length of the encryption key, on which
the encryption (and decryption) of data in a PDF file is based. For V values 2 and 3, the Length entry
specifies the exact length of the encryption key. In PDF 1.5, a value of 4 for V permits the security handler
to use its own encryption and decryption algorithms and to specify crypt filters with a key length of 128
bits (16 bytes) to use on specific streams (see Section 3.5.4, “Crypt Filters”). For extension level 3, a value of
5 for V permits the specification of crypt filters with a key length of 256 bits (32 bytes).
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.5 Encryption 14
Modify Table 3.18 as shown below where only entries that changed are listed in the table. The V entry has a new
value of 5; the only change to the other listed entries (StmF, StrF, and EFF) is to qualify them for use when V is
5. Unchanged text is shown in gray.
TABLE 3.18 Entries common to all encryption dictionaries
KEY TYPE DESCRIPTION
V number (Optional but strongly recommended) A code specifying the algorithm to
be used in encrypting and decrypting the document:
0, An algorithm that is undocumented and no longer supported, and
whose use is strongly discouraged. Old files may use this value but
no new files should be written using 0.
1, Algorithm 3.1 on page 119, with an encryption key length of 40
bits; see below.
2, (PDF 1.4) Algorithm 3.1, but permitting encryption key lengths
greater than 40 bits.
3, (PDF 1.4) An unpublished algorithm that permits encryption key
lengths ranging from 40 to 128 bits; see implementation note 22 in
Appendix H.
4, (PDF 1.5) The security handler defines the use of encryption and
decryption in the document, using the rules specified by the CF,
StmF, and StrF entries using algorithm 3.1 with a key length of 128
bits.
5, (ExtensionLevel 3) The security handler defines the use of
encryption and decryption in the document, using the rules
specified by the CF, StmF, and StrF entries using algorithm 3.1a
with a key length of 256 bits.
The default value if this entry is omitted is 0, but a value of 1 or greater is
strongly recommended.
(See implementation note 23 in Appendix H.)
StmF name (Optional; meaningful only when the value of V is 4, or 5 for
ExtensionLevel 3) The name of the crypt filter that is used by default
when decrypting streams. The name must be a key in the CF dictionary
or a standard crypt filter name specified in Table 3.23. All streams in the
document, except for cross-reference streams (see Section 3.4.7,
“Cross-Reference Streams”) or streams that have a Crypt entry in their
Filter array (see Table 3.5), are decrypted by the security handler,
using this crypt filter.
Default value: Identity.
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.5.1 General Encryption Algorithm 15
3.5.1 General Encryption Algorithm
On page 119, modify the paragraph that begins with “PDF’s standard encryption methods also make use…” as
well as the paragraph that follows as shown below. Unchanged content is shown in gray. One sentence is struck
out and replaced by another to include Encrypt version 5, introduced in extension level 3.
For Encrypt versions 1-4, PDF’s standard encryption methods also make use of the MD5 message-digest
algorithm for key generation purposes (described in Internet RFC 1321, The MD5 Message-Digest
Algorithm; see the Bibliography). Encrypt version 5 does not use MD5.
The encryption of data in a PDF file is based on the use of an encryption key computed by the security
handler. Different security handlers compute the encryption key using their own mechanisms. Regardless
of how the key is computed, its use in the encryption of data is always the same (see Algorithm 3.1).
Because the RC4 algorithm and AES algorithms are symmetric, this same sequence of steps can be used
both to encrypt and to decrypt data. Encryption of data uses one of two algorithms. For Encrypt versions
1-4 (through PDF version 1.7), algorithm 3.1 is used. For Encrypt version 5 (extension level 3),
algorithm3.1a is used. The difference is that algorithm3.1a uses the starting key directly and does not
modify the key at all. Algorithm3.1a is used only with the AES algorithm and 256-bit keys.
Following Algorithm3.1, insert Algorithm3.1a, to be used when the value of the V key is 5.
StrF name (Optional; meaningful only when the value of V is 4, or 5 for
ExtensionLevel 3) The name of the crypt filter that is used when
decrypting all strings in the document. The name must be a key in the
CF dictionary or a standard crypt filter name specified in Table 3.23.
Default value: Identity.
EFF name (Optional; meaningful only when the value of V is 4, or 5 for
ExtensionLevel 3) The name of the crypt filter that should be used by
default when encrypting embedded file streams; it must correspond to
a key in the CF dictionary or a standard crypt filter name specified in
Table 3.23.
This entry is provided by the security handler. (See implementation note
24 in Appendix H.) Applications should respect this value when
encrypting embedded files, except for embedded file streams that have
their own crypt filter specifier. If this entry is not present, and the
embedded file stream does not contain a crypt filter specifier, the
stream should be encrypted using the default stream crypt filter
specified by StmF
TABLE 3.18 Entries common to all encryption dictionaries
KEY TYPE DESCRIPTION
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.5.2 Standard Security Handler 16
Algorithm 3.1a Encryption of data using the AES algorithm
1. Use the 32-byte file encryption key for the AES-256 symmetric key algorithm, along with the string or
stream data to be encrypted.
Use the AES algorithm in Cipher Block Chaining (CBC) mode, which requires an initialization vector. The
block size parameter is set to 16 bytes, and the initialization vector is a 16-byte random number that is
stored as the first 16 bytes of the encrypted stream or string.
The output is the encrypted data to be stored in the PDF file.
3.5.2 Standard Security Handler
Revise the first paragraph on page 122 to read as follows.
If revision version 4 or 5 is specified, the standard security handler supports crypt filters (see Section 3.5.4,
“Crypt Filters”). The support is limited to the Identity crypt filter (see Table 3.23) and crypt filters named
StdCF whose dictionaries contain a CFM value of V2 or AESV2 and an AuthEvent value of DocOpen. For
version 4, the filter CFM value may be V2 (RC4) or AESV2 (AES-128). For version 5, the filter CFM value shall
be AESV3 (AES-256).
Standard Encryption Dictionary
Table 3.19 shows the encryption dictionary entries for the standard security handler (in addition to those
in Table 3.18).
Add three new entries, OE, UE and Perms, to Table 3.19, and modify the other entries as shown. Unchanged
content is shown in gray.
TABLE 3.19 Additional encryption dictionary entries for the standard security handler
KEY TYPE VALUE
R number (Required) A number specifying which revision of the
standard security handler should be used to interpret this
dictionary:
● 2 if the document is encrypted with a V value less than
2 (see Table 3.18) and does not have any of the access
permissions set (by means of the P entry, below) that
are designated “Revision 3 or greater” in Table 3.20
● 3 if the document is encrypted with a V value of 2 or 3,
or has any “Revision 3 or greater” access permissions
set
● 4 if the document is encrypted with a V value of 4
● 5 (ExtensionLevel 3) if the document is encrypted with a
V value of 5
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.5.2 Standard Security Handler 17
O string (Required) A string used in computing the encryption key.
The value of the string depends on the value of the
revision number, the R entry described above.
The value of R is 4 or less: A 32-byte string, based on
both the owner and user passwords, that is used in
computing the encryption key and in determining
whether a valid owner password was entered.
The value for R is 5: (ExtensionLevel 3) A 48-byte string,
based on the owner and user passwords, that is used in
computing the encryption key and in determining
whether a valid owner password was entered.
For more information, see “Encryption Key Algorithm” on
page 124 and “Password Algorithms” on page 126.
U string (Required) A string based on the user password. The value
of the string depends on the value of the revision number,
the R entry described above.
The value of R is 4 or less: A 32-byte string, based on
the user password, that is used in determining
whether to prompt the user for a password and, if so,
whether a valid user or owner password was entered.
The value for R is 5: (ExtensionLevel 3) A 48-byte string,
based on the user password, that is used in
determining whether to prompt the user for a
password and, if so, whether a valid user password was
entered.
For more information, see “Password Algorithms” on page
126.
OE string (ExtensionLevel 3; required if R is 5) A 32-byte string, based
on the owner and user passwords, that is used in
computing the encryption key.
For more information, see “Password Algorithms” on page
126.
UE string (ExtensionLevel 3; required if R is 5) A 32-byte string, based
on the user password, that is used in computing the
encryption key.
For more information, see “Password Algorithms” on page
126.
P integer (Required) A set of flags specifying which operations are
permitted when the document is opened with user access
(see Table 3.20).
TABLE 3.19 Additional encryption dictionary entries for the standard security handler
KEY TYPE VALUE
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.5.2 Standard Security Handler 18
Encryption Key Algorithm
Modify the first paragraph of this section as shown.
As noted earlier, one function of a security handler is to generate an encryption key for use in encrypting
and decrypting the contents of a document. Given a password string, the standard security handler
computes an encryption key. For revision 4 and earlier, the algorithm is as shown in Algorithm 3.2. For
revision 5, the algorithm is as shown in Algorithm 3.2a.
Algorithm 3.2 Computing an encryption key
1. The password string is generated from OS codepage characters by first converting the string to
PDFDocEncoding. If the input is Unicode, first convert to a codepage encoding, and then to
PDFDocEncoding for backward compatibility.
2. Initialize the MD5 hash function and pass the result of step 1 as input to this function.
3. Pass the value of the encryption dictionary’s O entry to the MD5 hash function. (Algorithm 3.3 shows
how the O value is computed.)
4. Treat the value of the P entry as an unsigned 4-byte integer and pass these bytes to the MD5 hash
function, low-order byte first.
5. Pass the first element of the file’s file identifier array (the value of the ID entry in the document’s trailer
dictionary; see Table 3.13 on page 97) to the MD5 hash function. (See implementation note 26 in
Appendix H.)
6. (Revision 4 or greater) If document metadata is not being encrypted, pass 4 bytes with the value
0xFFFFFFFF to the MD5 hash function.
7. Finish the hash.
8. (Revision 3 or greater) Do the following 50 times: Take the output from the previous MD5 hash and pass
the first n bytes of the output as input into a new MD5 hash, where n is the number of bytes of the
encryption key as defined by the value of the encryption dictionary’s Length entry.
Perms string (ExtensionLevel 3; required if R is 5) A16-byte string,
encrypted with the file encryption key, that contains an
encrypted copy of the permission flags.
For more information, see “Password Algorithms” on page
126.
EncryptMetadata boolean (Optional; meaningful only when the value of V is 4 or 5;
PDF 1.5) Indicates whether the document-level metadata
stream (see Section 10.2.2, “Metadata Streams”) is to be
encrypted. Applications should respect this value.
Default value: true.
TABLE 3.19 Additional encryption dictionary entries for the standard security handler
KEY TYPE VALUE
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.5.2 Standard Security Handler 19
9. Set the encryption key to the first n bytes of the output from the final MD5 hash, where n is always 5 for
revision 2 but, for revision 3 or greater, depends on the value of the encryption dictionary’s Length
entry.
This algorithm, when applied to the user password string, produces the encryption key used to encrypt or
decrypt string and stream data according to Algorithm 3.1 on page 119. Parts of this algorithm are also
used in the algorithms described below.
Insert Algorithm 3.2a as shown below.
Algorithm 3.2a Computing an encryption key
To understand the algorithm below, it is necessary to treat the O and U strings in the Encrypt dictionary
as made up of three sections. The first 32 bytes are a hash value (explained below). The next 8 bytes are
called the Validation Salt. The final 8 bytes are called the Key Salt.
1. The password string is generated from Unicode input by processing the input string with the SASLprep
(IETF RFC 4013) profile of stringprep (IETF RFC 3454), and then converting to a UTF-8 representation.
2. Truncate the UTF-8 representation to 127 bytes if it is longer than 127 bytes.
3. Test the password against the owner key by computing the SHA-256 hash of the UTF-8 password
concatenated with the 8 bytes of owner Validation Salt, concatenated with the 48-byte U string. If the
32-byte result matches the first 32 bytes of the O string, this is the owner password.
Compute an intermediate owner key by computing the SHA-256 hash of the UTF-8 password
concatenated with the 8 bytes of owner Key Salt, concatenated with the 48-byte U string. The 32-byte
result is the key used to decrypt the 32-byte OE string using AES-256 in CBC mode with no padding and
an initialization vector of zero. The 32-byte result is the file encryption key.
4. Test the password against the user key by computing the SHA-256 hash of the UTF-8 password
concatenated with the 8 bytes of user Validation Salt. If the 32 byte result matches the first 32 bytes of
the U string, this is the user password.
Compute an intermediate user key by computing the SHA-256 hash of the UTF-8 password
concatenated with the 8 bytes of user Key Salt. The 32-byte result is the key used to decrypt the 32-byte
UE string using AES-256 in CBC mode with no padding and an initialization vector of zero. The 32-byte
result is the file encryption key.
5. Decrypt the 16-byte Perms string using AES-256 in ECB mode with an initialization vector of zero and
the file encryption key as the key. Verify that bytes 9-11 of the result are the characters ‘a’, ‘d’, ‘b’. Bytes
0-3 of the decrypted Perms entry, treated as a little-endian integer, are the user permissions. They
should match the value in the P key.
Password Algorithms
Revise the opening paragraphs of this section as indicated below.
In addition to the encryption key, the standard security handler must provide the contents of the
encryption dictionary (Table 3.18 on page 116 and Table 3.19 on page 122). The values of the Filter, V,
Length, R, and P entries are straightforward. but the computation of the O (owner password) and U (user
password) entries requires further explanation. Algorithms 3.3 through 3.5 show how the values of the
owner password and user password entries are computed (with separate versions of the latter depending
on the revision of the security handler).The computation of the values for the O (owner password) and U
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.5.2 Standard Security Handler 20
(user password) entries for encryption revision 4 and earlier, and the O, U, OE (owner encryption key), UE
(user encryption key) and Perms (permissions) values for encryption revision 5 require more explanation.
Algorithms 3.3 through 3.5 show how the values of the owner password and user password are computed
for revision 4 and earlier. Algorithms 3.6 and 3.7 show how to determine if a password is valid. Algorithms
3.8 through 3.10 show how the values for revision 5 are computed. Algorithms 3.11 through 3.13 show
how to determine if a revision 5 password is valid.
Passwords for revision 4 and earlier are up to 32 characters in length, and are limited to characters in the
PDFDocEncoding character set (see Appendix D).
Following the above paragraphs comes the listing of algorithms 3.3–3.7. These algorithms and accompanying
text remain unchanged. Then insert the following paragraphs.
In revision 4 and earlier, the result of running the password algorithm was exactly the file encryption key.
In revision 5, the file encryption key is decoupled from the password algorithm to make the owner and
user keys independent. For the algorithms below, first generate a 256-bit (32 byte) encryption key for the
file using a strong random number generator.
All passwords for revision 5 are based on Unicode. Preprocessing of a user-entered password consists first
of normalizing its representation by applying the “SASLPrep” profile (see RFC 4013) of the “stringprep”
algorithm (see RFC 3454) to the supplied password using the Normalize and BIDI options. Next,
convert the password string to UTF-8 encoding, and then truncate to the first 127 bytes if the string is
longer than 127 bytes.
Algorithm 3.8 Computing the encryption dictionary’s U (user password) and UE (user encryption
key) values
1. Generate 16 random bytes of data using a strong random number generator. The first 8 bytes are the
User Validation Salt. The second 8 bytes are the User Key Salt. Compute the 32-byte SHA-256 hash of
the password concatenated with the User Validation Salt. The 48-byte string consisting of the 32-byte
hash followed by the User Validation Salt followed by the User Key Salt is stored as the U key.
2. Compute the 32-byte SHA-256 hash of the password concatenated with the User Key Salt. Using this
hash as the key, encrypt the file encryption key using AES-256 in CBC mode with no padding and an
initialization vector of zero. The resulting 32-byte string is stored as the UE key.
Algorithm 3.9 Computing the encryption dictionary’s O (owner password) and OE (owner
encryption key) values
1. Generate 16 random bytes of data using a strong random number generator. The first 8 bytes are the
Owner Validation Salt. The second 8 bytes are the Owner Key Salt. Compute the 32-byte SHA-256 hash
of the password concatenated with the Owner Validation Salt and then concatenated with the 48-byte
U string as generated in Algorithm 3.8. The 48-byte string consisting of the 32-byte hash followed by
the Owner Validation Salt followed by the Owner Key Salt is stored as the O key.
2. Compute the 32-byte SHA-256 hash of the password concatenated with the Owner Key Salt and then
concatenated with the 48-byte U string as generated in Algorithm 3.8. Using this hash as the key,
encrypt the file encryption key using AES-256 in CBC mode with no padding and an initialization vector
of zero. The resulting 32-byte string is stored as the OE key.
Algorithm 3.10 Computing the encryption dictionary’s Perms (permissions) value
Fill a 16-byte block as follows:
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.5.3 Public-Key Security Handlers 21
1. Extend the permissions (contents of the P integer) to 64 bits by setting the upper 32 bits to all 1’s. (This
allows for future extension without changing the format.)
2. Record the 8 bytes of permission in the bytes 0-7 of the block, low order byte first.
3. Set byte 8 to the ASCII value 'T' or 'F' according to the EncryptMetadata Boolean.
4. Set bytes 9-11 to the ASCII characters 'a', 'd', 'b'.
5. Set bytes 12-15 to 4 bytes of random data, which will be ignored.
6. Encrypt the 16-byte block using AES-256 in ECB mode with an initialization vector of zero, using the file
encryption key as the key. The result (16 bytes) is stored as the Perms string, and checked for validity
when the file is opened.
Algorithm 3.11 Authenticating the User Password
1. Test the password against the user key by computing the SHA-256 hash of the UTF-8 password
concatenated with the 8 bytes of User Validation Salt. If the 32-byte result matches the first 32 bytes of
the U string, this is the user password.
Algorithm 3.12 Authenticating the Owner Password
1. Test the password against the user key by computing the SHA-256 hash of the UTF-8 password
concatenated with the 8 bytes of Owner Validation Salt and the 48 byte U string. If the 32 byte result
matches the first 32 bytes of the O string, this is the user password.
Algorithm 3.13 Validating the Permissions
1. Decrypt the 16 byte Perms string using AES-256 in ECB mode with an initialization vector of zero and
the file encryption key as the key. Verify that bytes 9-11 of the result are the characters ‘a’, ‘d’, ‘b’. Bytes
0-3 of the decrypted Perms entry, treated as a little-endian integer, are the user permissions. They
should match the value in the P key. Byte 8 should match the boolean value of the EncryptMetadata
key.
3.5.3 Public-Key Security Handlers
Public-Key Encryption Algorithms
On page 131, modify the paragraph shown below by inserting the indicated phrase.
The encryption key that is used by Algorithm 3.1 is calculated by means of an a SHA-1 message digest
operation for a key length of 128 bits or a SHA-256 digest operation for a key length of 256 bits that digests
the following data, in order:
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.5.4 Crypt Filters 22
3.5.4 Crypt Filters
Modify Table 3.22 where only changed entries are shown. Unchanged content is shown in gray.
TABLE 3.22 Entries common to all crypt filter dictionaries
KEY TYPE VALUE
CFM name (Optional) The method used, if any, by the consumer application to
decrypt data. The following values are supported:
None The application does not decrypt data but directs the input
stream to the security handler for decryption. (See implementation
note 30 in Appendix H.)
V2 The application asks the security handler for the encryption key
and implicitly decrypts data with Algorithm3.1, using the RC4
algorithm.
AESV2 (PDF 1.6) The application asks the security handler for the
encryption key and implicitly decrypts data with Algorithm3.1, using
the AES-128 algorithm in Cipher Block Chaining (CBC) with padding
mode with a 16-byte block size and an initialization vector that is
randomly generated and placed as the first 16 bytes in the stream or
string. The key size (Length) shall be 128 bits.
AESV3 (ExtensionLevel 3) The application asks the security handler
for the encryption key and implicitly decrypts data with
Algorithm3.1a, using the AES-256 algorithm in Cipher Block
Chaining (CBC) with padding mode with a 16-byte block size and an
initialization vector that is randomly generated and placed as the
first 16 bytes in the stream or string. The key size (Length) shall be
256 bits.
When the value is V2, AESV2, or AESV3, the application may ask once for
this encryption key and cache the key for subsequent use for streams
that use the same crypt filter. Therefore, there must be a one-to-one
relationship between a crypt filter name and the corresponding
encryption key.
Only the values listed here are supported. Applications that encounter
other values should report that the file is encrypted with an
unsupported algorithm.
Default value: None.
Length integer (Required if the value for the V key in Table 3.18 is 2 or 3, optional otherwise)
The bit length of the encryption key. It must be a multiple of 8 in the
range of 40 to 128 256.
Note: Security handlers can define their own use of the Length entry
but are encouraged to use it to define the bit length of the
encryption key.
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.6 Document Structure 23
3.6 Document Structure
3.6.1 Document Catalog
Add the following new entry after the Version entry in Table 3.25
3.6.2 Page Tree
Add new values to the value for the Tabs key in Table 3.27. Unchanged text is shown in gray.
3.6.3 Name Dictionary
Add the new entry XFAResources to Table 3.28.
3.6.4 Extensions to PDF
Add this new section (including the above title) after Section 3.6.3 “Name Dictionary.”
Beginning with BaseVersion 1.7, the extensions dictionary lets developers designate that a given
document contains extensions to PDF. The presence of the extension dictionary in a document indicates
TABLE 3.25 Entries in the catalog dictionary
KEY SUBTYPE DESCRIPTION
Extensions dictionary (ExtensionLevel 3) An extensions dictionary representing information
about the PDF extensions that this document may contain. Table 3.25a
on page 24 describes the entries in the extensions dictionary.
TABLE 3.27 Entries in a page object
KEY TYPE VALUE
Tabs name (Optional; PDF 1.5) A name specifying the tab order that shall be used for
annotations on the page. The possible values shall be R (row order), C
(column order), and S (structure order). Beginning with ExtensionLevel
3, the possible values also include A (annotations array order) and W
(widget order). See Section 8.4, “Annotations” for details.
Regarding annotations array order, see implementation note E-17,
page 132.
TABLE 3.28 Entries in the name dictionary
KEY TYPE VALUE
XFAResources dictionary (Optional; ExtensionLevel 3) A name tree mapping name strings to
streams that contain the <xfa:datasets> element of the XFA. (See
“Incorporation of XFA Datasets into a PDF/A-2 Conforming File” on
page 48.)
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.6.4 Extensions to PDF 24
that it may contain developer-specific PDF properties that extend a particular base version of the PDF
specification.
The extensions dictionary enables developers to identify their own extensions relative to a base version of
PDF. Additionally, the convention identifies extension levels relative to that base version. The intent of this
dictionary is to enable developers of PDF-producing applications to identify company-specific
specifications (such as this one) that PDF-consuming applications use to interpret the extensions.
The intent of the extensions convention is two-fold:
● Enable developers of PDF-producing applications to identify the use of company-specific extensions
they have added to a PDF document and to associate those extensions with their own
publicly-available specifications.
● Enable developers of PDF-consuming applications to determine which extensions are present in a PDF
document and to associate those extensions with the specifications that describe them.
To avoid collisions over company names and company-specific extension names, ISO provides the prefix
name registry. The prefix registry is used to designate a 4-character, case-sensitive prefix that identifies a
company or other entity. This prefix is used for company-specific version identifiers. Additionally, these
prefixes are used to create second-class names of the form ACME_aPropertyName. This registry is available
from the Prefix Registry link in the Related Resources panel at the following Web page:
http://www.adobe.com/go/ISO32000Registry
Table 3.25a shows the entries in an extensions dictionary, where each Prefix name entry is a registered
prefix. The extensions dictionary is the value of the Extensions entry in the document catalog. (See
Table 3.25 on page 23.) The extensions dictionary is part of ISO 32000 (See Section 7.12, “Extensions
Dictionary.”)
TABLE 3.25a Entries in the extensions dictionary
KEY SUBTYPE DESCRIPTION
Type name (Optional) The type of PDF object that this dictionary describes; shall be
Extensions for an extensions dictionary.
Prefix
name
dictionary A developer extensions dictionary representing the extensions added
by a developer. See “Table 3.25b Entries in a developer extensions
dictionary” on page 25.
The prefix name registry is available at
http://www.adobe.com/go/ISO32000Registry
Select from the Prefix Registry link in the Related Resources pane.
For information about prefix names, see Appendix E of the PDF
Reference, sixth edition, version 1.7.
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.6.4 Extensions to PDF 25
Table 3.25b shows the entries in a developer extensions dictionary.
The PDF document that contains the following segment may contain the Adobe-specific extensions
relative to PDF version 1.7.
%PDF 1.7
<</Type /Catalog
/Extensions
<</ADBE
<</BaseVersion /1.7
/ExtensionLevel 3
>>
>>
>>
The PDF document that contains the following segment may contain ACME extension number 4, which is
relative to PDF version 1.7. It may also contain MyCo extension number 1002, which is relative to PDF
version 500 (a hypothetical PDF version number).
%PDF 1.7
<</Type /Catalog
/Extensions
<</ACME
Table 3.25b Entries in a developer extensions dictionary
KEY SUBTYPE VALUE
Type name (Optional) The type of PDF object that this dictionary describes; if
present, will be DeveloperExtensions for a developer
extensions dictionary.
BaseVersion name (Required) A name that designates a version of the PDF
specification and that is syntactically consistent with the Version
key in the Catalog entry. (See Section 3.6.1.) The name value 1.7
designates PDF version 1.7, as defined in PDF Reference, sixth
edition, version 1.7 available from the Adobe PDF Technology
Center.
Note: The version in a PDF file can be specified in two places. The
initial line in the file or in the Catalog. The BaseVersion
value may differ from the version number on the header
line, or as supplied by the Version key in the Catalog. This
is because it reflects the version of the standard that is
extended and not the version of this particular file.
ExtensionLevel integer (Required) An integer that is used in conjunction with the
associated BaseVersion. The interpretation of this value is
defined by the developer. The value of ExtensionLevel for a
particular BaseVersion value shall increase over subsequent
extensions.
Note: Developers can designate lower-order digits to represent
sub-levels. For example, the value 100 could represent 1.0,
or the value 101 could represent 1.1.
Adobe Acrobat SDK Syntax (Chapter 3 in PDF Reference)
Adobe® Supplement to the ISO 32000 3.10 File Specifications 26
<< /BaseVersion /1.7 /ExtensionLevel 4>>
/MyCo
<< /BaseVersion /500 /ExtensionLevel 1002>>
>>
>>
3.10 File Specifications
3.10.2 File Specification Dictionaries
The following entry is added to the file specification dictionary, Table 3.41.
The Thumb entry is used primarily in conjunction with files embedded in portable collections that use a
navigator. However, it is extensible to any other feature that may require a thumbnail image
representation of a file specification. For information about navigators, see “Navigators” on page 34.
TABLE 3.41 Entries in a file specification dictionary
KEY TYPE VALUE
Thumb stream (Optional; ExtensionLevel 3) A stream object defining the thumbnail
image for the file specification. (See Section 8.2.3, “Thumbnail
Images.”)
27
Graphics (Chapter 4 in PDF Reference)
This section describes extensions to the PDF specification contained in the PDF Reference, sixth edition,
version 1.7 and in ISO 32000 (Document management - Portable document format - PDF 1.7). The latter
document is the version of the PDF specification that has been ratified by the ISO. These documents differ
as described in About the ISO Draft of the PDF 1.7 Reference.
Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. For
convenience, the phrase BaseVersion 1.7, Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3
throughout this document.
4.8 Images
4.8.4 Image Dictionaries
Add new entries, Measure and PtData, to Table 4.39 in support of geospatial content. See Section 8.8.1
Geospatial Features on page 49.
4.9 Form XObjects
4.9.1 Form Dictionaries
Add new entries, Measure and PtData, to Table 4.45 in support of geospatial content. See Section 8.8.1
Geospatial Features on page 49.
TABLE 4.39 Additional entries specific to an image dictionary
KEY TYPE VALUE
Measure dictionary (Optional; ExtensionLevel 3) A measure dictionary (see Table 8.110,
page 49) that specifies the scale and units that apply to the image.
PtData dictionary (Optional; ExtensionLevel 3) A point data dictionary (see Table 111d,
page 53) that specifies the extended geospatial data that applies to
the image.
TABLE 4.45 Additional entries specific to a type 1 form dictionary
KEY TYPE VALUE
Measure dictionary (Optional; ExtensionLevel 3) A measure dictionary (see Table 8.110,
page 49) that specifies the scale and units that apply to the form.
PtData dictionary (Optional; ExtensionLevel 3) A point data dictionary (see Table 111d,
page 53) that specifies the extended geospatial data that applies to
the form.
28
Interactive Features (Chapter 8 in PDF Reference)
This section describes extensions to the PDF specification contained in the PDF Reference, sixth edition,
version 1.7 and in ISO 32000 (Document management - Portable document format - PDF 1.7). The latter
document is the version of the PDF specification that has been ratified by the ISO. These documents differ
as described in About the ISO Draft of the PDF 1.7 Reference.
Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. For
convenience, the phrase BaseVersion 1.7, Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3
throughout this document.
8.2 Document-Level Navigation
8.1 Viewer Preferences
Add the new Enforce entry in Table 8.1.
After Table 8.1, and before Section 8.2, add the following paragraph and table.
Table 8.1a shows the only valid name that can appear in an Enforce array. Future additions to this table
should be limited to keys in the viewer preferences dictionary with the following qualities:
● Can be assigned values (default or specified) that cannot be used in a denial-of-service attack
● Have default values that cannot be overridden using the application user interface
8.2.4 Collections
Following the paragraph (in the PDF Reference) that begins with “The file attachments comprising a collection,”
insert the two paragraphs below.
Table 8.1 Entries in a viewer preferences dictionary
KEY TYPE VALUE
Enforce array of names (Optional; ExtensionLevel 3) Viewer preference settings that may be
enforced by conforming readers and that will not be overridden by
subsequent selections in the application user interface. Table 8.1a
Names defined for an Enforce array specifies valid names.
Table 8.1a Names defined for an Enforce array
NAME DETAILS
PrintScaling (Optional; ExtensionLevel 3) This name may appear in the Enforce array only if the
corresponding entry in the viewer preferences dictionary (Table 8.1) specifies a valid
value other than AppDefault.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.2.4 Collections 29
Beginning with extension level 3, a portable collection can include a SWF file that creates an interactive
layout, or presentation, of the collection contents. The SWF file that manages the collection presentation is
called a navigator. For more information about navigators, see “Navigators” on page 34.
The collection dictionary contains some entries that support navigators. The Navigator entry is an
indirect reference to a navigator dictionary that contains a reference to the SWF file that describes the
layout. The Resources entry is an indirect reference to a name tree that can describe the content and
display of a header and welcome page of a portable collection. The value of the Colors entry is a
collection colors dictionary that specifies a suggested set of colors for use by a collection navigator. The
Folders entry is an indirect reference to the root folder of the collection’s folder structure.
The View entry of Table 8.6 has an additional value of C, and unchanged content is shown in gray. Add the
entries Navigator, Resources, Colors, Folders, and Split to Table 8.6 in support of portable
collections that use navigators.
TABLE 8.6 Entries in a collection dictionary
KEY TYPE VALUE
View name (Optional) The initial view. The following values are valid:
D The collection view is presented in details mode, with all
information in the Schema dictionary presented in a
multi-column format. This mode provides the most
information to the user.
T The collection view is presented in tile mode, with each file
in the collection denoted by a small icon and a subset of
information from the Schema dictionary. This mode provides
top-level information about the file attachments to the user.
H The collection view is initially hidden, without preventing
the user from obtaining a file list via explicit action.
C (ExtensionLevel 3) The collection view is presented by a
custom navigator.
Default value: D
Navigator dictionary (Required if the value of View is C; ExtensionLevel 3) An indirect
reference to the navigator dictionary that describes the navigator
that provides the collection view. See “TABLE 8.6d Entries in a
navigator dictionary” on page 34.
Resources name tree (Optional; ExtensionLevel 3) An indirect reference to a name tree,
mapping name strings to streams for named resources used by SWF
file-based aspects of the collection presentation other than
navigators.
A conforming application should store data required by the
welcome page and header in the collection resources name tree.
See implementation note E-1, page 130.
See the discussion in “Resources name tree” on page 36.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.2.4 Collections 30
Add a new value of CompressedSize to the Subtype key in Table 8.8. This value is used by portable
collections to display the compressed size of embedded files.
Add the next three tables to the end of Section 8.2.4.
Colors dictionary (Optional; ExtensionLevel 3) A collection colors dictionary specifying a
suggested set of colors for use by a collection navigator. See “TABLE
8.6a Entries in a collection colors dictionary” on page 31.
Note: A navigator accesses the colors dictionary through the
Acrobat ActionScript API. The ActionScript property
INavigatorHost.navigatorColorPalette provides
access to a user-specified color theme or palette, a set of
colors that should be used by the navigator for its
presentation. (See the Acrobat ActionScript API Reference in
the Bibliography.) There is no requirement, however, that the
navigator actually use the colors.
Folders dictionary (Required if the collection has folders; ExtensionLevel 3) An indirect
reference to a folder dictionary that is the single common ancestor
of all other folders in a portable collection. See “TABLE 8.6c Entries in
a folder dictionary” on page 32.
Split dictionary (Optional; ExtensionLevel 3) A collection split dictionary that specifies
the orientation of the splitter bar. See “TABLE 8.6b Entries in a
collection split dictionary” on page 31.
If Split is not present, the preferred orientation is determined by
the value of the View key. A value of D (or no value) indicates a
horizontal orientation, while a value of T indicates a vertical
orientation. No splitter is used if the View key has a value of H.
TABLE 8.8 Entries in a collection field dictionary
KEY TYPE VALUE
Subtype name CompressedSize (Optional; ExtensionLevel 3) The field data is the
length of the embedded filestream, as identified by the Length
entry in the embedded filestream dictionary (see Section 3.10.3,
“Embedded File Streams”), and the two values shall be identical.
TABLE 8.6 Entries in a collection dictionary
KEY TYPE VALUE
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.2.4 Collections 31
A collection colors dictionary lists colors that a navigator should use in its presentation of a collection. This
dictionary has the following entries.
A portable collection can be displayed in a split view, showing a navigator (or file list) in one sub-view and
a preview of the currently selected document in the other. A collection split dictionary holds information
that specifies the initial orientation (horizontal, vertical, or no split) of the splitter control and its position.
Beginning with extension level 3, a portable collection can contain a Folders object for the purpose of
organizing files into a hierarchical structure. The structure is represented by a tree with a single root folder
acting as the common ancestor for all other folders and files in the collection. The single root folder is
referenced in the Folders entry of Table 8.6 on page 29.
TABLE 8.6a Entries in a collection colors dictionary
KEY TYPE VALUE
Background array (Optional; ExtensionLevel 3) An array of three numbers in the range
0.0 to 1.0, representing a DeviceRGB color used for the navigator
background.
CardBackground array (Optional; ExtensionLevel 3) An array of three numbers in the range
0.0 to 1.0, representing a DeviceRGB color used for the navigator
card background.
CardBorder array (Optional; ExtensionLevel 3) An array of three numbers in the range
0.0 to 1.0, representing a DeviceRGB color used for the navigator
card border.
PrimaryText array (Optional; ExtensionLevel 3) An array of three numbers in the range
0.0 to 1.0, representing a DeviceRGB color used for the primary
text in a navigator, such as file names and links.
SecondaryText array (Optional; ExtensionLevel 3) An array of three numbers in the range
0.0 to 1.0, representing a DeviceRGB color used for other text in a
navigator.
TABLE 8.6b Entries in a collection split dictionary
KEY TYPE VALUE
Direction name (Optional; ExtensionLevel 3) The orientation of the splitter bar. The
following values are valid:
H indicates that the window is split horizontally.
V indicates that the window is split vertically.
N indicates that the window is not split. The entire window
region is dedicated to the file navigation view.
Position number (Optional; ExtensionLevel 3) The initial position of the splitter bar,
specified as a percentage of the available window area. Values
should range from 0 to 100. The entry is ignored if Direction is
set to N.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.2.4 Collections 32
Table 8.6c describes the entries in a folder dictionary.
TABLE 8.6c Entries in a folder dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this
dictionary describes; if present, shall be Folder for a folder
dictionary.
ID integer (Required; ExtensionLevel 3) A non-negative integer value
representing the unique folder identification number. Two folders
shall not share the same ID value.
The folder ID value appears as part of the name tree key of any file
associated with this folder. A detailed description of the
association between folder and files can be found after this table.
Name text string (Required; ExtensionLevel 3) A file name representing the name of
the folder. Two sibling folders shall not share the same name
following case normalization.
Note: Descriptions of file name and case normalization follow this
table.
Parent dictionary (Required for child folders; ExtensionLevel 3) An indirect reference to
the parent folder of this folder.
This entry shall be absent for a root folder.
Child dictionary (Required if the folder has any descendents; ExtensionLevel 3) An
indirect reference to the first child folder of this folder.
Next dictionary (Required for all but the last item at each level; ExtensionLevel 3) An
indirect reference to the next sibling folder at this level.
Siblings should be ordered according to the collection Sort key
(Table 8.6, page 29) or by folder name if no collection Sort key is
present.
CI dictionary (Optional; ExtensionLevel 3) The collection item dictionary (see Table
3.45 of the PDF Reference) associated with this folder.
Desc text string (Optional; ExtensionLevel 3) A text description associated with this
folder.
CreationDate date string (Optional; ExtensionLevel 3) The date the folder was first created.
ModDate date string (Optional; ExtensionLevel 3) The date of the most recent change to
immediate child files or folders of this folder.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.2.4 Collections 33
New values for the ID key shall be obtained by a conforming reader by accessing the Free entry in the
root folder. If an ID value is used from the Free entry array, the array is updated.
As previously described, the Name entry is a file name for a folder. A folder, as well as its associated files,
have naming restrictions inherited from the Universal Container Format (UCF) specification. (See the
Bibliography.) Strings that conform to these restrictions are known as file names. A valid file name
conforms to the following requirements:
● The string shall be a PDF text string.
● The string shall not contain any embedded NULL characters.
● The number of characters in the string shall be between 1 and 255 inclusive.
● The string shall not contain any of the eight special characters: U+002F SOLIDUS (/), U+005C REVERSE
SOLIDUS (\), U+003A COLON (:), U+002A ASTERISK (*), U+0022 QUOTATION MARK ("), U+003C
LESS-THAN SIGN (<), U+003E GREATER-THAN SIGN (>), and U+007C VERTICAL LINE (|).
● The last character shall not be a U+002E FULL STOP (.).
A conforming reader may choose to support invalid names or not. If not, an appropriate error message
shall be provided.
In addition to the restriction on naming folders, as just described, it is further required that two file names
in the same folder do not map to the same string following case normalization. Two file names that differ
only in case are disallowed within the same folder. See http://www.unicode.org/reports/tr21/tr21-5.html
for information on case normalization.
The CI entry (a collection item dictionary) allows user-defined metadata to be associated with a folder,
just as it does for embedded files in a collection.
Folders are indirect objects, and relationships between folders in the tree are specified using Parent,
Child, and Next keys.
When folders are used, all files in the EmbeddedFiles name tree (see Table 3.28 of the PDF Reference)
shall be treated as members of the folder structure by a conforming reader. The association between files
and folders is accomplished using a special naming convention on the key strings of the name tree. See
the PDF Reference, Section 3.8.5, “Name Trees,” for a discussion of the key strings. If no folder structure is
specified, conforming readers show all files in the collection in a flat list, maintaining compatibility with
older viewers.
Thumb stream (Optional; ExtensionLevel 3) A stream object defining the thumbnail
image for the folder
See Section 8.2.3, “Thumbnail Images” of the PDF Reference.
Free array (Optional; only used by root folder; ExtensionLevel 3) An array
containing ID values that are not currently in use by the folder
structure. The array contains zero or more pairs of numbers, a low
value followed by a high value. Each pair represents an
endpoint-inclusive range of values that are available for use when
a new folder is added. Each low value is less than or equal to its
corresponding high value.
TABLE 8.6c Entries in a folder dictionary
KEY TYPE VALUE
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.2.4 Collections 34
As previously mentioned, files in the EmbeddedFiles name tree are associated with folders by a special
naming convention applied to the name tree key strings. Strings that conform to the following rules serve
to associate the corresponding file with a folder:
● The name tree keys are PDF text strings.
● The first character, excluding any byte order marker, is U+003C, the LESS-THAN SIGN (<).
● The following characters shall one or more digits (0 to 9) followed by the closing U+003E, the
GREATER-THAN SIGN (>)
● The remainder of the string is a file name.
The section of the string enclosed by LESS-THAN SIGN GREATER-THAN SIGN(<>) is interpreted as a
numeric value that specifies the ID value of the folder with which the file is associated. The value shall
correspond to a folder ID. The section of the string following the folder ID tag represents the file name of
the embedded file.
Files in the EmbeddedFiles name tree that do not conform to these rules shall be treated as associated
with the root folder.
Navigators
Beginning with extension level 3, a portable collection can include a SWF file-based interactive layout, or
presentation, of the collection contents. The SWF file that manages the presentation is called a navigator. A
conforming interactive reader shall play the SWF file that drives the presentation of the collection, unless
some other considerations such as accessibility require a non-SWF file-based presentation. (See
implementation note E-2, page 130.)
This section describes how navigator information is stored in a PDF file, but does not describe the SWF file
that implements the navigator itself. (See implementation note E-3, page 130.)
When a portable collection is created, the View entry of the collection dictionary (Table 8.6, page 29) is
given a value of C to indicate that the collection view is provided by a custom navigator. A Navigator
entry in the collection dictionary contains an indirect reference to the navigator dictionary that describes
the navigator. Other entries in the collection dictionary may also be present. These include Resources,
Colors, Folders, and Split. See Table 8.6 on page 29 for information about these entries.
The navigator dictionary contains a variety of information about the navigator to be used, such as the
location of the SWF file that implements the layout of the collection, a unique ID number, load type, and
resources. The following table lists the entries in the navigator dictionary; the entries used only for
authoring are noted.
TABLE 8.6d Entries in a navigator dictionary
KEY TYPE VALUE
SWF text string (Required; ExtensionLevel 3) The location of the SWF file that
implements the layout of the collection, expressed as an entry in
the navigator's resources tree. See the Resources entry later in
this table.
Name text string (Required; ExtensionLevel 3; authoring only) The name to be
displayed to the user when choosing a navigator in a conforming
interactive reader.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.2.4 Collections 35
Desc text string (Optional; ExtensionLevel 3; authoring only) The description of the
navigator available to the user when choosing a navigator in a
conforming interactive reader.
Category text string (Optional; ExtensionLevel 3; authoring only) The category name that
may be used to group navigators.
ID text string (Required; ExtensionLevel 3; authoring only) A string representing a
unique ID for the navigator, expressed as a URI.
See implementation note E-18, page 132.
Version text string (Optional; ExtensionLevel 3; authoring only) A string representing a
numerical version number of the form m[.n[.p[.q]]], where, m, n, p,
and q are non-negative integers. If not present, n, p, and q default
to 0.
See implementation note E-19, page 132.
APIVersion text string (Required; ExtensionLevel 3) A string representing a numerical
version number of the form m[.n[.p[.q]]], where, m, n, p, and q are
non-negative integers. If not present, n, p, and q default to 0. This
number is the version of the navigator API required by the
navigator SWF file.
If a portable collection is opened in an older viewer that supports a
SWF file driven presentation of collections, it does not load and run
the navigator SWF file if this version is greater than that supported
by the conforming reader.
LoadType name (Optional; ExtensionLevel 3) The method to use to load the
navigator SWF file. The following values are valid:
Module The navigator SWF file is loaded as an Adobe
©
Flex™ 2
module.
Default The navigator SWF file is loaded as an ordinary SWF
file.
If this key is omitted, the navigator SWF file is loaded as an ordinary
SWF file.
Note: For information about modules, see the chapter “Modular
applications overview” in the Flex 2 Developer Guide. (See
the Bibliography.)
Icon text string (Optional; ExtensionLevel 3; authoring only) The location of an
image representing the navigator expressed as an entry in the
navigator's resources tree. The resource is not a PDF XObject, but a
PNG or JPEG image accepted by the version of the SWF file
identified by the navigator APIVersion.
See implementation note E-4, page 130.
TABLE 8.6d Entries in a navigator dictionary
KEY TYPE VALUE
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.2.4 Collections 36
Resources name tree
A resources name tree provides access to named files used by portable collection-related SWF file
components. Collections contain two resources name trees, one for the navigator (the Resources entry
in the navigator dictionary, Table 8.6d, page 34) and one for all other components (the Resources entry
in the collection dictionary, Table 8.6, page 29). The resources in the name tree exist in a hierarchical
directory structure, matching the abstract container and directory structure defined by the Uniform
Container Format (UCF). (See the Bibliography.) The name tree maps relative IRI references to streams. (For
information about Internationalized Resource Identifiers (IRIs), see RFC 3986 and RFC3987 in the
Bibliography.) The use of parent directory symbol (..) in a relative IRI is disallowed. As specified by UCF, if a
relative IRI reference contains an absolute path, which is an IRI that has no schema or authority but begins
with a U+002F SOLIDUS (/), the reference is resolved relative to the root directory of the abstract container.
These relative IRI references are used by SWF files that implement components of the collection user
interface, including the custom navigator, the welcome page, and the header. Two components of the
navigator itself, the navigator SWF file and its icon, are stored in a resources name tree.
The base IRI for references from the navigator SWF file is the navigator SWF file itself. The navigator SWF
file IRI is defined by the SWF key in the navigator dictionary. Suppose, for example, that this key specifies
the navigator SWF file IRI to be MyNavigator.swf and that this SWF file, in turn, refers internally to a style
sheet named MyStyles.css and an image named images/MyImage.jpeg. Suppose also that the Icon key in
Locale text string (Optional; ExtensionLevel 3) A string that specifies a locale
according to UTS 35, Unicode Technical Standard #35. The string is
usually a two-character language code, followed by a
two-character territory code, separated by an underscore (_). As
noted in UTS 35, the canonical form of a locale ID uses an
underscore (_) as a separator, but a processor should treat a
hyphen (-) as equivalent to an underscore (_).
Strings name tree (Optional; ExtensionLevel 3) An indirect reference to a string table
name tree that maps string IDs to localized strings. Both the keys
and values of the name tree are text strings.
See the discussion in “String table” on page 37.
InitialFields dictionary (Optional; ExtensionLevel 3; authoring only) A collection schema
dictionary (see Table 8.7 in the PDF Reference) that defines the
schema fields expected by the navigator. When a navigator is
applied to a portable collection and any of these fields do not exist
in the collection schema, the fields are added in the order
specified. Existing fields are reordered if necessary to conform to
the order of the fields specified here. Existing fields not listed in
InitialFields are moved to the end of the collection schema.
Resources name tree (Required; ExtensionLevel 3) An indirect reference to a name tree,
mapping text strings to streams for named resources including the
navigator SWF file, the navigator icon, and resources used by the
navigator SWF file.
See the discussion in “Resources name tree” that follows this table.
TABLE 8.6d Entries in a navigator dictionary
KEY TYPE VALUE
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.4 Annotations 37
the navigator dictionary refers to MyIcon.png. The base IRI in this case is the root directory of the abstract
container. The navigator’s resources name tree should then include four resources: MyNavigator.swf,
MyIcon.png, MyStyles.css, and images/MyImage.jpeg.
The base IRI for PDF viewer components such as the welcome page and header is the root directory of the
abstract container.
A resources name tree differs from the EmbeddedFiles name tree (Section 3.10.3 in the PDF Reference) in
two respects. The keys in the tree are always text strings that represent relative IRIs. The values in the tree
are simple streams rather than file specifications. The only information associated with a resource is its
name, which is defined by the key.
Storing the navigator resources in a name tree separate from the collection resources allows a navigator to
be self-contained. If a user replaces a navigator with another, the navigator resources are replaced as well.
The SWF file components embedded in a PDF file use the collection resources. (See the Resources entry
in Table 8.6. on page 29.) The resources in the collection resources name tree are organized by directory.
All the resources needed by the welcome page are named beginning with welcome/, as if these resources
were in a directory named welcome. Similarly, header resources begin with header/.
String table
Navigators include some text that is displayed to the user. While the content of PDF documents is
generally not localized, navigators include both content and application (the navigator SWF file), and PDF
provides a mechanism that enables navigators to specify localized text separate from the application.
The String entry in the navigator dictionary (TABLE 8.6d Entries in a navigator dictionary) is an indirect
reference to a string table. This string table is a name tree whose keys are string IDs and values are
localized text strings. A string ID is itself a text string. Given a string ID and a locale (the Locale entry in a
navigator dictionary), a localized text string can be found. The Acrobat ActionScript API provides access to
the string table. (See the Acrobat ActionScript API Reference in the Bibliography.) The method
INavigatorHost.getLocalizedString returns the value for a given ID or returns the provided
default value (a parameter to getLocalizedString) if the ID is not in the string table.
8.4 Annotations
Page 605 of the PDF Reference describes the effect of each supported Tabs value. After the description for the S
(structure order) value, add these bulleted entries:
● A (annotation array order): All annotations are visited in the order in which they appear in the page
Annots array. (See Table 3.27, “Entries in a page object,” and implementation note E-17, page 132.)
● W (widgets order): Widget annotations are visited in the order in which they appear in the page Annots
array, followed by other annotation types in row order. (See Table 3.27 “Entries in a page object.”) For
information about row order, see the R (row order) entry description on page 605.
For information about the Acrobat implementation of this feature and the effect of the accessibility
preference on annotations order, see “Interaction between accessibility preference and annotation tab
order,” part of implementation note 77, on page 116.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.4.5 Annotation Types 38
8.4.5 Annotation Types
Add the Projection and the RichMedia annotation types to Table 8.20
Markup Annotations
Add a new subtype to the ExData entry in Table 8.21. Unchanged content is shown in gray.
TABLE 8.20 Annotation types
ANNOTATION TYPE DESCRIPTION MARKUP? DISCUSSED IN SECTION
Projection (ExtensionLevel 3) Projection
annotation
Yes “Projection Annotations” on
page 39
RichMedia (ExtensionLevel 3) RichMedia
annotation
No “9.6.1 RichMedia Annotations” on
page 76
TABLE 8.21 Additional entries specific to markup annotations
KEY TYPE VALUE
ExData dictionary (Optional; PDF 1.7) An external data dictionary specifying data to be
associated with the annotation. This dictionary contains the
following entries:
Type (optional): If present, must be ExData.
Subtype (required): A name specifying the type of data that the
markup annotation is associated with.
Markup3D (PDF 1.7) for a 3D comment. Additional entries in
this dictionary are listed in Table 9.48 on page 835. (See also
implementation note 96 in Appendix H.)
3DM (ExtensionLevel 3) for a 3D measurement. Additional
entries in this dictionary are listed in “TABLE 9.39g Entries in
the external data dictionary of a projection annotation” on
page 76.
MarkupGeo (ExtensionLevel 3) for geospatial markup. This
Subtype does not define any additional entries.
For each value of Subtype, other entries are defined. Table 9.48 on
page 835 lists the values that correspond to a subtype of
Markup3D. (See also implementation note 96 in Appendix H.)
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.4.5 Annotation Types 39
Widget Annotations
Add the PMD entry to the end of Table 8.39, “Additional entries specific to a widget annotation” on page 641. The
PMD entry is used by barcode fields.
Add the following new topic to the end of Section 8.4.5.
Projection Annotations
A projection annotation is a markup annotation subtype (Table 8.20, page 38) that has much of the
functionality of other markup annotations. However, a projection annotation is only valid within the
context of an associated run-time environment, such as an activated 3D model.
The entries of a annotation dictionary for a projection annotation are those listed in Table 8.15 and
Table 8.21 of the PDF Reference.
Projection annotations provide a way to save 3D and other specialized measurements and comments as
markup annotations. These measurements and comments then persist in the document.
When a projection annotation is used in conjunction with a 3D measurement (“3D Measurements and
Projection Annotations” on page 75), it has an ExData dictionary with a Subtype of 3DM. (See TABLE
9.39g Entries in the external data dictionary of a projection annotation on page 76.) Otherwise, the
ExData dictionary is optional.
A projection annotation with a Rect entry that has zero height or zero width does not have an AP
dictionary.
TABLE 8.39 Additional entries specific to a widget annotation
KEY TYPE VALUE
PMD dictionary (Required; barcode fields only; ExtensionLevel 3) The
PaperMetaData generation parameters dictionary. The
entries of this dictionary are instructions to the barcode
encoding software on how to generate the barcode image.
See Table 8.39b, page 46, for the description of a
PaperMetaData generation parameters dictionary.
Note: PaperMetaData should not be confused with XMP as
used in a PDF file. XMP (Extensible Metadata
Platform) is an XML format for representing
metadata.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.5 Actions 40
8.5 Actions
8.5.3 Action Types
Add the rich-media-execute action to Table 8.48.
Rich-Media-Execute Actions
A rich-media-execute action identifies a rich media annotation and specifies a command to be sent to that
annotation’s handler. (See Section 9.6, “Rich Media” on page 76.) Table 8.48a shows the entries in a
rich-media-execute action dictionary.
The RichMediaCommand dictionary contains a command name and optional arguments to be passed to
the annotation handler specific to the target instance specified by the TI key in the parent
rich-media-execute action dictionary.
TABLE 8.48 Action Types
ACTION TYPE DESCRIPTION DISCUSSED IN SECTION
RichMediaExecute (ExtensionLevel 3; RichMedia annotation
only) Specifies a command to be sent to
the annotation’s handler.
“Rich-Media-Execute Actions” on
page 40
TABLE 8.48a Additional entries specific to a rich-media-execute action
KEY TYPE DESCRIPTION
S name (Required; ExtensionLevel 3) The type of action that this
dictionary describes; shall be RichMediaExecute for a
rich-media-execute action.
TA dictionary (Required; ExtensionLevel 3) An indirect object reference to a
rich media annotation dictionary for an annotation for which
to execute the script command.
TI dictionary (Optional; ExtensionLevel 3) A dictionary that shall be an
indirect object reference to a RichMediaInstance dictionary
that is also present in the Instances array of the
annotation.
Note: Because of the potential for multiple Flash instances
within a single annotation, the TI entry allows
targeting of actions to a specific Flash instance.
CMD dictionary (Required; ExtensionLevel 3) A RichMediaCommand dictionary
containing the command name and arguments to be
executed when the rich-media-execute action is invoked. See
“TABLE 8.48b Entries in a RichMediaCommand dictionary” on
page 41.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.5.3 Action Types 41
TABLE 8.48b Entries in a RichMediaCommand dictionary
KEY TYPE DESCRIPTION
Type name (Optional; ExtensionLevel 3) The type of PDF object that
this dictionary describes; shall be RichMediaCommand
for a RichMediaCommand dictionary.
C text string (Required; ExtensionLevel 3) A text string specifying the
script command (a primitive ActionScript or JavaScript
function name).
If the target instance (specified by the TI key in the
parent rich-media-execute action dictionary) is Flash
content, the command string represents an ActionScript
ExternalInterface call to the script engine context
specific to the target instance. If the target instance is a
3D model, the call is made in the global context of the
annotation’s instance of the 3D JavaScript engine.
A various (Optional; ExtensionLevel 3) An object that specifies the
arguments to the command. The object can either be a
single typed value or an array of typed values, each an
argument. Valid arguments are objects of type text
string, integer, real, or Boolean.
Default value: no arguments.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.6 Interactive Forms 42
8.6 Interactive Forms
Extension level 1 adds support for the rich text specified in XML Forms Architecture (XFA), versions 2.5 and 2.6.
The following entry in Table 8.73 reflects the clarified description from the Errata for the PDF Reference, sixth
edition, version 1.7, available at www.adobe.com/go/acrobat_developer. (Select the Documentation tab.)
Unchanged content is shown in gray.
Table 8.73 Attributes of the <body> element
ATTRIBUTE DESCRIPTION
xfa:spec The version of the XML Forms Architecture (XFA) specification to which the rich text string
complies. The following are valid values:
● 2.0, which specifies XFA version 2.0. PDF 1.5 supports this version.
● 2.2, which specifies XFA version 2.2. PDF 1.6 supports this version and the earlier
versions back to XFA version 2.0.
● 2.4, which specifies XFA version 2.4. PDF 1.7 supports this version and the earlier
versions back to XFA version 2.0.
● 2.5, which specifies XFA version 2.5. This value is an extension added in Acrobat 8.1.
(ExtensionLevel 1)
● 2.6, which specifies XFA version 2.6. This value is an extension added in Acrobat 8.1.
(ExtensionLevel 2)
See implementation note E-5, page 130.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.6.3 Field Types 43
8.6.3 Field Types
Signature Fields
Add the new P entry to Table 8.82 on page 697 of the PDF Reference.
TABLE 8.82 Entries in a signature field lock dictionary
KEY TYPE DESCRIPTION
P number (Optional; ExtensionLevel 3) The access permissions granted for
this document. Valid values follow:
1, no changes to the document are permitted; any change to
the document invalidates the signature.
2, permitted changes are filling in forms, instantiating page
templates, and signing; other changes invalidate the
signature.
3, permitted changes are the same as for 2, as well as
annotation creation, deletion, and modification; other
changes invalidate the signature.
Default value: none; absence of this key results in no effect on
signature validation rules.
If MDP permission is already in effect from an earlier
incremental save section or the original part of the document,
the number shall specify permissions less than or equal to the
permissions already in effect based on signatures earlier in the
document. That is, permissions can be denied but not added. If
the number specifies greater permissions than an MDP value
already in effect, the new number is ignored.
If the document does not have an author signature, the initial
permissions in effect are those based on the number 3.
The new permission applies to any incremental changes to the
document following the signature of which this key is part.
See implementation note E-14 on page 131.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.6.3 Field Types 44
The following are additions and changes to Table 8.83 on page 697 of the PDF Reference. New entries are
LockDocument and AppearanceFilter. Unchanged content is shown in gray.
TABLE 8.83 Entries in a signature field seed value dictionary
KEY TYPE DESCRIPTION
LockDocument name (Optional; ExtensionLevel 3) A name value supplying the author’s
intent for whether the signing dialog should allow the user to
lock the document at the time of signing. Values are true,
false, and auto, as follows:
true, the document should be locked at the time of signing.
If the Ff entry indicates that LockDocument is not a
required contraint, the user may choose to override this at
the time of signing; otherwise, the document is locked after
signing.
false, the document should not be locked after signing.
Again, the required flag, Ff, determines whether this is a
required constraint.
auto, the consuming application decided whether to
present the lock user interface for the document and
whether to honor the required flag, Ff, based on the
properties of the document.
Default value: auto
See implementation note E-15 on page 131.
AppearanceFilter text string (Optional; ExtensionLevel 3) A text string naming the appearance
to be used when signing the signature field. Conforming
readers may choose to maintain a list of named signature
appearances. This text string provides authors with a means of
specifying which appearance should be used to sign the
signature field.
If the required bit AppearanceFilter in Ff is set, the
appearance shall be available to sign the document and is used.
See implementation note E-16 on page 131.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.6.3 Field Types 45
Insert the following new section after the subsection titled “Signature Fields” on page 702 of the PDF Reference.
Barcode Fields
A barcode field is a text field (field type Tx) in which its appearance is rendered by one or more annotation
widgets that contain a PMD entry. (See the PaperMetaData generation parameters dictionary, page 46.) The
appearance of the barcode field, called the textual value, contains the value that is to be recovered from
the barcode at scan time. (See implementation note E-6, page 130.)
A barcode field dynamically acquires its value through user input into one or more text fields that are
referenced in a calculate dictionary (see the C entry in Table 8.46, “Entries in a form field’s
additional-actions dictionary” in the PDF Reference) of an additional-actions dictionary. (See the AA entry
in Table 8.39, “Additional entries specific to a widget annotation” in the PDF Reference.)
Additional keys in the form field and widget annotation dictionaries control whether and how the data
value is compressed, encrypted, and segmented; which barcode symbology is employed; and any other
parameters required for generating the barcode.
Ff integer (Optional) A set of bit flags specifying the interpretation of
specific entries in this dictionary. A value of 1 for the flag
indicates that the associated entry is a required constraint. A
value of 0 indicates that the associated entry is an optional
constraint. Bit positions are 1 (Filter); 2 (SubFilter); 3 (V);
4 (Reasons); 5 (LegalAttestation); 6 (AddRevInfo);
7 (DigestMethod); for extension level 3, the following bit flags
are added: 8 (LockDocument); and 9 (AppearanceFilter).
Default value: 0
V real (Optional) The minimum required capability of the signature
field seed value dictionary parser. A value of 1 specifies that the
parser must be able to recognize all seed value dictionary
entries specified in PDF 1.5. A value of 2 specifies that it must be
able to recognize all seed value dictionary entries specified in
PDF 1.7 and earlier. A value of 3 specifies that it shall be able to
recognize all seed value dictionary entries specified in extension
level 3 and earlier.
The Ff entry indicates whether this is a required constraint.
Note: The PDF References fifth edition (PDF1.6) and earlier,
erroneously indicates that the V entry is of type integer.
This entry is of type real.
TABLE 8.83 Entries in a signature field seed value dictionary
KEY TYPE DESCRIPTION
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.6.3 Field Types 46
Besides the usual entries common to all fields (see Table 8.69 on page 675 of the PDF Reference), the field
dictionary for a barcode field may contain the additional entry shown in Table 8.39a. (See also
implementation note E-7, page 131.)
The widget annotation dictionary of a barcode field may be merged with the field dictionary when there is
a single barcode associated with the field. If there are several widget annotations associated with a single
barcode field, the data is divided into approximately equal parts, and each part is encoded (rendered)
separately according to the specifications of the PMD entry in the widget annotation dictionary. (See
Table 9.39 on page 39 for the PMD entry.) The PMD entry is a PaperMetaData generation parameters
dictionary. The entries of a PaperMetaData generation parameters dictionary are listed in Table 8.39b,
shown below.
TABLE 8.39a Additional entry specific to a barcode field
KEY TYPE VALUE
DataPrep number (Optional; ExtensionLevel 3) Describes the data
preparation steps before encoding. Permissible values
follow:
0 The data is sent directly to the encoder.
1 The data undergoes flate compression before
encoding.
The default is 0, the data is sent directly to the encoder.
TABLE 8.39b Entries in a PaperMetaData generation parameters dictionary
KEY TYPE VALUE
Type name (Required; ExtensionLevel 3) The type of PDF object that this
dictionary describes; shall be PaperMetaData for a
PaperMetaData generation parameters dictionary.
Version number (Required; ExtensionLevel 3) Versioning mechanism, for forward
compatibility. Should be the number 1.
Resolution number (Optional; ExtensionLevel 3) The resolution, in dots-per-inch (dpi),
at which the barcode object is rendered.
Default value is 300.
Caption text string (Optional; ExtensionLevel 3) The caption of the barcode object.
The default value of Caption is the “file: scheme” URL of the
current document.
Symbology name (Required; ExtensionLevel 3) Specifies which barcode or glyph
technology is to be used on this annotation. Supported values
are PDF417, QRCode, and DataMatrix.
Width number (Required; ExtensionLevel 3) The width, measured in inches, of the
barcode object.
Height number (Required; ExtensionLevel 3) The height, measured in inches, of
the barcode object.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.6.3 Field Types 47
The Symbology entry takes one of three values, PDF417, QRCode, and DataMatrix. See the listing of
these symbology standards in the International Organization for Standardization (ISO) section of the
Bibliography.
The XSymWidth entry can be calculated by multiplying the desired distance, in inches, by the
Resolution value, and then rounding up the result.
The ECC entry, the error correction coefficient, corresponds to the level of data redundancy that is added to
the barcode to correct any potential decoding errors. Higher levels provide more redundancy and a more
robust barcode that will generate more successful decode results; however, higher levels also result in a
larger barcode and a reduced ability to encode user-supplied or form structure data into the barcode.
The DataPrep entry determines whether the value of a computed barcode field is compressed. The
encoding (or rendering) of the data occurs whenever the text value of a barcode field changes. Starting
with the value of the field as stored in the V key of the barcode field dictionary, the following steps are
applied:
1. Compression. If DataPrep entry is present and its value is 1, compress the text value of the barcode
field using flate compression.
2. Rendering. Associate each message with a widget annotation referred to through the Kids array from
the barcode field. (If there is only one widget annotation, its widget annotation dictionary is merged
into the barcode field dictionary.) For each such association, the PMD entry (in the PaperMetaData
generation parameters dictionary) of the widget annotation instructs which barcode or glyph
symbology to use, and the parameters to specify how to generate the barcode or glyph. An
appearance stream for the widget (the N entry in the AP dictionary) is then constructed that causes the
entire rectangular area of the widget to be filled with the generated image.
XSymWidth number (Required; ExtensionLevel 3) The horizontal distance, in pixels,
between two barcode modules. Shall be presented as an integer
value.
XSymHeight number (Required; ExtensionLevel 3) Only needed for PDF417. The
vertical distance between two barcode modules, measured in
pixels. The ratio XSymHeight/XSymWidth shall be an integer
value. For PDF417, the acceptable ratio range is from 1 to 4. For
QRCode and DataMatrix, this ratio shall always be 1.
ECC number (Required for PDF417 and QRCode only; ExtensionLevel 3) An
integer value representing the error correction coefficient.
For PDF417, shall be from 0 to 8. For QRCode, shall be from 0 to
3 (0 for ‘L’, 1 for ‘M’, 2 for ‘Q’, and 3 for ‘H’).
nCodeWordRow number Needed only for PDF417. The number of codewords per
barcode row. Defaults to 0. Obsolete.
nCodeWordCol number Needed only for PDF417. The number of codewords per
barcode column. Defaults to 0. Obsolete.
TABLE 8.39b Entries in a PaperMetaData generation parameters dictionary
KEY TYPE VALUE
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.6.7 XFA Forms 48
8.6.7 XFA Forms
Place the following material at the end of this section.
Incorporation of XFA Datasets into a PDF/A-2 Conforming File
To support PDF/A-2 conforming files, ExtensionLevel 3 adds support for XML form data (XFA datasets)
through the XFAResources name tree, which is part of the name dictionary of the document catalog.
(See “TABLE 3.28 Entries in the name dictionary” on page 23.) While Acrobat forms (and form data) are
permitted in a PDF/A-2 conforming file, XML forms are not. Such XML forms are specified as XDP streams
referenced from interactive form dictionaries. XDP streams can contain XFA datasets.
For applications that convert PDF documents to PDF/A-2, the XFAResources name tree supports
relocation of XML form data from XDP streams in a PDF document into the XFAResources name tree.
The XFAResources name tree consists of a string name and an indirect reference to a stream. The string
name is created at the time the document is converted to a PDF/A-2 conforming file. The stream contains
the <xfa:datasets> element of the XFA, comprised of <xfa:data> elements.
In addition to data values for XML form fields, the <xfa:data> elements enable the storage and retrieval
of other types of information that may be useful for other workflows, including data that is not bound to
form fields, and one or more XML signature(s).
See the XML Architecture, XML Forms Architecture (XFA) Specification, version 2.6 in the Bibliography.
8.8 Measurement Properties
Add new entries Measure and PtData to Table 8.109 in support of geospatial content. Unchanged content is
shown in gray. See Section 8.8.1 Geospatial Features, on page 49.
On page 745, modify the following paragraph to reflect the new geospatial coordinate system. Unchanged
content appears in gray.
Table 8.110 shows the entries in a measure dictionary. PDF 1.6 defines only a single type of coordinate
system, a rectilinear coordinate system, specified by the value RL for the Subtype entry, which is defined
as one in which the x and y axes are perpendicular and have units that increment linearly (to the right and
up, respectively). Extension level 3 defines a geospatial coordinate system specified by the value GEO for
the Subtype entry. Other subtypes are permitted, providing the flexibility to measure using other types
of coordinate systems.
TABLE 8.109 Entries in a viewport dictionary
KEY TYPE VALUE
Measure dictionary (Optional) A measure dictionary (see Table 8.110, page 49) that
specifies the scale and units that apply to the image.
PtData dictionary (Optional; ExtensionLevel 3) A point data dictionary (see Table 111d,
page 53) that specifies the extended geospatial data that applies to
the image.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.8.1 Geospatial Features 49
When the value of the Subtype entry is GEO, the dictionary defines the relationship between points or
regions in the two dimensional PDF object space and points or regions with respect to an underlying
model of the earth (or, potentially, other ellipsoid objects).
Add the value of GEO to the Subtype entry of Table 8.110.
Between the two paragraphs that follow Table 8.110, insert the following.
When the subtype of a measurement dictionary is GEO, additional entries are defined. Table 8.111a,
page 50, lists and describes these additional entries in a geospatial measure dictionary.
Add a new section to the end of Section 8.8.
8.8.1 Geospatial Features
PDF is a common delivery mechanism for map and satellite imagery data. In extension level 3, a geospatial
coordinate system is introduced (Table 8.110, page 49) along with a number of PDF constructs, as
explained in this section, to support geospatially registered content.
Geospatial Measure Dictionary
When the subtype of a measurement dictionary (Table 8.110, page 49) is GEO, additional entries are
defined through a geospatial measure dictionary.
A geospatial measure dictionary, Table 111a, contains a description of the earth-based coordinate system
associated with the PDF object, and corresponding arrays of points in that coordinate system and the local
object coordinate system. It may contain a bounding polygon (the Bounds entry), which defines the
region of the PDF object for which the geographic associations are valid. It may also contain a choice of
default units (the PDU entry) for user displays of positions, distances and areas. An optional display
coordinate system (the DCS entry) allows a document to be authored to display values in a coordinate
system other than that associated with the source data. For example, a map may be created in a state
plane coordinate system based on a 1927 datum, but it is possible to display its latitude and longitude
values in the WGS84 datum corresponding to values reported by a GPS device.
The entries of a geospatial measure dictionary are shown in Table 8.111a.
TABLE 8.110 Entries in a measure dictionary
KEY TYPE VALUE
Subtype name (Optional) A name specifying the type of coordinate system to use
for measuring. Valid values follow:
RL, for a rectilinear coordinate system
GEO, (ExtensionLevel 3) for a geospatial coordinate system
Default value: RL
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.8.1 Geospatial Features 50
TABLE 8.111a Additional entries specific in a geospatial measure dictionary
KEY TYPE VALUE
Bounds array (Optional; ExtensionLevel 3) An array of numbers taken pairwise that
define a series of points that describes the bounds of an area for
which geospatial transformations are valid. For maps, this
bounding polygon is know as a neatline. These numbers are
expressed relative to a unit square that describes the BBox
associated with a Viewport or form XObject, or the bounds of an
image Xobject.
If not present, the default values define a rectangle describing the
full unit square, with values of [0.0 0.0 0.0 1.0 1.0 1.0 1.0 0.0].
Note: The polygon description need not be explicitly closed by
repeating the first point values as a final point.
GCS dictionary (Required; ExtensionLevel 3) A projected or geographic coordinate
system dictionary.
DCS dictionary (Optional; ExtensionLevel 3) A projected or geographic coordinate
system to be used for the display of position values, such as
latitude and longitude. Formatting the displayed representation of
these values is controlled by the conforming reader.
PDU array (Optional; ExtensionLevel 3) Preferred Display Units. An array of
three names that identify in order a linear display unit, an area
display unit, and an angular display unit.
The following are valid linear display units:
M, a meter
KM, a kilometer
FT, an international foot
USFT, a U.S. Survey foot
MI, an international mile
NM, an international nautical mile
The following are valid area display units:
SQM, a square meter
HA, a hectare (10,000 square meters)
SQKM, a square kilometer
SQFT, a square foot
A, an acre
SQMI, a square mile
The following are valid angular display units:
DEG, a degree
GRD, a grad (1/400 of a circle, or 0.9 degrees)
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.8.1 Geospatial Features 51
Geographic Coordinate System Dictionary
A geographic coordinate system (GEOGCS) specifies an ellipsoidal object in geographic coordinates:
angular units of latitude and longitude. The geographic coordinate system can be described in either or
both of two well-established standards: as a numeric EPSG reference code, or as a Well KnownText (WKT)
string, which contains a description of algorithms and parameters needed for transformations.
Table 8.111b lists the entries in a geographic coordinate system dictionary. A geographic coordinate system
dictionary may be a value of the GCS or the DCS entry of a geospatial measure dictionary. (See Table 8.111a
on page 50.)
Either an EPSG code or a WKT string is required in a geographic coordinate system dictionary. (See
implementation note E-20, page 132.)
The EPSG reference codes are described in a database available through www.epsg.org, as administered
by the International Association of Oil and Gas Producers (OGP). Well Known Text is specified in document
01-009, OpenGIS Implementation Specification: Coordinate Transformation Services, of the Open Geospatial
Consortium. (See Bibliography.) See implementation note E-9, page 131.
GPTS array (Required; ExtensionLevel 3) An array of numbers taken pairwise,
defining points in geographic space as degrees of latitude and
longitude. These values are based on the geographic coordinate
system described in the GCS dictionary. (Note that any projected
coordinate system includes an underlying geographic coordinate
system.)
LPTS array (Optional; ExtensionLevel 3) An array of numbers taken pairwise that
define points in a 2D unit square. The unit square is mapped to the
rectangular bounds of the viewport, image XObject, or forms
XObject that contain the measure dictionary. This array contains
the same number of number pairs as the GPTS array; each number
pair is the unit square object position corresponding to the
geospatial position in the GPTS array.
TABLE 8.111a Additional entries specific in a geospatial measure dictionary
KEY TYPE VALUE
TABLE 8.111b Entries in a geographic coordinate system dictionary
KEY TYPE VALUE
Type name (Required; ExtensionLevel 3) The type of PDF object that this
dictionary describes; shall be GEOGCS for a geographic coordinate
system dictionary.
EPSG integer (Optional; ExtensionLevel 3) An EPSG reference code specifying the
geographic coordinate system.
WKT ASCII string (Optional; ExtensionLevel 3) A string of Well Known Text describing
the geographic coordinate system.
See implementation note E-8, page 131.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.8.1 Geospatial Features 52
Examples of WKT description strings appear at the end of the next section, beginning on page 52.
Projected Coordinate System Dictionary
A projected coordinate system (PROJCS), which includes an embedded GEOGCS, specifies the algorithms
and associated parameters used to transform points between geographic coordinates and a
two-dimensional (projected) coordinate system. Any transformation between a three-dimensional curved
geographic coordinate system and a two-dimensional coordinate system introduces distortions. For small
areas, this distortion may be small enough to allow direct mapping between geographic coordinates and
PDF object coordinates without requiring the use of a projected coordinate system.
The projected coordinate system can be described in either or both of two well-established standards: as a
numeric EPSG reference code, or as a Well KnownText (WKT) string, which contains a description of
algorithms and parameters needed for transformations.
The EPSG reference codes are described in a database available through www.epsg.org, as administered
by the International Association of Oil and Gas Producers (OGP). Well Known Text is specified in document
01-009, OpenGIS Implementation Specification: Coordinate Transformation Services, of the Open Geospatial
Consortium. (See Bibliography.) See implementation note E-9, page 131.
Table 8.111c lists the entries in a projected coordinate system dictionary. A projected coordinate system
dictionary may be a value of the GCS or the DCS entry of a geospatial measure dictionary, Table 8.111a on
page 50.
Either an EPSG code or a WKT string is required in the projected coordinate system dictionary. (See
implementation note E-20, page 132.)
Example: A WKT describing a geographic coordinate system
An example of WKT description of a geographic coordinate system, formatted for readability. The EPSG
code equivalent to the GCS_North_American_1983 geographic coordinate system is 4269.
GEOGCS["GCS_North_American_1983",
DATUM["D_North_American_1983",
SPHEROID["GRS_1980",6378137.0,298.257222101]
],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]
]
TABLE 8.111c Entries in a projected coordinate system dictionary
KEY TYPE VALUE
Type name (Required; ExtensionLevel 3) The type of PDF object that this
dictionary describes; shall be PROJCS for a projected coordinate
system dictionary.
EPSG integer (Optional; ExtensionLevel 3) An EPSG reference code specifying the
projected coordinate system.
WKT ASCII string (Optional; ExtensionLevel 3) A string of Well Known Text describing
the projected coordinate system.
See implementation note E-8, page 131.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.8.1 Geospatial Features 53
Example: A WKT describing a projected coordinate system
An example of WKT description of a projected coordinate system, formatted for readability. The EPSG code
equivalent to the North_American_Albers_Equal_Area_Conic projected coordinate system is 102008.
PROJCS["North_America_Albers_Equal_Area_Conic",
GEOGCS["GCS_North_American_1983",
DATUM["D_North_American_1983",
SPHEROID["GRS_1980",6378137.0, 298.257222101]
],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]
],
PROJECTION["Albers"],
PARAMETER["False_Easting",0.0],
PARAMETER["False_Northing",0.0],
PARAMETER["Central_Meridian",-96.0],
PARAMETER["Standard_Parallel_1",20.0],
PARAMETER["Standard_Parallel_2",60.0],
PARAMETER["Latitude_Of_Origin",40.0],
UNIT["Meter",1.0]
]
Point Data Dictionary
Any 2D object (Viewport, Image XObject, or Form XObject) that contains a measure dictionary (Table
8.110, page 49) of subtype GEO can optionally include a PtData entry. The value of a PtData entry is a
point data dictionary or an array of point data dictionaries of extended data associated with points in the
2D space. Table 8.111d lists the entries of a point data dictionary.
TABLE 8.111d Entries in a point data dictionary
KEY TYPE VALUE
Type name (Required; ExtensionLevel 3) The type of PDF object that this
dictionary describes; shall be PtData for a point data dictionary.
Subtype name (Required; ExtensionLevel 3) Shall be Cloud.
Adobe Acrobat SDK Interactive Features (Chapter 8 in PDF Reference)
Adobe® Supplement to the ISO 32000 8.8.1 Geospatial Features 54
The names LAT, LON, and ALT are predefined, and are used to associate altitude information with latitude
and longitude positions.
Names array (Required; ExtensionLevel 3) An array of names that identify the
internal data elements of the individual point arrays in the XPTS
array.
There are three predefined names:
LAT, latitude in degrees. The XPTS value is a number type.
LON, longitude in degrees. The XPTS value is a number type.
ALT, altitude in meters. The XPTS value is a number type.
Note: These names are, in effect, column headers for the array of
XPTS values.
XPTS array (Required; ExtensionLevel 3) An array of arrays of values. The number
of members in each interior array corresponds to the size of the
Names array; each member in the interior arrays is of a type defined
by the corresponding name in the Names array.
The XPTS array is a collection of tuples without any guaranteed
ordering or relationship from point to point.
TABLE 8.111d Entries in a point data dictionary
KEY TYPE VALUE
55
Multimedia Features (Chapter 9 in PDF Reference)
This section describes extensions to the PDF specification contained in the PDF Reference, sixth edition,
version 1.7 and in ISO 32000 (Document management - Portable document format - PDF 1.7). The latter
document is the version of the PDF specification that has been ratified by the ISO. These documents differ
as described in About the ISO Draft of the PDF 1.7 Reference.
Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. For
convenience, the phrase BaseVersion 1.7, Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3
throughout this document.
9.5 3D Artwork
On page 790, append the indicated sentence to the bullet that begins, “3D stream contain …”. Unchanged
content is shown in gray.
The following sections describe the major PDF objects that relate to 3D artwork, as well as providing
background information on 3D graphics:
● 3D annotations provide a virtual camera through which the artwork is viewed. (see section 9.5.1 [ISO
section 13.6.2], “3D Annotations”).
● 3D streams contain the actual specification of a piece of 3D artwork (see section 9.5.2 ISO
section 13.6.3], “3D Streams”). This specification supports the standard ECMA-363, Universal 3D file
format developed by the 3D Industry Forum (see Bibliography). Extension level 1 extends PDF to
support the PRC file format (see Bibliography).
9.5.1 3D Annotations
Add the 3DU entry to Table 9.33.
Add the Style, Window, and Transparent entries to Table 9.34.
TABLE 9.33 Additional entries specific to a 3D annotation
KEY TYPE VALUE
3DU dictionary (Optional; ExtensionLevel 3) A 3D units dictionary that specifies the units
definitions for the 3D data associated with this annotation. See “TABLE
9.33a Entries in a 3D units dictionary” on page 60.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.2 3D Streams 56
Add the following commentary to the end of Section 9.5.1.
The Style and Window entries provide the mechanism to present the 3D content in a floating window.
The Transparent entry provides a flag for specifying whether the background of a 3D view is rendered
using transparency. If this is the case, some area of the page may be visible through the background if the
resulting alpha value at that location is less than 1.0. See also the Transparent entry of the
“RichMediaPresentation Dictionary” on page 82.
9.5.2 3D Streams
Modify the Subtype entry as shown in Table 9.35.
On page 798, delete the sentence that begins “The only valid value …” in the following paragraph. The material
in that sentence is covered in Table 9.35298], as amended by this guide.
The Subtype entry specifies the format of the 3D stream data. The only valid value is U3D, which indicates
that the stream data conforms to the Universal 3D File Format specification (see Bibliography). PDF
consumer applications must be prepared to encounter unknown values for Subtype and recover
appropriately, which usually means leaving the annotation in its inactive state, displaying its normal
appearance.
TABLE 9.34 Entries in a 3D activation dictionary
KEY TYPE VALUE
Style name (Optional; ExtensionLevel 3) Values may be Embedded or Windowed. A
conforming interactive reader supports both Embedded and
Windowed.
Default value: Embedded
Window dictionary (Optional; ExtensionLevel 3) A RichMediaWindow Dictionary that
describes the size and position of the floating user interface window
when the value for Style is set to Windowed. See “RichMediaWindow
Dictionary” on page 84 for a detailed description.
Transparent boolean (Optional; ExtensionLevel 3) A flag that indicates whether the page
content is displayed through the transparent areas of the rich media
content (where the alpha value is less than 1.0).
Default value: false
TABLE 9.35 Entries in a 3D stream dictionary
KEY TYPE VALUE
Subtype name (Required) A name specifying the format of the 3D data contained in the
stream. The following valid values are supported:
U3D, which specifies the Universal 3D file format.
PRC, which specifies the PRC file format. This value is an extension
supported by Acrobat 8.1. (ExtensionLevel 1)
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.3 3D Views 57
9.5.3 3D Views
Add the MA entry in Table 9.39 of the PDF Reference.
Modify the MS entry as shown, and add the MA entry in Table 9.39 of the PDF Reference.
.
9.5.3 3D Views (Node Dictionaries)
Modify the N entry and add three new entries (Instance, Data, and RM) in Table 9.47 as follows.
TABLE 9.39 Entries in a 3D view dictionary
KEY TYPE VALUE
MA array (Optional; ExtensionLevel 3) An array of 3D measurement/markup
dictionaries, where each dictionary represents an instance of a 3D
measurement to be displayed in the context of this view. See “3D
Measurement/Markup Dictionary” on page 62 for the definition of a 3D
measurement dictionary.
TABLE 9.39 Entries in a 3D view dictionary
KEY TYPE VALUE
MS name (Optional) A name specifying the entry to use for the 3D
camera-to-world transformation matrix. The following values are
supported:
M indicates that the C2W entry specifies the matrix
U3D indicates that the U3DPath entry in the 3D stream object is
used for the matrix. This value reflects the sole supported value of
the Subtype entry in the 3D stream dictionary.
Note: There is no corresponding MS field value for the PRC file format,
that would correspond to a 3D stream object of type PRC. M is the
only valid entry for 3D stream objects of type PRC (or it may be
omitted).
If omitted, the view specified in the 3D artwork is used.
MA array (Optional; ExtensionLevel 3) An array of 3D measurement/markup
dictionaries, where each dictionary represents an instance of a 3D
measurement to be displayed in the context of this view. See “3D
Measurement/Markup Dictionary” on page 62 for the definition of a 3D
measurement dictionary.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.3 3D Views (Node Dictionaries) 58
Add the following commentary following the paragraph that begins with “The M entry specifies…” on page 830
of the PDF Reference.
The Instance and Data entries provide a reference to an instance array dictionary within the
Instances array. The content of Data is passed to and from the Flash run time in a rich media context.
The RM provides the facility of specifying a change in render mode for each node. In PDF 1.7, render mode
could be specified globally or per view. See Section 9.5.3 “3D Views” of the PDF Reference.
The RM entry to the 3D node dictionary is applicable both for the 3D node structure within a rich media
context (see Section 9.6.1 RichMedia Annotations on page 76) and within the existing 3D annotations
structure. (See Section 9.5.1 “3D Annotations” of the PDF Reference for further information.] The
Instances array and additional Data entries are applicable only to 3D nodes within a rich media context
TABLE 9.47 Entries in a 3D node dictionary
KEY TYPE VALUE
N text string (Required) The name of the node being described by the node
dictionary. Interpretation of this entry depends upon the 3D format
specified in the Subtype entry in Table 9.35, as described below:
● U3D. If the Subtype of the corresponding 3D Stream is U3D, this
entry corresponds to the field Node block name, specified in the
Universal 3D File Format (See Bibliography.)
● PRC. (ExtensionLevel 1) If the Subtype of the corresponding 3D
Stream is PRC, this entry is constructed from fields stored in the PRC
stream. For information on deriving names from PRC fields, see the
documentation module “Naming PRC entities for outside PDF
referencing” in the PRC Format (see Bibliography).
Note: When comparing this entry to node names for a particular
convention, such as the Universal 3D File Format, conforming
readers translate between the PDF text encoding used by PDF
and the character encoding specified in the 3D stream.
Instance dictionary (Required if Data is present; ExtensionLevel 3) An indirect object reference
to a RichMediaInstance dictionary (see “RichMediaInstance Dictionary”
on page 88) that is also referenced by an entry in the Instances array.
Data text string or
stream
(Optional; ExtensionLevel 3) A text string or stream that contains state
data to be passed to the instance when the view is triggered.
See the extended description of the Data key in “View Params
Dictionary” on page 93.
RM dictionary (Optional; ExtensionLevel 3) A render mode dictionary that specifies the
render mode and related properties for this node. If omitted, the render
mode specified in the 3D view is used, and if that is not present, the
render mode of the 3D artwork is used.
The render mode dictionary is identical to that used by the 3D view
dictionary. See the Section 9.5.3, “3D Views (3D Render Mode
Dictionaries)” in PDF Reference.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 59
Add the next section after Section 9.5.5.
9.5.6 Persistence of 3D Measurements and Markups
Beginning with extension level 3, users can add 3D measurement data to an instance of a 3D artwork. This
measurement data is stored in a 3D measurement/markup dictionary. 3D measurements are associated
with 3D views, and each 3D view can contain zero or more 3D measurement dictionaries.
After a measurement is associated with view, it is visible only when that view is selected or active. As
different views are displayed, the measurements associated with that view are made visible and previously
displayed measurements become invisible.
3D measurements can either be simple 3D markups used to add information to the geometric data shown
in a view, or have an associated comment, in which case they have all the associated functionality of a
comment. A 3D measurement can be promoted or demoted to or from comment status.
There are three key aspects to defining persistent 3D measurements:
● A mechanism to define the units associated with the geometric data being measured. A 3DU entry in
TABLE 9.33 Additional entries specific to a 3D annotation, page 55, has as its value a 3D units dictionary,
which stores the units data for this 3D annotation. [See “The 3D Units Dictionary” on page 59 for more
information.]
● The association between 3D measurements and 3D view is realized through the MA entry in a 3D view
dictionary (“TABLE 9.39 Entries in a 3D view dictionary” on page 57). The value of this entry is an array
of 3D measurement/markup dictionaries, where each dictionary represents an instance of a 3D
measurement to be displayed in the context of this view. For more information about 3D measurement
dictionaries, see “3D Measurement/Markup Dictionary” on page 62.
● When a 3D measurement is promoted to a comment, a projection annotation (“Projection Annotations”
on page 39) is created to manage the comment and its appearance in the comments list. An indirect
reference to this projection annotation is placed in the 3D measurement dictionary. [See “3D
Measurements and Projection Annotations” on page 75.]
The 3D Units Dictionary
The data associated with a 3D artwork annotation may be defined in an arbitrary 3D coordinate system.
For viewing purposes, the application defines a camera to map these coordinates onto a view surface. (3D
coordinate systems are discussed in Section 9.5.4 of the PDF Reference.) For measurement purposes,
distances are computed in this arbitrary coordinate system and assigned physical meaning by entries in
the 3D units dictionary. These sets of optional units should be defined:
● Creation time units: Units known at the time the 3D artwork annotation is created.
● User override units: Units defined by the user after the annotation was created
● Display units: Units that the user would like used when displaying distances for all newly created
measurements.
The first two definitions assign physical meaning to measured distances, and the third defines how the
distances are presented. When a 3D annotation is created, the application may have information from
external sources that allows it to determine the units of the data being imported. Later the user may want
to either override that definition or control what units data is displayed in.
In addition to defining the units, a scaling operation is defined that maps one set of units to another. For
the creation time and user override units, the mapping states that “m model data units = n real units”. For
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 60
the display units, the mapping states that “m model units = n display units”. In most cases, the m and n
scale values will be 1.0 because most data is defined in some well-known units system, such as meters or
inches.
The entries in the 3D units dictionary establish these mappings for each set of units (creation time, user
override, and display units). The 3D Units dictionary is referenced in TABLE 9.33 Additional entries specific
to a 3D annotation as the value of the 3DU entry.
TABLE 9.33a Entries in a 3D units dictionary
KEY TYPE VALUE
TSm number (Optional; ExtensionLevel 3) The creation time units m
scale value. If omitted, TSm defaults to 1.0; if included,
TU shall exist.
TSn number (Optional; ExtensionLevel 3) The creation time units n
scale value. If omitted, TSn defaults to 1.0; if included,
TU shall exist.
TU text string (Optional; ExtensionLevel 3) The creation time units
value. A text string specifying a label for displaying the
units represented by this dictionary in a user interface.
It is recommended that the label use a universally
recognized abbreviation.
USm number (Optional; ExtensionLevel 3) The user defined units m
scale value. If omitted, USm defaults to 1.0; if included,
UU shall exist.
USn number (Optional; ExtensionLevel 3) The user defined units n
scale value. If omitted, USn defaults to 1.0; if included,
UU shall exist.
UU text string (Optional; ExtensionLevel 3) The user override units
value. A text string specifying a label for displaying the
units represented by this dictionary in a user interface.
It is recommended that the label use a universally
recognized abbreviation.
DSm number (Optional; ExtensionLevel 3) The display units m scale
value. If omitted, DSm defaults to 1.0; if included, DU
shall exist.
DSn number (Optional; ExtensionLevel 3) The display units n scale
value. If omitted, DSn defaults to 1.0; if included, DU
shall exist.
DU text string (Optional; ExtensionLevel 3) The display units value. A
text string specifying a label for displaying the units
represented by this dictionary in a user interface. It is
recommended that the label use a universally
recognized abbreviation.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 61
The following algorithm is used to map model space distances for display in 3D measurements for each of
the three sets of units.
The following are default values:
n = 1.0 // a number
m = 1.0 // a number
Units = "Model Units" // a text string
In the algorithm that follows, an entry is defined if it is included in the 3D Units dictionary.
Creation time units – The following is the process creation time units definition:
If TU is defined, then Units = TU
If TSm is defined, then m = TSm
If TSn is defined, then n = TSn
Note: If either TSm or TSn is defined, TU should be included in the 3D Units dictionary; if TU is not
defined in this case, the unit specification is undefined and is ignored.
User override units – The following is the process user override units definition:
If UU is defined, then Units = UU
If USm is defined, then m = USm
If USn is defined, then n = USn
Note: If either USm or USn is defined, UU should be included in the 3D Units dictionary; if UU is not
defined in this case, the unit specification is undefined and is ignored.
Display units – The following is the display units definition:
If DU is defined, then Units = DU
If DSm is defined, then m = m * DSm
If DSn is defined, then n = n * DSn
Note: If either DSm or DSn is defined, DU should be included in the 3D Units dictionary; if DU is not
defined in this case, the unit specification is undefined and is ignored.
Finally, if X is a model space distance and Y is the displayed value, the functional relationship between X
and Y is given by the equation Y Units = (m/n) * X.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 62
3D Measurement/Markup Dictionary
The MA entry of TABLE 9.39 Entries in a 3D view dictionary contains an array of 3D measurement
dictionaries, where each dictionary represents an instance of a 3D measurement to be displayed in the
context of this view. Each 3D measurement dictionary describes the type of the 3D measurement through
the Subtype entry, as well as provides a name for the measurement as it may appear in the user interface
of a conforming reader.
The entries of the 3D Measurement/Markup dictionary are described in the table that follows.
The TRL field contains the current name for the measurement markup. Each measurement markup is
assigned a name (“Measurement 1”, “3D Comment 22”, …and so on) when it is created. These names may
be shown by an interactive conforming reader so that users can see what measurements are associated
with what views. Users can override the initially defined names at any point.
TABLE 9.39a Entries in a 3D measurement/markup dictionary
common to all markup subtypes
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this dictionary
describes; if present, it shall be 3DMeasure for a 3D measurement
dictionary.
Subtype name (Required; ExtensionLevel 3) A name specifying the measurement type
for this measurement:
● LD3 – A linear dimension measurement is used to denote the distance
between two arbitrary points on a 3D model. See “3D Linear
Dimension Measurement” on page 63 for a listing of additional
entries in this dictionary.
● PD3 – A perpendicular dimension measurement is used to denote the
perpendicular distance between two geometric entities (normally
two lines or a point and a line). See “3D Perpendicular Dimension
Measurement” on page 65 for a listing of additional entries in this
dictionary.
● AD3 – An angular dimension measurement is used to denote the
angle between two linear entities. See “3D Angular Dimension
Measurement” on page 67 for a listing of additional entries in this
dictionary.
● RD3 – A radial dimension measurement is used to define the radius
or diameter of a circular 3D entity. See “3D Radial Dimension” on
page 71 for a listing of additional entries in this dictionary.
● 3DC – A 3D comment note lets users connect a comment to a
specific piece of geometry in the 3D model. See “3D Comment Note”
on page 74 for a listing of additional entries in this dictionary.
TRL text string (Optional; ExtensionLevel 3) A name string that may be associated with a
measurement markup. If omitted, a conforming interactive viewer may
create one.
Conforming viewers that do not provide a user interface for such
elements should ignore this field.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 63
3D Linear Dimension Measurement
A 3D linear measurement is a markup showing the distance between two arbitrary points on a 3D model.
Here is an example.
FIGURE 9.18
As shown, a 3D linear measurement consists of two filled circles, called anchor points, one at each of the two
positions being measured, and a line with an arrowhead on each end connecting the two anchor points
(referred to as the measure line). This line is then labeled with a value representing the distance between
the two anchor points.
In addition to the entries in “TABLE 9.39a Entries in a 3D measurement/markup dictionary” on page 62, the
following entries are defined for a 3D measurement dictionary with a Subtype value of LD3 for 3D linear
measurement.
TABLE 9.39b Additional entries in a 3D measurement/markup dictionary
for a 3D linear dimension measurement
KEY TYPE VALUE
AP array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the 3D annotation plane on which the measurement markup will lie.
A1 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the model space position of the first anchor point in world space. It is
assumed that this is a position on the 3D model associated with this
view.
N1 text string (Optional; ExtensionLevel 3) The name of the part (or model tree node)
associated with anchor point 1 (A1). The part name is used to verify that
the part exists and is visible. If not, the measurement is not displayed. If
omitted, no validation occurs.
A2 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the model space position of the second anchor point in world space. It is
assumed that this is a position on the 3D model associated with this
view.
N2 text string (Optional; ExtensionLevel 3) The name of the part (or model tree node)
associated with anchor point 2 (A2). The part name is used to verify that
the part exists and is visible. If not, the measurement is not displayed. If
omitted, no validation occurs.
TP array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the text anchor point for the measurement value string.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 64
FIGURE 9.19 depicts some of the parameters for a 3D linear measurement.
The value text is drawn on the annotation plane (AP) where the horizontal text path is defined by the
vector from A1 to A2 with the text up direction defined by the vector TY. The lower left corner of the text
box is positioned at the text anchor point (TP).
FIGURE 9.19
TY array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the up direction vector, called the text Y direction, for the text string
presenting the measurement value string.
TS number (Optional; ExtensionLevel 3) A number representing the measurement
text string height defined in points in the default user space. Note that
measurement text is zoom invariant.
The default is 12 points.
C array (Optional; ExtensionLevel 3) An array of three numbers in the range 0.0 to
1.0 that represent the RGB color of the measurement markup.
The default value is the array [1 1 1], representing the color white.
V number (Required; ExtensionLevel 3) A numeric value representing a
measurement value. This value is converted to a text string and
displayed as part of the measurement text string.
U text string (Required; ExtensionLevel 3) A string, called the units string, that
represents the units for the measurement.
P integer (Optional; ExtensionLevel 3) The number of decimal digits, which
represents the precision, shown for the measurement value (V).
The default is 3, if P is not specified.
UT text string (Optional; ExtensionLevel 3) A string defined by the user that is
appended to the end of the measurement value string. If omitted, no
string is appended.
S dictionary (Optional; ExtensionLevel 3) A comment reference is an indirect reference
to a projection annotation that may be associated with this 3D
measurement. See “3D Measurements and Projection Annotations” on
page 75.
TABLE 9.39b Additional entries in a 3D measurement/markup dictionary
for a 3D linear dimension measurement
KEY TYPE VALUE
Value
TP A2 A1
AP (annotation plane normal)
TY
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 65
The actual Y-axis is formed by taking the cross product of AP and (A2 - A1) the vector TY is used only to
determine the orientation of this Y-axis.
If the text position TP is outside the area between A1 and A2, an extension line collinear to the measure
line connecting TP to the closest anchor point is generated.
There are three parts to the text string displayed with the measurement, a numeric value (V), a units string
(U), and an optional user string (UT). The display of the numeric value field number is also controlled by the
precision value (P), which indicates how many digits to display to the right of the decimal point. The
viewer should convert the numeric value to a string and combine it with the units string and user text as
appropriate. This process is viewer dependent.
3D Perpendicular Dimension Measurement
A perpendicular measurement is used to denote the perpendicular distance between two geometric
entities (normally two lines or a point and a line) as illustrated here.
FIGURE 9.20
In these figures, a perpendicular measurement markup consists of two filled circles at the anchor points,
two parallel extension lines (referred to as leader lines) starting at the anchor points and extending away
from the anchor points. There is also a labeled line with arrowheads on both sides (referred to as the
measure line) indicating that the distance shown is the perpendicular distance between the two parallel
lines.
In addition to the entries in “TABLE 9.39a Entries in a 3D measurement/markup dictionary” on page 62, the
following entries are defined for a 3D measurement dictionary with a Subtype value of PD3 for 3D
perpendicular measurement.
TABLE 9.39c Additional entries in a 3D measurement/markup dictionary
for a 3D perpendicular dimension measurement
KEY TYPE VALUE
AP array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the 3D annotation plane on which the measurement markup will lie.
A1 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the model space position of the first anchor point in world space. It is
assumed that this is a position on the 3D model associated with this
view.
N1 text string (Optional; ExtensionLevel 3) The name of the part (or model tree node)
associated with anchor point 1 (A1). The part name is used to verify that
the part exists and is visible. If not, the measurement is not displayed. If
omitted, no validation occurs.

Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 66
A2 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the model space position of the second anchor point in world space. It is
assumed that this is a position on the 3D model associated with this
view.
N2 text string (Optional; ExtensionLevel 3) The name of the part (or model tree node)
associated with anchor point 2 (A2). The part name is used to verify that
the part exists and is visible. If not, the measurement is not displayed. If
omitted, no validation occurs.
D1 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the direction vector for leader lines associated with the anchor points
(A1 and A2).
TP array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the text anchor point for the measurement value string.
TY array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the up direction vector, called the text Y direction, for the text string
presenting the measurement value string.
TS number (Optional; ExtensionLevel 3) A number representing the measurement
text string height defined in points in the default user space. Note that
measurement text is zoom invariant.
The default is 12 points.
C array (Optional; ExtensionLevel 3) An array of three numbers in the range 0.0
to 1.0, representing the RGB color of the measurement markup.
The default value is the array [1 1 1], representing the color white.
V number (Required; ExtensionLevel 3) A numeric value representing a
measurement value. This value is converted to a text string and
displayed as part of the measurement text string.
U text string (Required; ExtensionLevel 3) A string, called the units string, representing
the units for the measurement.
P integer (Optional; ExtensionLevel 3) The number of decimal digits, which
represents the precision, shown for the measurement value (V).
The default is 3, if P is not specified.
TABLE 9.39c Additional entries in a 3D measurement/markup dictionary
for a 3D perpendicular dimension measurement
KEY TYPE VALUE
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 67
The following figure illustrates the parameters associated with the perpendicular dimension.
FIGURE 9.21
FIGURE 9.21 shows the measure markup and parameters. All the markup items are drawn on the
annotation plane (as defined by AP). The text layout is defined in a similar manner as for linear dimensions.
The lower-left corner of the text box is positioned at the text anchor point (TP), and the text's X-axis is
aligned with the measure line. The text will flow in the direction defined by a vector from A1 to A2. The
text's up direction is defined as the cross product of the annotation plane normal and the text X-axis, in the
direction defined by the TY parameter.
In addition to controlling text position, the text anchor point (TP) also controls the lengths of the leader
lines and the placement of the measure line. Because the leader lines are parallel and the measure line
must be perpendicular to both leader lines, the intersection of the leader lines and the measure line is
easily computed.
If the text position TP is outside the area between A1 and A2, an extension line collinear to the measure
line connecting TP to the closest anchor point is generated.
There are three parts to the text string displayed with the measurement: a numeric value (V), a units string
(U), and an optional user string (UT). The display of the numeric value field number is also controlled by the
precision value (P), which indicates how many digits to display to the right of the decimal point. The
viewer should convert the numeric value to a string and combine it with the units string and user text as
appropriate. This process is viewer dependent.
3D Angular Dimension Measurement
An angular measurement is used to denote the angle between two linear entities, as shown here.
UT text string (Optional; ExtensionLevel 3) A string defined by the user that is
appended to the end of the measurement value string. If omitted, no
string is appended.
S dictionary (Optional; ExtensionLevel 3) A comment reference is an indirect reference
to a projection annotation that may be associated with this 3D
measurement. See “3D Measurements and Projection Annotations” on
page 75.
TABLE 9.39c Additional entries in a 3D measurement/markup dictionary
for a 3D perpendicular dimension measurement
KEY TYPE VALUE
A1 A2
Value
TP (text anchor point)
D1
TY
AP (annotation plane normal)
Measure Iine
Ieader Iine
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 68
FIGURE 9.22
An angular measurement markup consists of two anchor points, FIGURE 9.22, one located on each of the
two linear entities whose angle is being measured. Connected to each anchor point is an extension line
that is collinear with the edge it measures. A labeled arc, with an arrowhead at each end, connects the two
extension lines, making it clear which angle is being measured.
In addition to the entries in “TABLE 9.39a Entries in a 3D measurement/markup dictionary” on page 62, the
following entries are defined for a 3D measurement dictionary with a Subtype value of AD3 for 3D
angular measurement.
TABLE 9.39d Additional entries in a 3D measurement/markup dictionary
for a 3D angular dimension measurement
KEY TYPE VALUE
AP array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the 3D annotation plane on which the measurement markup lies.
A1 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the model space position of the first anchor point in world space. It is
assumed that this is a position on the 3D model associated with this
view.
D1 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the direction vector for the leader line associated with the first anchor
point (A1).
N1 text string (Optional; ExtensionLevel 3) The name of the part (or model tree node)
associated with anchor point 1 (A1). The part name is used to verify that
the part exists and is visible. If not, the measurement is not displayed. If
omitted, no validation occurs.
A2 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the model space position of the second anchor point in world space. It is
assumed that this is a position on the 3D model associated with this
view.
D2 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the direction vector for the leader line associated with the second
anchor point (A2).
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 69
N2 text string (Optional; ExtensionLevel 3) The name of the part (or model tree node)
associated with anchor point 2 (A2). The part name is used to verify that
the part exists and is visible. If not, the measurement is not displayed. If
omitted, no validation occurs.
TP array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the text anchor point for the measurement value string.
TX array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the horizontal direction vector for the text string presenting the
measurement value string.
TY array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the up direction vector, called the text Y direction, for the text string
presenting the measurement value string.
TS number (Optional; ExtensionLevel 3) A number representing the measurement
text string height defined in points in the default user space. Note that
measurement text is zoom invariant.
The default is 12 points.
C array (Optional; ExtensionLevel 3) An array of three numbers in the range 0.0
to 1.0, representing the RGB color of the measurement markup.
The default value is the array [1 1 1], representing the color white.
V number (Required; ExtensionLevel 3) A numeric value representing a
measurement value. This value is converted to a text string and
displayed as part of the measurement text string.
P integer (Optional; ExtensionLevel 3) The number of decimal digits, which
represents the precision, shown for the measurement value (V).
The default is 3, if P is not specified.
UT text string (Optional; ExtensionLevel 3) A string defined by the user that is
appended to the end of measurement value string. If omitted, no string
is appended.
DR boolean (Optional; ExtensionLevel 3) A flag that indicates whether degrees or
radians are shown in angular measurements. If DR is true, angular
measurements are shown in degrees.
The default is true.
S dictionary (Optional; ExtensionLevel 3) A comment reference is an indirect reference
to a projection annotation that may be associated with this 3D
measurement. See “3D Measurements and Projection Annotations” on
page 75.
TABLE 9.39d Additional entries in a 3D measurement/markup dictionary
for a 3D angular dimension measurement
KEY TYPE VALUE
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 70
The key geometric parameters for an angular dimension are shown here.
FIGURE 9.23
The angle is defined by the measurement value V (30 in the FIGURE 9.23) and is the angle between the
leader direction vectors (D1 and D2). The angular measurement markup is generated by first computing
the center point of the angle, cp in this figure.
The text position (TP) controls the position of the measurement text, the placement of the angle arc, and
the length and direction of the extension lines. The extension lines are drawn from the anchor point to a
point at a distance ||TP-cp|| from the center point cp along the associated direction vector, which is the
intersection of the angle arc and the extension line. The angle arc center is at the center point cp (and its
radius is ||TP - cp||) and is drawn between the two extensions lines. The markup text is displayed (based on
the text orientation parameters) with the lower-left corner of the text string starting at the text position
(TP).
The text layout is defined in a similar manner as for other dimensions. The lower-left corner of the text box
is positioned at the text anchor point (TP), and the text's X-axis is defined by the vector TX. Note that the
vector TX is expected to be orthogonal with the annotation plane normal. The text's up direction is
defined as the cross product of the annotation plane normal and the text X-axis, in the direction defined
by the TY parameter.
The measurement value is interpreted as either being in degrees or radians as defined by the (DR) value,
and the appropriate label string is created.
There are three parts to the text string displayed with the measurement: a numeric value (V), a degrees or
radians string (U), and an optional user string (UT). The display of the numeric value field number is also
controlled by the precision value (P), which indicates how many digits to display to the right of the decimal
point. The viewer should convert the numeric value to a string and combine it with the degrees or radians
string and user text as appropriate. This process is viewer dependent.
There are some special cases:
● Parallel direction vectors (D1 and D2) are invalid, and no markup is generated.
● If the text position TP is outside the cone of the angle, an extension line is added to connect the text
with the angle arc.
30 Deg
D2
A2
A1
TP
D1
cp
Value
TP
TX
AP (annotation plane normal)
TY
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 71
3D Radial Dimension
The radial measurement is used to define the radius or diameter of a circular 3D entity. The following figure
illustrates two examples of a radial dimension.
FIGURE 9.24
As shown on the left, the basic markup for a radial dimension consists of an arrow pointing to a circle or arc
that is connected to a leader line and text label that defines the radius or diameter. If the arrow is
positioned such that it is off the underlying arc, as in the figure on the right, an extension arc is generated
that clarifies which arc is being measured.
For radius measurements, the measure value is preceded by an “R” in the measure string. For diameter
values, the measure value is preceded by a Greek phi symbol ( ).
In addition to the entries in “TABLE 9.39a Entries in a 3D measurement/markup dictionary” on page 62, the
following entries are defined for a 3D measurement dictionary with a Subtype value of RD3 for 3D radial
measurement.
TABLE 9.39e Additional entries in a 3D measurement/markup dictionary
for a 3D radial dimension measurement
KEY TYPE VALUE
AP array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the 3D annotation plane on which the measurement markup lies.
A1 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the model space position of the first anchor point, called the circle
center point, in world space. It is assumed that this is a position on the
3D model associated with this view.
A2 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the model space position of the second anchor point, which is a point
on the arc, in world space. It is assumed that this is a position on the 3D
model associated with this view.
N2 text string (Optional; ExtensionLevel 3) The name of the part (or model tree node)
associated with anchor point 2 (A2). The part name is used to verify that
the part exists and is visible. If not, the measurement is not displayed. If
omitted, no validation occurs.


Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 72
A3 array (Required for arcs only; ExtensionLevel 3) A three-element array of
numbers that defines the start of the arc being measured. This entry is
required if the geometry being measured is an arc. See FIGURE 9.26 for a
visual representation of A3.
A4 array (Required for arcs only; ExtensionLevel 3) A three-element array of
numbers that defines the end of the arc being measured. This entry is
required if the geometry being measured is an arc. See FIGURE 9.26 for a
visual representation of A4.
TP array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the text anchor point for the measurement value string.
TX array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the horizontal direction vector for the text string presenting the
measurement value string.
TY array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the up direction vector for the text string presenting the measurement
value string.
EL number (Optional; ExtensionLevel 3) The length of the extension line in points.
The default is 60 points.
TS number (Optional; ExtensionLevel 3) A number representing the measurement
text string height defined in points in the default user space. Note that
measurement text is zoom invariant.
The default is 12 points.
C array (Optional; ExtensionLevel 3) An array of three numbers in the range 0.0
to 1.0, representing the RGB color of the measurement markup.
The default value is the array [1 1 1], representing the color white.
V number (Required; ExtensionLevel 3) A numeric value representing a
measurement value. This value is converted to a text string and
displayed as part of the measurement text string.
U text string (Required; ExtensionLevel 3) A string representing the units for the
measurement.
P integer (Optional; ExtensionLevel 3) The number of decimal digits, which
represents the precision, shown for the measurement value (V).
The default to 3, if P is not specified.
UT text string (Optional; ExtensionLevel 3) A string defined by the user that is
appended to the end of measurement value string. If omitted, no string
is appended.
TABLE 9.39e Additional entries in a 3D measurement/markup dictionary
for a 3D radial dimension measurement
KEY TYPE VALUE
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 73
The parameters for defining the radial measurement for a circle are shown here.
FIGURE 9.25
The circle being measured is defined by two points lying on the annotation plane, a circle center A1, and a
point on the circle A2. For radial measurement, the text position (TP) controls the text string position, the
arrow line orientation, and the extension line. The arrow line is drawn from the text position (TP) to the
intersection point between the circle and a line from text position to the circle center. The extension line
will be drawn from the text position (TP) in the direction of the text string's X-axis (TX). The length of the
extension line is defined by the EL parameter. The left center of measure value string will begin at the end
of the extension line. Note that the vector TX is expected to be orthogonal with the annotation plane
normal. The text's up direction is defined as the cross product of the annotation plane normal and the text
X-axis, in the direction defined by the TY parameter.
The parameters for defining a radial dimension for an arc are very similar, as shown in FIGURE 9.26.
SC boolean (Optional; ExtensionLevel 3) A flag that indicates whether the underlying
circle, or arc, is shown or not. If true, the underlying circle associated
with a radial dimension is displayed.
The default is false, not to show the circle.
Note: The circle or arc is redrawn in the markup color (C).
R boolean (Optional; ExtensionLevel 3) A flag that indicates whether the
measurement value is for a radius or a diameter. If true, the
measurement value associated with a radial measurement represents a
radius, as opposed to a diameter value.
The default is true, the measurement value represents a radius.
S dictionary (Optional; ExtensionLevel 3) A comment reference is an indirect reference
to a projection annotation that may be associated with this 3D
measurement. See “3D Measurements and Projection Annotations” on
page 75.
TABLE 9.39e Additional entries in a 3D measurement/markup dictionary
for a 3D radial dimension measurement
KEY TYPE VALUE
R 1.0 inch
A1 (center)
A2 (on point)
TP
TX
TY
AP (annotation
plane normal)
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 74
FIGURE 9.26
The key difference for an arc is that there are two addition points defining the start (A3) and end (A4)
position for the arc. Additionally for an arc, the text position can be defined such that an extension arc,
with an arrowhead on either end, shall be generated, shown in red in FIGURE 9.26.
There are three parts to the text string displayed with the measurement: a numeric value (V), a units string
(U), and an optional user string (UT). The display of the numeric value field number is also controlled by the
precision value (P), which indicates how many digits to display to the right of the decimal point. The
viewer should convert the numeric value to a string and combine it with the units string and user text as
appropriate. This process is viewer dependent.
3D Comment Note
3D comment notes let users connect a comment to a specific piece of geometry in the 3D model. The
markup consists of a leader line that connects the model to a text box placed in the 3D scene. The text box
is rendered so that the text is always facing the user.
Commenting functionality is specified by creating a projection annotation that represents the 3D
measurement/markup within the commenting system. See “3D Measurements and Projection
Annotations” on page 75 for additional details.
In addition to the entries in “TABLE 9.39a Entries in a 3D measurement/markup dictionary” on page 62, the
following entries are defined for a 3D measurement dictionary with a Subtype value of 3DC for 3D
comment note.
TABLE 9.39f Additional entries in a 3D measurement/markup dictionary
for a 3D comment note
KEY TYPE VALUE
A1 array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the model space position of the first anchor point in world space. It is
assumed that this is a position on the 3D model associated with this
view.
N1 text string (Optional; ExtensionLevel 3) The name of the part (or model tree node)
associated with anchor point 1 (A1). The part name is used to verify that
the part exists and is visible. If not, the measurement is not displayed. If
omitted, no validation occurs.

R 1.0 inch
A1 (center)
A2 (on point)
TP
TX
TY
AP (annotation plane normal)
A3 (start point)
A4 (end point)
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.5.6 Persistence of 3D Measurements and Markups 75
The first anchor point (A1) defines the connection to the model. The model space text position TP field
defines placement of the corner of the text box that lies closest to anchor point 1 (A1) in the current view.
The user string field contains the text to be fitted into the text box. See implementation note E-10,
page 131.
3D Measurements and Projection Annotations
Associations between a 3D measurement and a projection annotation are created by defining an indirect
reference to a dictionary in both the projection annotation and the 3D measurement.
Projection annotation: When the projection annotation (see “Projection Annotations” on page 39) is
created, the ExData entry (an external data dictionary) is defined and used to manage the association
between the 3D measurement and the comment. TABLE 9.39g Entries in the external data dictionary of
TP array (Required; ExtensionLevel 3) A three-element array of numbers specifying
the text anchor point for the measurement value string.
TB array (Optional; ExtensionLevel 3) A two-element integer array defining the x
and y size of the text box to contain the user text string (UT). The x value
is defined as a number of characters shown in the x direction (the top
row); the y value is the number of rows of text. The conforming reader is
free to flow the text in the text box as appropriate. If the entire string
does not fit, it may be truncated. The conforming reader may also
choose any font in which to render the content, though a monospaced
font is recommended.
TS number (Optional; ExtensionLevel 3) The text size – a number representing the
measurement text string height defined in points in the default user
space. Note that measurement text is zoom invariant.
The default is 12 points.
C array (Optional; ExtensionLevel 3) An array of three numbers in the range 0.0 to
1.0, representing the Device RGB color of the measurement markup.
The default value is the array [1 1 1], representing the color white.
UT text string (Optional; ExtensionLevel 3) The string displayed as the contents of the
3D comment note.
S dictionary (Optional; ExtensionLevel 3) A comment reference is an indirect reference
to a projection annotation that may be associated with this 3D
measurement. See “3D Measurements and Projection Annotations” on
page 75.
TABLE 9.39f Additional entries in a 3D measurement/markup dictionary
for a 3D comment note
KEY TYPE VALUE
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6 Rich Media 76
a projection annotation describes the entries in the external data dictionary of the projection
annotation that are used for referencing a 3D measurement.
3D measurement: The value of the S entry in the 3D measurement dictionary is an indirect reference
to a projection annotation dictionary of the associated comment.
Add the Section 9.6 on Rich Media content.
9.6 Rich Media
Extension level 3 introduces rich media PDF constructs that support playing a SWF file and provide
enhanced rich media. With rich media annotation, Flash applications, video, audio, and other multimedia
can be attached to a PDF with expanded functionality. It improves upon the existing 3D annotation
structure to support multiple multimedia file assets, including Flash video and compatible variations on
the H.264 format. The new constructs allow a two-way scripting bridge between Flash and a conforming
application. There is support for generalized linking of a Flash application state to a comment or view,
which enables video commenting. Finally, actions can be linked to video chapter points.
9.6.1 RichMedia Annotations
The annotation subtype RichMedia shares many low-level structural similarities with the 3D Artwork
defined in Section 9.5 of the PDF Reference. At the top level, the rich media annotation has two primary
custom structures. The RichMediaSettings dictionary is unique to each annotation, but the
RichMediaContent dictionary can be shared across rich-media annotations.
The rich media annotation can contain any of the entries of an annotation dictionary. (See implementation
note E-12 on page 131.) Table 9.49 shows the additional annotation entries specific to this type of
annotation.
TABLE 9.39g Entries in the external data dictionary of a projection annotation
KEY TYPE VALUE
Type name (Required; ExtensionLevel 3) The type of PDF object
that this dictionary describes; if present, shall be
ExData for an external data dictionary.
Subtype name (Required; ExtensionLevel 3) The type of external data
that this dictionary describes; shall be 3DM for an
association to a 3D measurement.
M3DREF dictionary (Required; ExtensionLevel 3) An indirect reference to a
3D measurement dictionary for which this
projection annotation is a comment. See “Projection
Annotations” on page 39.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 77
As with 3D annotations defined in Section 9.5.1 of the PDF Reference, sixth edition, RichMedia annotations
can be in one of two states,
Inactive: (the default initial state) The annotation displays the normal appearance of the annotation.
Typically, the normal appearance is a 2D bitmap portraying a rendering of the default view of the
artwork within the RichMedia annotation.
Active: The annotation displays a rendering of the artwork. This rendering is specified by the
annotation’s RichMediaSettings entry. (See “TABLE 9.50 Entries in a RichMediaSettings dictionary”
on page 78.)
The subsequent sections describe the structural components of a rich media annotation, beginning with
the RichMediaSettings dictionary and its subcomponents, followed by the RichMediaContent dictionary,
on page 86, and its subcomponents. See the “Extended Example” on page 94 for a detailed and
comprehensive example of a rich media annotation.
TABLE 9.49 Additional entries specific to a RichMedia annotation
KEY TYPE VALUE
Subtype name (Required; ExtensionLevel 3) The type of annotation
that the dictionary describes. The name shall be
RichMedia for a rich media annotation.
RichMediaSettings dictionary (Optional; ExtensionLevel 3) A RichMediaSettings
dictionary that stores conditions and responses that
determine when the annotation should be activated
and deactivated and the initial state of artwork in
those states. See “RichMediaSettings Dictionary” on
page 78.
Default value: If no RichMediaSettings dictionary is
present, the first configuration is loaded.
RichMediaContent dictionary (Required; ExtensionLevel 3) A RichMediaContent
dictionary that stores the rich media artwork and
information as to how it should be configured and
viewed. See “RichMediaContent dictionary” on
page 86.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 78
RichMediaSettings Dictionary
The RichMediaSettings dictionary has a purpose similar to that of the 3DA dictionary with the 3D
Annotation described in Section 9.5.1 of the PDF Reference. The RichMediaSettings dictionary stores the
conditions and responses that occur in response to certain events, such as activation and deactivation of
the annotation, and contains two dictionaries. Table 9.50 gives the details of the content of this dictionary.
RichMediaActivation Dictionary
The RichMediaActivation dictionary specifies the style of presentation, default script behavior, default
view information, and animation style when the annotation is activated. Table 9.50a details the contents of
the dictionary.
The activation dictionary includes a script array. Each element contains an indirect object reference to file
specification objects that are also referenced by the Assets name tree of the RichMediaContent
dictionary (See “RichMediaContent dictionary” on page 86.) When the annotation is activated, each script
in the array is executed in order in a common environment per annotation by the rich media run time
JavaScript interpreter.
There is an optional reference to a view in the scene’s Views array (see “TABLE 9.51 Entries in a
RichMediaContent dictionary” on page 86) that acts as the default view for the annotation. If not specified,
TABLE 9.50 Entries in a RichMediaSettings dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object
that this dictionary describes. If present, shall be
RichMediaSettings for a RichMediaSettings
dictionary.
Activation dictionary (Optional; ExtensionLevel 3) A RichMediaActivation
dictionary (see Table 9.50a) that specifies the style of
presentation, default script behavior, default view
information, and animation style when the
annotation is activated.
Deactivation dictionary (Optional; ExtensionLevel 3) A RichMediaDeactivation
dictionary (see Table 9.50b) that specifies the
condition and type of unloading (restart or pause)
that occurs during deactivation.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 79
the first view in the views array is used. If there are no views specified, default values are used for all camera
and display parameters.
TABLE 9.50a Entries in a RichMediaActivation dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this
dictionary describes. If present, shall be
RichMediaActivation for an activation dictionary.
Condition name (Optional; ExtensionLevel 3) A name that specifies the
circumstances under which the annotation should be
activated. The following values are valid:
● XA, the annotation is explicitly activated by a user action or
script.
● PO, the annotation is activated as soon as the page that
contains the annotation receives focus as the current page.
● PV, the annotation is activated as soon as any part of the
page that contains the annotation becomes visible. One
example is in a multiple-page presentation. Only one page
is the current page although several are visible.
Default value: XA.
Animation dictionary (Optional; ExtensionLevel 3) A RichMediaAnimation dictionary
that describes the preferred method that conforming readers
should use to drive keyframe animations present in this
artwork. (See “TABLE 9.50c Entries in a RichMediaAnimation
dictionary” on page 81.)
View dictionary (Optional; ExtensionLevel 3) An indirect object reference to a 3D
view dictionary that shall also be referenced by the Views
array within the annotation’s RichMediaContent dictionary.
(See “RichMediaContent dictionary” on page 86.)
Default value: The first element in the Views array of the
annotation specified in the RichMediaContent dictionary. (See
“TABLE 9.51 Entries in a RichMediaContent dictionary” on
page 86.) If a Views array does not exist, default values for the
components of a 3D view dictionary (see Section 9.5.3 of the
PDF Reference) are used.
Configuration dictionary (Optional; ExtensionLevel 3) An indirect object reference to a
RichMediaConfiguration dictionary that shall also be
referenced by the Configurations array in the
RichMediaContent dictionary. (See “TABLE 9.51 Entries in a
RichMediaContent dictionary” on page 86.)
Default value: The first element within the Configurations
array specified in the RichMediaContent dictionary.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 80
RichMediaDeactivation Dictionary
The second component of the RichMediaSettings dictionary is the RichMediaDeactivation dictionary,
which specifies the condition that causes deactivation of the annotation.
RichMediaAnimation Dictionary
A RichMediaAnimation dictionary specifies the preferred method that conforming readers should use to
apply timeline scaling to keyframe animations. It can also specify that keyframe animations be played
repeatedly. The Animation entry of the RichMediaActivation dictionary (Table 9.50c, page 78) can specify
a RichMediaAnimation dictionary.
Presentation dictionary (Optional; ExtensionLevel 3) A RichMediaPresentation
dictionary that contains information as to how the annotation
and user interface elements will be visually laid out and drawn.
See Table 5 for a detailed description.
Scripts array (Optional; ExtensionLevel 3) An array of indirect object
references to file specification dictionaries, each of which
describe a JavaScript file that shall be present in the Assets
name tree of the RichMediaContent dictionary.
Default value: If the array has no elements, no script is
executed.
TABLE 9.50b Entries in a RichMediaDeactivation dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this
dictionary describes. If present, shall be
RichMediaDeactivation for a RichMediaDeactivation
dictionary.
Condition name (Optional; ExtensionLevel 3) A name specifying the circumstances
under which the annotation should be deactivated. The following
values are valid:
● XD, the annotation is explicitly deactivated by a user action or
script.
● PC, the annotation is deactivated as soon as the page that
contains the annotation loses focus as the current page.
● PI, the annotation is deactivated as soon as the entire page
that contains the annotation is no longer visible.
Default value: XD.
TABLE 9.50a Entries in a RichMediaActivation dictionary
KEY TYPE VALUE
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 81
A keyframe animation can be provided as part of Flash or 3D model content. Keyframe animation is an
interactive feature that is highly dependent on the behavior and controls provided by the conforming
reader. Table 9.50c shows the entries in a RichMediaAnimation dictionary.
Example: A RichMediaSettings dictionary
20 0 obj % RichMediaSettings dictionary
<< /Type /RichMediaSettings
/Activation
<< /Type /RichMediaActivation % RichMediaActivation Dictionary
/Condition /XA
/Configuration 14 0 R % Reference to element in Configurations array
/View 19 0 R % Reference to element in Views array
/Animation % RichMediaAnimation dictionary
<< /Type /RichMediaAnimation
/Subtype /Linear
/Speed 1
/PlayCount -1
>>
/Presentation 21 0 R
TABLE 9.50c Entries in a RichMediaAnimation dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this
dictionary describes. If present, the type shall be
RichMediaAnimation for an animation dictionary.
Subtype name (Optional; ExtensionLevel 3) The animation style described by
this dictionary. Valid values are None, Linear, and
Oscillating. See Table 9.37 of the PDF Reference, sixth
edition, PDF 1.7, for descriptions of these animation styles.
If an animation style is encountered other than those
described, an animation style of None is used.
Default value: None
PlayCount integer (Optional; ExtensionLevel 3) An integer specifying the play count
for this animation style. A nonnegative integer represents the
number of times the animation is played. A negative integer
indicates that the animation is infinitely repeated.
This value is ignored for an animation subtype of type None.
Default value: -1
Speed number (Optional; ExtensionLevel 3) A positive number specifying the
speed to be used when running the animation. A value greater
than one shortens the time it takes to play the animation, or
effectively speeds up the animation. This allows authors to
change the desired speed of animations without re-authoring
the content.
This value is ignored for an animation subtype of type None.
Default value: 1
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 82
/Scripts % References to scripts in Resources name tree
[ 32 0 R
33 0 R
]
>>
/Deactivation % RichMediaDeactivation dictionary
<< /Type /RichMediaDeactivation
/Condition /XD
>>
>>
endobj
RichMediaPresentation Dictionary
The RichMediaPresentation dictionary contains information about how the annotation and user interface
elements are to be visually laid out and drawn. The visibility of the Toolbar is specified, and it will only
take effect if the RichMediaConfiguration subtype is 3D. (See “TABLE 9.51a Entries in a
RichMediaConfiguration dictionary” on page 88.)
User interface items such as the navigation pane can be displayed or hidden by default. The navigation
pane is a user interface item used to display the hierarchical relationship of entities within the artwork.
(See Section 9.5.1, “3D Annotations” of the PDF Reference, sixth edition.)
The Style of the annotation can be presented Embedded within the PDF page or separately Windowed.
If a Windowed state is chosen, the default dimensions and position of the window may be given.
Table 9.50d contains a description of each element.
TABLE 9.50d Entries in a RichMediaPresentation dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that
this dictionary describes. If present, shall be
RichMediaPresentation for a presentation
dictionary.
Style name (Optional; ExtensionLevel 3) The style of presentation of
the rich media. The value can be Embedded or
Windowed. A conforming reader shall support the state
Embedded.
Default value: Embedded.
Window dictionary (Optional; ExtensionLevel 3) A RichMediaWindow
Dictionary that describes the size and position of the
floating user interface window when the value for
Style is set to Windowed. See “RichMediaWindow
Dictionary” on page 84 for a detailed description.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 83
Transparent boolean (Optional; ExtensionLevel 3) A flag that indicates whether
the page content is displayed through the transparent
areas of the rich media content (where the alpha value
is less than 1.0). If true, the rich media artwork is
composited over the page content using an alpha
channel. If false, the rich media artwork is drawn over
an opaque background prior to composition over the
page content. (See also implementation note E-13,
page 131.)
Default value: false
NavigationPane boolean (Optional; ExtensionLevel 3) A flag that indicates the
default behavior of the navigation pane user interface
element. If true, the navigation pane is visible when
the content is initially activated. If false, the
navigation pane is not displayed by default.
Default value: false
Toolbar boolean (Optional; ExtensionLevel 3) A flag that indicates the
default behavior of an interactive toolbar associated
with this annotation. If true, a toolbar is displayed
when the annotation is activated and given focus. If
false, a toolbar is not displayed by default.
The toolbar should be positioned in proximity to the
annotation.
Default value: true for content of Subtype 3D, and
false otherwise.
PassContextClick boolean (Optional; ExtensionLevel 3) A flag that indicates whether
a context click on the rich media annotation is passed to
the media player run time or is handled by the
conforming reader.
If false, the conforming reader handles the context
click. If true, the conforming reader’s context menu is
not visible, and the user sees the context menu and any
custom items generated by the media player run time.
Default value: false
Note: A context click is usually generated by a mouse
right-click although it may be invoked by other
means. This can include, but is not limited to, an
explicit context-menu keyboard key or the
combination of a mouse click and a keyboard
modifier key.)
TABLE 9.50d Entries in a RichMediaPresentation dictionary
KEY TYPE VALUE
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 84
RichMediaWindow Dictionary
The RichMediaWindow dictionary stores the dimensions and position of the floating window presented to
the user. It is used only if Style (RichMediaPresentation dictionary, page 82) is set to Windowed. The
window described is a non-printing user interface element. A conforming reader constrains the window
extent to be within the presentation area of the reader.
All coordinates are expressed in default user space units although do not rotate or scale the window to
match the orientation and magnification of the page. The expected behavior is similar to when the flags
NoZoom and NoRotate are set to true. (See Section 8.4.2, “Annotation Flags” in PDF Reference, sixth
edition.) Table 9.50e details the contents of this dictionary.
The position of the window in the reader presentation area is described by the RichMediaPosition
dictionary. The position of the window remains fixed, regardless of the page translation. Table 9.50f details
the contents of this dictionary.
TABLE 9.50e Entries in a RichMediaWindow dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this
dictionary describes. If present, shall be RichMediaWindow
for a RichMediaWindow dictionary.
Width dictionary (Optional; ExtensionLevel 3) A dictionary with keys Default,
Max, and Min describing values for the width of the Window in
default user space units.
Default values: Default is 288, Max is 576, and Min is 72
Height dictionary (Optional; ExtensionLevel 3) A dictionary with keys Default,
Max, and Min describing values for the width of the Window in
default user space units.
Default values: Default is 216, Max is 432, and Min is 72
Position dictionary (Optional; ExtensionLevel 3) A RichMediaPosition dictionary
describing the position of the RichMediaWindow. See Table
9.50e for a detailed description.
TABLE 9.50f Entries in a RichMediaPosition dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this
dictionary describes. If present, it shall be
RichMediaPosition for a RichMediaPosition dictionary.
HAlign name (Optional; ExtensionLevel 3) Describes the horizontal alignment.
Valid values are Near, Center, and Far.
Default value: Far
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 85
The descriptions of the values of the HAlign and VAlign entries depend on the reading order. For
left-to-right reading languages, as defined by the value of the Lang entry in the document's Catalog, the
descriptions follow.
HAlign: Near represents the left edge of the window, and Far represents the right edge of the
window.
VAlign: Near represents the top edge of the window, and Far represents the bottom edge of the
window.
For right-to-left reading languages, the above descriptions for HAlign are reversed.
Example: A RichMediaPresentation Dictionary
24 0 obj % RichMediaPresentation dictionary
<< /Type /RichMediaPresentation
/Toolbar /false
/NavigationPane /false
/PassContextClick /false
/Style /Windowed
/Window 25 0 R
>>
endobj
25 0 obj % RichMediaWindow dictionary
<< /Type /RichMediaWindow
/Height
<< /Default 216
/Max 432
/Min 72
VAlign name (Optional; ExtensionLevel 3) Describes the vertical alignment.
Valid values are Near, Center, and Far.
Default value: Near
HOffset number (Optional; ExtensionLevel 3) The offset from the alignment point
specified by the HAlign key. A positive value for HOffset,
when HAlign is either Near or Center, offsets the position
towards the Far direction. A positive value for HOffset, when
HAlign is Far, offsets the position towards the Near
direction.
Default value: 18
VOffset number (Optional; ExtensionLevel 3) The offset from the alignment point
specified by the VAlign key. A positive value for VOffset,
when VAlign is either Near or Center, offsets the position
towards the Far direction. A positive value for VOffset, when
VAlign is Far, offsets the position towards the Near
direction.
Default value: 18
TABLE 9.50f Entries in a RichMediaPosition dictionary
KEY TYPE VALUE
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 86
>>
/Width
<< /Default 288
/Max 576
/Min 72
>>
/Position
<< /Type /RichMediaPosition % RichMediaPosition dictionary
/HAlign /Far
/VAlign /Near
/HOffset 18
/VOffset 18
>>
>>
endobj
In the above example, the toolbar or the navigation pane are not displayed on initial activation of the
annotation. Context click events are handled by the conforming reader and not passed to the annotation
handler. The annotation appears as a separate window with an initial width of four inches and an initial
height of three inches and will be aligned 0.25 inches off the top right (in left to right reading languages)
corner of the document area.
RichMediaContent dictionary
The RichMediaContent dictionary contains content that is present within the annotation as referenced by
the RichMediaSettings dictionary. (See “TABLE 9.50 Entries in a RichMediaSettings dictionary” on page 78.)
Table 9.51 details the elements of the RichMediaContent dictionary.
TABLE 9.51 Entries in a RichMediaContent dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this
dictionary describes. If present, it shall be
RichMediaContent for a RichMediaContent dictionary.
Assets name tree (Optional; ExtensionLevel 3) A name tree of embedded file
specification dictionaries as detailed in Section 3.10.2 of the
PDF Reference, sixth edition.
Configurations array (Optional; ExtensionLevel 3) An array where each element is an
indirect object reference to a RichMediaConfiguration
dictionary.
Views array (Optional; ExtensionLevel 3) An array where each element is an
indirect object reference to a 3D view dictionary. See “View
Dictionary” on page 92 for the details of the entries of this
dictionary.
Default value: If no views are specified, default values are used
for the components of a view dictionary, including
rendering/lighting modes, background color, and camera data.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 87
The Assets name tree
The Assets entry takes a name tree of embedded file specification dictionaries. The structure of these
name trees is compatible with the Resources entry (“TABLE 8.6a Entries in a collection colors dictionary”
on page 31) as used by portable collections.
The text string that represents the file name in the name tree shall match the values stored for both the F
and UF keys, which shall be the same value. The file name is encoded as a relative URI and has the
following naming restrictions:
● The string shall be a PDF text string.
● The string shall not contain any embedded NULL characters.
● The number of characters in the string shall be between 1 and 255 inclusive.
● The string shall not contain any of these six characters: U+003A COLON (:), U+002A ASTERISK (*),
U+0022 QUOTATION MARK ("), U+003C LESS-THAN SIGN (<), U+003E GREATER-THAN SIGN (>), and
U+007C VERTICAL LINE (|).
● The last character shall not be a U+002E FULL STOP (.).
The restrictions listed above are inherited from the Universal Container Format (UCF) specification. (See the
Bibliography.)
Example: Assets name tree
29 0 obj % Assets name tree
<< /Names
[ (3D.u3d) 30 0 R
(Flash.swf) 31 0 R
]
>>
endobj
30 0 obj % File specification dictionary for 3D file
<< /Type /Filespec
/F (3D.u3d)
/UF (3D.u3d)
/EF <</F 40 0 R >> % Stream containing the 3D file
>>
endobj
31 0 obj % File specification dictionary for SWF file
<< /Type /Filespec
/F (Flash.swf)
/UF (Flash.swf)
/EF << /F 41 0 R >> % Stream containing the Flash file
>>
endobj
40 0 obj % Embedded file stream for 3D file
<< /Type /EmbeddedFile % 3D.u3d
/Length …
/Filter …
>>
stream
…Data for 3D.u3d…
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 88
endstream
endobj
RichMediaConfiguration Dictionary
The RichMediaConfiguration dictionary describes a set of instances that are loaded for a given scene
configuration. The configuration to be loaded when an annotation is activated is referenced by the
Configuration key in the RichMediaActivation dictionary specified in the RichMediaSettings
dictionary. Table 9.51a details the elements of the RichMediaConfiguration dictionary.
A RichMediaConfiguration may be an aggregate of several RichMediaInstance dictionaries with different
values for subtype. The Subtype entry helps to describe the behavior for the collection of those
RichMediaInstance dictionaries.
For example, a FLV video file may require a SWF file to view it. Though the primary instance in the
configuration may be a SWF file, the annotation is intended for video playback and thus should have a
subtype of Video.
Setting the Subtype suggests the author’s intended use of the assets, which better informs the choices
when presenting content-specific user interfaces during the authoring or editing process.
RichMediaInstance Dictionary
The RichMediaInstance dictionary, referenced by the Instances entry of the RichMediaConfiguration
dictionary (“RichMediaConfiguration Dictionary” on page 88), describes a single instance of an asset with
settings to populate the artwork of an annotation, as described in Table 9.51b.
TABLE 9.51a Entries in a RichMediaConfiguration dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this
dictionary describes. If present, it shall be
RichMediaConfiguration for a RichMediaConfiguration
dictionary.
Subtype name (Optional; ExtensionLevel 3) A name specifying the primary content
type for the configuration. Valid values are 3D, Flash, Sound, and
Video.
Default value: If no value is specified, the run time determines the
scene type by referring to the type of asset file specified by the first
element in the Instances array.
Name text tree (Optional; ExtensionLevel 3) A unique name for the configuration.
Instances array (Optional; ExtensionLevel 3) An array of indirect object references to
RichMediaInstance dictionaries. (See “TABLE 9.51b Entries in a
RichMediaInstance dictionary”.)
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 89
Example: RichMediaInstance dictionaries
15 0 obj % RichMediaInstances array
[ 16 0 obj
17 0 obj
]
endobj
16 0 obj % RichMediaInstance dictionary
<< /Type /RichMediaInstance
/Subtype /3D
/Asset 30 0 R % Reference to 3D filespec in Assets
>>
endobj
17 0 obj % RichMediaInstance dictionary
<< /Type /RichMediaInstance
/Subtype /Flash
/Asset 31 0 R % Reference to Flash filespec in Assets
/Params 18 0 R
>>
endobj
TABLE 9.51b Entries in a RichMediaInstance dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this
dictionary describes. If present, it shall be RichMediaInstance
for a RichMediaInstance dictionary.
Subtype name (Required; ExtensionLevel 3) A name specifying the content type for
the instance. Valid values are 3D, Flash, Sound, and Video. The
subtype shall match the asset file type of the instance.
Params dictionary (Optional; ExtensionLevel 3) A RichMediaParams dictionary as
described in “TABLE 9.51c Entries in a RichMediaParams dictionary”
on page 90. This entry is valid only for subtype Flash.
Asset dictionary (Required; ExtensionLevel 3) A dictionary that shall be an indirect
object reference to a file specification dictionary that is also
referenced in the Assets name tree specified in the
RichMediaContent dictionary of the annotation.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 90
RichMediaParams Dictionary
Contains parameters related to an active Flash subtype in a RichMediaInstance dictionary, as described
in Table 9.51c. A RichMediaParams dictionary is not used by content subtypes other than Flash.
TABLE 9.51c Entries in a RichMediaParams dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this
dictionary describes. If present, it shall be
RichMediaParams for a RichMediaParams dictionary.
FlashVars text string or
stream
(Optional; ExtensionLevel 3) A text string or stream
containing formatted name value pairs passed to the
Flash Player context when activated. For the format
specifics, see the document titled Using FlashVars to pass
variables to a SWF, listed in the Bibliography.
Default value: No data is sent to the Flash Player.
Binding name (Optional; ExtensionLevel 3) Values can be None,
Foreground, Background, or Material. The
descriptions for these values are given in Table 9.51d,
page 88.
Default value: None
BindingMaterialName text string (Required if Binding value is Material; ExtensionLevel 3)
Stores the material name that content is to be bound to.
CuePoints array (Optional; ExtensionLevel 3) An array of CuePoint
dictionaries containing points in time within a Flash
animation. See “CuePoint Dictionary” on page 91 for a
detailed description.
Default values: an empty array
Settings text string or
stream
A text string/stream used to store settings information
associated with a Flash RichMediaInstance. It is to be
stored and loaded by the scripting run time. See the
discussion of the Settings entry that follows for more
information.
Default value: undefined
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 91
Table 9.51d contains descriptions of the values of the Binding key of Table 9.51c.
The Settings entry (as described in Table 9.51c) in a RichMediaParams dictionary is used to store and
load settings information specific to the content referenced by the resource in the same
RichMediaInstance dictionary. The value of the Settings entry is passed by the ActionScript
ExternalInterface command multimedia_loadSettingsString, where the value of
Settings is passed as the first and only argument.
The Settings string is updated when the Flash content sends the following ActionScript command to
the player:
ExternalInterface.call( "multimedia_saveSettingsString", settings );
In this command, settings is the argument and is the new string value to be written to the Settings
entry. This value is honored only when the conforming reader has the rights to edit the document, and
results in the document being dirtied.
CuePoint Dictionary
A video file can contain cue points that are encoded in a video stream or may be created by an associated
ActionScript within the Flash content. The CuePoint dictionary, as described in Table 9.51e, contains a state
that relates the cue points to an action that may be passed to the conforming application or may be used
to change the appearance. Cue points in the Flash content are matched to the cue points declared in the
PDF file by the values specified by the Name or Time keys.
TABLE 9.51d Definitions of the Binding name values
KEY DESCRIPTION
None The Flash content is unbound and is not visible at playback time.
Foreground The Flash content is bound to the foreground and is rendered in front of the
3D model and background Flash content in the active annotation. If more
than one RichMediaInstance has a RichMediaParams dictionary Binding
value of Foreground, the Flash content is rendered in order from back to
front, each instance composited over prior instances using its alpha
channel.
Background The Flash content is bound to the background and is rendered behind any
3D model content or Flash foreground elements in the active annotation.
For a given RichMedia annotation, there can be one active
RichMediaInstance that has a RichMediaParams dictionary Binding value
of Background. If more than one is specified, the last RichMediaInstance
specified for the background is used.
Material The Flash content is bound to a material that is part of 3D content. If that
material is applied to geometry within a 3D scene, the Flash appears to be
playing upon this object as if conforming to the surface of the object.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 92
d
Example: The RichMediaParams Dictionary
18 0 obj % RichMediaParams dictionary
<< /Type /RichMediaParams
/Binding /Foreground
/FlashVars (name=John+Smith&address=1+Main+St.&city=Springfield)
/CuePoints
[
<< /Type /CuePoint
/Name (Cue Point 1)
/Subtype /Navigation
/Time 5100
>>
<< /Name (Cue Point 2)
/Subtype /Event
/Time 4020
/A 19 0 R
>>
]
>>
endobj
View Dictionary
View dictionaries specify a unique view of the artwork that can be used when the annotation is activated
or selected. A View dictionary entry in a rich media annotation contains a superset of the information
TABLE 9.51e Entries in a CuePoint dictionary
KEY TYPE VALUE
Type name (Optional; ExtensionLevel 3) The type of PDF object that this dictionary
describes. If present, it shall be CuePoint for a CuePoint dictionary.
Subtype name (Optional; ExtensionLevel 3) Values can be Navigation or Event, as
described here:
A Navigation cue point is an event encoded in a Flash movie
(FLV). A chapter stop may be encoded so that when the user
requests to go to or skip a chapter, a navigation cue point is used to
indicate the location of the chapter.
An Event is a generic cue point of no specific significance other
than a corresponding action is triggered.
Name text string (Required; ExtensionLevel 3) The name of the cue point to match against
the cue point within Flash content and for display purposes.
Time number (Required; ExtensionLevel 3) The time value of the cue point in
milliseconds to match against the cue point within Flash content and
for display purposes.
A dictionary (Required; ExtensionLevel 3) An action dictionary defining the action
that is executed if this cue point is triggered, meaning that the Flash
content reached the matching cue point during its playback. (See
Section 8.5.1 of the PDF Reference, sixth edition.)
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 93
present in a 3D view (3DV) dictionary as specified in Section 9.5.3 of the PDF Reference. Table 9.51f
describes the entries in addition to those present within a 3D view dictionary.
If the Snapshot entry exists, the image it describes is displayed in place of the current artwork. Because
the snapshot image is integrated by the player with other elements, such as user interface controls for
video playback, the color space of the image may be modified.
View Params Dictionary
The View Params dictionary provides a reference to a RichMediaInstance dictionary within the
Instances array, and additional Data that is passed to the instance. This data may be formatted to serve
the individual purpose of the content being referenced.
The Data entry (as described in Table 9.51g) in a View Params dictionary is used to store and load opaque
data specific to the Instance referenced in the same dictionary when a View is activated. This system
allows content-specific state information to be stored when a view is created, usually during a comment or
drawing markup.
Saving State Data. When the View is created, the run time iterates through all active instances for the
current configuration and queries them for state data. The mechanism by which the content of the Data
entry is retrieved from the content instance depends on the content type:
Flash content: An ActionScript ExternalInterface call is made to the function
multimedia_getState with no arguments. The return value, if it is present and can be interpreted
as a string, is stored as the value for Data.
3D content: A JavaScript StateEvent is invoked with the type property set to the value save. After
the event is handled, the value for the data property, if it is present and can be interpreted as a string, is
stored as the value for Data.
TABLE 9.51f Additional entries to a 3D view dictionary
KEY TYPE VALUE
Snapshot stream (Optional; ExtensionLevel 3) A stream that contains an image XObject
(see Section 4.8, “Images”) to be displayed when the view is invoked.
Default value: No image is used, the currently active rich media content
is displayed.
Params array (Optional; ExtensionLevel 3) An array containing View Params
dictionaries. See TABLE 9.51g Entries in a View Params dictionary for a
detailed description.
Default value: An empty array
TABLE 9.51g Entries in a View Params dictionary
KEY TYPE VALUE
Instance dictionary (Required; ExtensionLevel 3) A dictionary that shall be an indirect object
reference to a RichMediaInstance dictionary that is also present in the
Instances array of the annotation.
Data text string or
stream
(Required; ExtensionLevel 3) A text string or stream containing state data
to be passed to the instance when the view is triggered.
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 94
This is honored only when the conforming reader has the usage rights to edit the document. It results in
the document being dirtied.
Loading State Data. When the View is activated, the run time iterates through each View Params
dictionary and loads the state data for each Instance referenced. The mechanism by which the content
of the Data entry is restored depends on the content type:
Flash content: An ActionScript ExternalInterface call is made to the function
multimedia_setState, where the first argument is the value stored for Data.
3D content: A JavaScript StateEvent is invoked with the type property set to the value load and
the data property set to the value stored for Data.
See implementation note E-11, page 131.
State Data for Commenting on Video. RichMedia annotations that support video playback have a Flash
(.swf ) resource to enable playback of the video content. That file needs to support saving and loading
state data in order to enable commenting on Video.
The format of the state data when a multimedia_getState ExternalInterface command is invoked is as
follows, where currentTimeInSeconds is the current time the video playhead is set at:
'<stateData><movieInfo time="currentTimeInSeconds"/></stateData>'
Sending a multimedia_setState ExternalInterface command to the video player Flash instance with
the above string as an argument sets the current time to match the value for currentTimeInSeconds.
Extended Example
The following is a quasi complete example of a rich media annotation.
9 0 obj % RichMedia annotation
<< /Type /Annot
/Subtype /RichMedia
/NM (RichMedia001) % Annotation name
/AP << /N 10 0 R >> % Appearance dictionary
/F 68 % Annotation flags
/P 5 0 R % Parent
/Rect [ 50 50 742 500 ] % Rectangle
/Border [ 0 0 0 ] % Border
/BS % Border Style dictionary
<< /Type /Border
/W 0 % Width (0 points)
/S /S % Border style (Solid)
>>
/RichMediaContent 12 0 R
/RichMediaSettings 22 0 R
>>
endobj
10 0 obj % Appearance dictionary
<< /Length 39
/Type /XObject
/BBox [ 0.0 0.0 692 450 ]
/Resources
<< /XObject << /Im0 11 0 R >>
/ProcSet [ /PDF /ImageC ]
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 95
/ExtGState <</GS0 << /Type /ExtGState /ca 1.0 /CA 1.0 >> >>
>>
/Subtype /Form
/Matrix [ 1 0 0 1 0 0 ]
>>
stream
q
/GS0 gs
692 0 0 450 0 0 cm
/Im0 Do
Q
endstream
endobj
11 0 obj
<< /Length ...
/Width ...
/Height ...
/BitsPerComponent 8
/ColorSpace /DeviceRGB
/Subtype /Image
>>
stream
...Poster Image Stream...
endobj
12 0 obj % RichMediaContent dictionary
<< /Type /RichMediaContent
/Configurations 13 0 R
/Views 15 0 R
/Assets 29 0 R
>>
endobj
13 0 obj % RichMediaConfigurations array
[ 14 0 R ]
endobj
14 0 obj % RichMediaConfiguration dictionary
<< /Type /RichMediaConfiguration
/Name (Configuration01)
/Instances 15 0 R
>>
endobj
15 0 obj % RichMediaInstances array
[ 16 0 obj
17 0 obj
]
endobj
16 0 obj % RichMediaInstance dictionary
<< /Type /RichMediaInstance
/Subtype /3D
/Asset 30 0 R % Reference to 3D filespec in Resources
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 96
>>
endobj
17 0 obj % RichMediaInstance dictionary
<< /Type /RichMediaInstance
/Subtype /Flash
/Asset 31 0 R
/Params 18 0 R
>>
endobj
18 0 obj % Params dictionary
<< /Type /RichMediaParams
/Binding /Foreground
/FlashVars (name=John+Smith&address=1+Main+St.&city=Springfield)
/CuePoints
[
<< /Type /CuePoint
/Name (Cue Point 1)
/Subtype /Nav
/Time 5100
>>
<< /Type /CuePoint
/Name (Cue Point 2)
/Subtype /Event
/Time 4020
/A 19 0 R
>>
]
>>
endobj
19 0 obj % JavaScript action dictionary
<< /Type /Action
/S /JavaScript
/JS (app.alert\("Cue Point Reached"\);)
/Next 20 0 R
>>
endobj
20 0 obj % RichMediaExecute action
<< /Type /Action
/S /RichMediaExecute
/TA 9 0 R
/CMD
<< /A (Argument String)
/C (CommandName)
>>
>>
endobj
21 0 obj % Views array
[ 22 0 R ]
endobj
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 97
22 0 obj % 3DView dictionary
<< /Type /3DView
/IN (12a345b6-7c89-0d1e-fa2b-cde3f45a6b78)
/XN (Default View)
/CO 10.0
/MS /M
/NR true
/RM << /Type /3DRenderMode /Subtype /Solid >>
/P << /Subtype /P /PS /Min /FOV 30.0 >>
/BG <</Subtype /SC /C [ .5 .5 .5 ] >>
/C2W [ -1.0 0.0 0.0 0.0 0.0 1.0 0.0 1.0 0.0 0.0 -10.0 0 ]
<< /Instance 16 0 R
/Data (...State Data for 3D Instance...)
>>
>>
endobj
23 0 obj % RichMediaSettings Dictionary
<< /Type /RichMediaSettings
/Activation
<< /Type /RichMediaActivation
/Condition /WhenClicked
/Configuration 14 0 R % Reference to element in Configurations array
/View 22 0 R % Reference to element in Views array
/Animation % RichMediaAnimation dictionary
<< /Type /RichMediaAnimation
/Subtype /Linear
/Speed 1
/PlayCount -1
>>
/Presentation 24 0 R
/Scripts % Reference to JavaScript filespec in Resources
[ 34 0 R
35 0 R
]
>>
/Deactivation
<< /Type /RichMediaDeactivation
/Condition /XD
>>
>>
endobj
25 0 obj % RichMediaWindow dictionary
<< /Type /RichMediaWindow
/Height
<< /Default 216
/Max 432
/Min 72
>>
/Width
<< /Default 288
/Max 576
/Min 72
>>
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 98
/Position
<< /Type/RichMediaPosition % RichMediaPosition dictionary
/HAlign /Far
/VAlign /Near
/HOffset 18
/VOffset 18
>>
>>
endobj
29 0 obj % RichMediaAssets name tree
<< /Names
[ (3D.u3d) 30 0 R
(Player.swf) 31 0 R
(Controls.swf) 32 0 R
(Video.flv) 33 0 R
(Script.js) 34 0 R
(Navigation.js) 35 0 R
]
>>
endobj
30 0 obj % File specification dictionary for 3D file
<< /Type /Filespec
/F (3D.u3d)
/UF (3D.u3d)
/EF <</F 40 0 R >> % Stream containing the 3D file
>>
endobj
31 0 obj % File specification dictionary for Flash file
<< /Type /Filespec
/F (Flash.swf)
/UF (Flash.swf)
/EF << /F 41 0 R >> % Stream containing the Flash file
>>
endobj
34 0 obj % File specification dict. for JavaScript file
<< /Type /Filespec
/F (Script.js)
/UF (Script.js)
/EF << /F 44 0 R >> % Stream containing the JavaScript file
>>
endobj
35 0 obj % File specification dict. for JavaScript file
<< /Type /Filespec
/F (Navigation.js)
/UF (Navigation.js)
/EF << /F 45 0 R >> % Stream containing the JavaScript file
>>
endobj
40 0 obj % Embedded file stream for 3D file
Adobe Acrobat SDK Multimedia Features (Chapter 9 in PDF Reference)
Adobe® Supplement to the ISO 32000 9.6.1 RichMedia Annotations 99
<< /Type /EmbeddedFile % 3D.u3d
/Length ...
/Filter ...
>>
stream
...Data for 3D.u3d...
endstream
endobj
41 0 obj % Embedded file stream for Flash file
<< /Type /EmbeddedFile % Flash.swf
/Length ...
/Filter ...
>>
stream
...Data for Flash.swf...
endstream
endobj
44 0 obj % Embedded file stream for JavaScript file
<< /Type /EmbeddedFile % Script.js
/Length ...
/Filter ...
>>
stream
...Data for Script.js...
endstream
endobj
45 0 obj % Embedded file stream for JavaScript file
<< /Type /EmbeddedFile % Navigation.js
/Length ...
/Filter ...
>>
stream
...Data for Navigation.js...
endstream
endobj
...
100

Document Interchange (Chapter 10 in PDF
Reference)
This section describes extensions to the PDF specification contained in the PDF Reference, sixth edition,
version 1.7 and in ISO 32000 (Document management - Portable document format - PDF 1.7). The latter
document is the version of the PDF specification that has been ratified by the ISO. These documents differ
as described in About the ISO Draft of the PDF 1.7 Reference.
Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. For
convenience, the phrase BaseVersion 1.7, Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3
throughout this document.
10.7 Tagged PDF
10.7.1 Tagged PDF and Page Content
Real Content and Artifacts
On page 886, add the new value BatesN to the list of values supported by Subtype and add the new
Contents dictionary entry, as shown in Table 10.17 that follows. Unchanged content appears in gray.
TABLE 10.17 Property list entries for artifacts
KEY SUBTYPE DESCRIPTION
Subtype name (Optional; PDF 1.7) The subtype of the artifact. This entry applies only
when the Type entry has a value of Pagination. Valid values are
Header, Footer, and Watermark. Additional values can be defined
for this entry, provided they comply with the naming conventions
described in Appendix E.
ExtensionLevel 3 adds BatesN to the set of valid values.
Contents text string or
array of text
string
(Optional; ExtensionLevel 3) The artifact content, which applies when
Subtype has a value of BatesN. If this artifact applies to a page that
contains a single Bates Number, the Contents value is a Bates
Numbering string.
If this artifact applies to a page that contains multiple Bates Numbers,
the Contents value is an array of text strings, each of which contains a
concatenation of the Bates Numbering parts. The order in which the
text strings appear in the array is application-dependent.
Note: Typically, applications that support Bates Numbering add private
data to the PDF document that specifies starting values for Bates
Numbering, and placement and formatting of those values. The
intent of Bates Numbering values provided in this artifact content
is to override Bates Numbering values in the private data.
Adobe Acrobat SDK Document Interchange (Chapter 10 in PDF Reference)
Adobe® Supplement to the ISO 32000 10.7.1 Tagged PDF and Page Content 101
Replace the bullet that begins “Pagination artifacts” with the following bullet. Unchanged content appears in
gray.
● Pagination artifacts. Ancillary page features such as running heads, folios (page numbers), and Bates
Numbering. Bates Numbering is a method of indexing legal documents for easy identification and
retrieval.
102

Bibliography
This section describes extensions to the PDF specification contained in the PDF Reference, sixth edition,
version 1.7 and in ISO 32000 (Document management - Portable document format - PDF 1.7). The latter
document is the version of the PDF specification that has been ratified by the ISO. These documents differ
as described in About the ISO Draft of the PDF 1.7 Reference.
Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. For
convenience, the phrase BaseVersion 1.7, Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3
throughout this document.
Resources from Adobe Systems Incorporated
Acrobat ActionScript API Reference, available at <http://www.adobe.com/go/acrobat_developer>
Acrobat Navigator File Format, available at <http://www.adobe.com/go/acrobat_developer>
PRC specification: The following documents collectively provide the PRC file format specification. These
documents are available at www.adobe.com/go/acrobat3d_developer:
● Adobe PRC Format Specification, version 7298, Adobe Extension Level 1, Adobe Systems Incorporated.
● Geometry Compression Level 2
● Tesselation Compression Level 2
Add the new entry shown below. Unchanged text appears in gray.
Adobe XML Architecture specifications, available at <www.adobe.com/go/xfa_ref_24_bibliography>.
Adobe XML Architecture, XML Forms Architecture (XFA) Specification, version 2.6
Adobe XML Architecture, XML Forms Architecture (XFA) Specification, version 2.5
Adobe XML Architecture, XML Forms Architecture (XFA) Specification, version 2.4
Adobe Adobe XML Architecture, Forms Architecture (XFA) Specification, version 2.2
Note:Beginning with XFA 2.2, the XFA specification includes the Template Specification, the Config
Specification, the XDP Specification, and all other XML specifications unique to the XML Forms
Architecture (XFA).
Adobe XML Architecture, XML Data Package (XDP) Specification, version 2.0
Adobe XML Architecture, Template Specification, version 2.0
Adobe XML Architecture, XML Forms Data Format Specification, version 2.0 (Draft)
Flex 2 Developer Guide, available at <http://www.adobe.com/go/flex_devcenter>
Navigator Template Format, available at <http://www.adobe.com/go/navigator_developer>
Universal Container Format (UCF), available at <http://www.adobe.com/go/acrobat_developer>
Adobe Acrobat SDK Bibliography
Adobe® Supplement to the ISO 32000 Other Resources 103
Using FlashVars to pass variables to a SWF, TechNote tn_16417, available at
<http://www.adobe.com/go/tn_16417>
Other Resources
Replace the following Ecma reference. This change reflects a correction documented in the Errata for the PDF
Reference, sixth edition, version 1.7.
Ecma International, Standard ECMA-363, Universal 3D File Format, 1st Edition. This document is available at
www.ecma-international.org.
Replace this Ecma reference with this:
Ecma International. The following standards are available through <www.ecma-international.org.>.
● ECMA-363, Universal 3D File Format, 1st Edition.
● ECMA-363, Universal 3D File Format, 3rd Edition.
Add the following bulleted references to the list of Federal Information Processing Standards Publications:
Federal Information Processing Standards Publications:
● FIPS PUB 140-2: Security Requirements For Cryptographic Modules
<http://csrc.nist.gov/publications/fips/fips140-2/fips1402.pdf>
Add the following bullet to the ISO listing of standards:
International Organization for Standardization (ISO). The following standards are available through
< http://www.iso.org/>:
● Information technology – Automatic identification and data capture techniques – Data Matrix bar code
symbology specification, ISO/IEC 16022
● Information technology –Automatic identification and data capture techniques – PDF417 bar code
symbology specification, ISO/IEC 15438
● Information technology – Automatic identification and data capture techniques – QR Code 2005 bar code
symbology specification, ISO/IEC 18004
Add these bulleted references to the list of RFCs:
Internet Engineering Task Force (IETF) Requests for Comments (RFCs). The following RFCs are available
through < http://www.rfc-editor.org>:
● RFC 3454, Preparation of Internationalized Strings (“stringprep”)
● RFC 3986, Uniform Resource Identifier (URI): Generic Syntax
● RFC 3987, Internationalized Resource Identifiers (IRIs)
● RFC 4013, SASLprep: Stringprep Profile for User Names and Passwords
● RFC 4122, A Universally Unique Identifier (UUID) URN Namespace
Open Geopatial Consortium Documents
● OpenGIS
©
Implementation Specification: Coordinate Transformation Services, document 01-009
<http://www.opengeospatial.org>
Unicode Consortium publications:
Adobe Acrobat SDK Bibliography
Adobe® Supplement to the ISO 32000 Other Resources 104
● UTS 35, Unicode Technical Standard #35 Locale Data Markup Language (LDML)
105
Part II: Reference Errors and Implementation Notes
106

Implementation Notes
This chapter provides notes on the implementation of Acrobat 9. The notes are listed in the order of the
sections to which they refer in the main text. There are two parts to the implementation notes:
Implementation Notes to the PDF Reference, sixth edition: These notes appear in Appendix H,
“Compatibility and Implementation Notes” of PDF Reference, sixth edition, version 1.7. Two of the notes,
notes 77 and 156, are significantly modified.
Implementation Notes to Adobe Extensions to ISO 32000: These notes remark on Acrobat’s
implementation of the extensions to the PDF language, as documented in Part I, “Extensions to the PDF
Specification”, of this guide. The implementation notes for the Adobe extensions begin on page 130.
Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. For
convenience, the phrase BaseVersion 1.7, Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3
throughout this document.
Implementation Notes to the PDF Reference, sixth edition
These notes originally appeared in the PDF Reference. See that document for the context of each note.
1.2 Introduction to PDF 1.7 Features
This note applies to the first paragraph in this section.
1. The native file formats of Acrobat products are PDF 1.2 for Acrobat 3.0, PDF 1.3 for Acrobat 4.0, PDF 1.4
for Acrobat 5.0, PDF 1.5 for Acrobat 6.0, PDF 1.6 for Acrobat 7.0, and PDF 1.7 for Acrobat 8.0.
Beginning with Acrobat 8.1, the native file formats for Acrobat products are extensions relative to a
base version of PDF. The extensions are described in the Adobe Supplement to ISO32000 (this
document). For base version 1.7, the following is a list of each Adobe extension level and the
applications (shown in parentheses) supported by that extension level.
● ISO 32000: XFA 2.5 and PDF 1.7 (Acrobat 8.0, LiveCycle, SAP P3B)
● Adobe Extension Level 1: PRC and XFA 2.6 (Acrobat 8.1, LiveCycle ES), the addition of PRC for 3D
data.
● Adobe Extension Level 2: XFA 2.7 (SAP P3C)
● Adobe Extension Level 3: XFA 2.8 (Acrobat 9.0, LiveCycle ES 8.2 ) and all the information contained
in this document concerning additions to the PDF language.
3.1.2 Comments
2. Acrobat viewers do not preserve comments when saving a file.
3.2.4 Name Objects
3. In PDF 1.1, the number sign character (#) could be used as part of a name (for example, /A#B), and the
specifications did not specifically prohibit embedded spaces (although Adobe producer applications
did not provide a way to write names containing them). In PDF 1.2, the number sign became an escape
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 107
character, preceding two hexadecimal digits. Thus, a 3-character name A-space-B can now be written
as /A#20B (since 20 is the hexadecimal code for the space character). This means that the name /A#B is
no longer valid, since the number sign is not followed by two hexadecimal digits. A name object with
this value must be written as /A#23B, since 23 is the hexadecimal code for the character #.
4. In cases where a PostScript name must be preserved or where a string is permitted in PostScript but
not in PDF, the Acrobat Distiller application uses the # convention as necessary. When an Acrobat
viewer generates PostScript, it inverts the convention by writing a string where permitted or a name
otherwise. For example, if the string (Adobe Green) were used as a key in a dictionary, Distiller would
use the name /Adobe#20Green and the viewer would generate (Adobe Green).
5. In Acrobat 4.0 and earlier versions, a name object being treated as text is typically interpreted in a host
platform encoding, which depends on the operating system and the local language. For Asian
languages, this encoding may be something like Shift-JIS or Big Five. Consequently, it is necessary to
distinguish between names encoded this way and ones encoded as UTF-8. Fortunately, UTF-8
encoding is very stylized and its use can usually be recognized. A name that does not conform to UTF-8
encoding rules can instead be interpreted according to host platform encoding.
3.2.7 Stream Objects
The following note is associated with the description of the DecodeParms key in Table 3.4.
7. Acrobat viewers accept the name DP as an abbreviation for the DecodeParms key in any stream
dictionary. If both DP and DecodeParms entries are present, DecodeParms takes precedence.
3.2.9 Indirect Objects
8. Acrobat viewers require that the name object used as a key in a dictionary entry be a direct object; an
indirect object reference to a name is not accepted.
3.3 Filters
9. Acrobat viewers accept the abbreviated filter names shown in table titled “Abbreviations for standard
filter names” in addition to the standard ones. These abbreviated names are intended for use only in
the context of inline images (see Section 4.8.6, “Inline Images”), they should not be used as filter names
in any stream object.
Abbreviations for standard filter names
STANDARD FILTER NAME ABBREVIATION
ASCIIHexDecode AHx
ASCII85Decode A85
LZWDecode LZW
FlateDecode (PDF 1.2) Fl (uppercase F, lowercase L)
RunLengthDecode RL
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 108
10. If an unrecognized filter is encountered, Acrobat viewers report the context in which the filter was
found. If errors occur while a page is being displayed, only the first error is reported. The subsequent
behavior depends on the context, as described in table titled “Acrobat behavior with unknown filter“.
Acrobat operations that process pages, such as the Find command and the Create Thumbnails
command, stop as soon as an error occurs.
If an unrecognized filter is encountered, Acrobat viewers report the context in which the filter was found. If errors occur while a page is being displayed, only the first error is reported. The subsequent behavior depends on the context, as described in the table titled “Acrobat behavior with unknown filter”. Acrobat operations that process pages, such as the Find command and the Create Thumbnails command, stop as soon as an error occurs.
3.3.7 DCTDecode Filter
11. Acrobat 4.0 and later viewers do not support the combination of the DCTDecode filter with any other
filter if the encoded data uses the progressive format. If a version of the Acrobat viewer earlier than 4.0
encounters DCTDecode data encoded in progressive format, an error occurs that is handled according
to the table “Acrobat behavior with unknown filter” on page 108.
3.4 File Structure
12. Acrobat viewers do not enforce the restriction on line length.
3.4.1 File Header
13. Acrobat viewers require only that the header appear somewhere within the first 1024 bytes of the file.
14. Acrobat viewers also accept a header of the form
%!PS-Adobe-N.n PDF-M.m
CCITTFaxDecode CCF
DCTDecode DCT
Abbreviations for standard filter names
STANDARD FILTER NAME ABBREVIATION
Acrobat behavior with unknown filter
CONTEXT BEHAVIOR
Content stream Page processing stops.
Indexed color space The image does not appear, but page processing continues.
Inline image The image does not appear, but page processing continues.
Thumbnail image An error is reported and no more thumbnail images are
displayed, but the thumbnails can be deleted and created
again.
FormXObject The form does not appear, but page processing continues.
Type 3 glyph description The glyph does not appear, but page processing continues. The
text position is adjusted based on the glyph width.
Embedded font The viewer behaves as if the font is not embedded.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 109
3.4.3 Cross-Reference Table
15. Acrobat viewers do not enforce the restriction on object numbers existing in more than one
subsection; they use the entry in the first subsection where the object number is encountered.
However, overlap is explicitly prohibited in cross-reference streams in PDF 1.5.
16. Acrobat 6.0 and later do not use the free list to recycle object numbers; new objects are assigned new
numbers.
17. Acrobat viewers do not raise an error in cases where there are gaps in the sequence of object numbers
between cross-reference subsections. The missing object numbers are treated as free objects.
3.4.4 File Trailer
18. Acrobat viewers require only that the %%EOF marker appear somewhere within the last 1024 bytes of
the file.
3.4.6 Object Streams
19. When creating or saving PDF files, Acrobat 6.0 limits the number of objects in individual object streams
to 100 for linearized files and 200 for non-linearized files.
3.4.7 Cross-Reference Streams (Cross-Reference Stream Dictionary)
20. FlateDecode is the only filter supported by Acrobat 6.0 and later viewers for cross-reference streams.
These viewers also support unencoded cross-reference streams.
3.4.7 Cross-Reference Streams (Compatibility with PDF 1.4)
21. Byte addresses can be as large as needed to address an arbitrarily large PDF file, regardless of the
implementation limit for PDF integers in general.
3.5 Encryption
22. An option to use an unpublished algorithm was needed because of an export requirement of the U.S.
Department of Commerce. This requirement no longer exists. Acrobat 7.0 does not use this algorithm
to encrypt documents, although it can decrypt files that are encrypted with the algorithm.
23. Acrobat viewers will fail to open a document encrypted with a V value defined in a version of PDF that
the viewer does not understand.
24. Security handlers are responsible for protecting the value of EFF from tampering if needed. Acrobat
security handlers do not provide this protection.
3.5.2 Standard Security Handler (Standard Encryption Dictionary)
25. Acrobat viewers implement this limited mode of printing as “Print As Image,” except on UNIX systems,
where this feature is not available.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 110
3.5.2 Standard Security Handler (Encryption Key Algorithm)
26. The first element of the ID array generally remains the same for a given document. However, in some
situations, Acrobat may regenerate the ID array if a new generation of a document is created. Security
handlers are encouraged not to rely on the ID in the encryption key computation.
3.5.2 Standard Security Handler (Password Algorithms)
27. In Acrobat 2.0 and 2.1 viewers, the standard security handler uses the empty string if there is no owner
password in step 1 of Algorithm 3.3.
3.5.4 Crypt Filters
28. In Acrobat 6.0, crypt filter usage is limited to allowing document-level metadata streams to be left as
plaintext in an otherwise encrypted document. In Acrobat 7.0, crypt filter usage also includes the
ability to encrypt embedded files while leaving the remainder of the document as plaintext.
29. In Acrobat 6.0 and later, when strings and streams in an encrypted document are edited, those streams
and strings are encrypted with the StmF and StrF filters, respectively. In Acrobat 7.0, if the EFF entry
in the encryption dictionary is set, embedded files are encrypted with the crypt filter specified by the
EFF entry. In both Acrobat 6.0 and 7.0, if the security handler indicates that document-level metadata
is to be in plaintext, the metadata will not be encrypted. It is up to individual security handlers to store
their own flags that indicate whether document-level metadata should be in plaintext.
30. Acrobat viewers do not support the ability for third-party security handlers to specify None as a value
for CFM.
31. In the file specification dictionary (see Section 3.10.2, “File Specification Dictionaries”), related files (RF)
must use the same crypt filter as the embedded file (EF).
32. The value of the EncryptMetadata entry is set by the security handler rather than the Acrobat.
3.6.1 Document Catalog
33. .Acrobat 5.0 and Acrobat 6.0 avoid adding a Version entry to the document catalog and do so only if
necessary. Once they have added this entry, they behave in this way:
● Acrobat 5.0 never removes the Version entry. For documents containing a Version entry,
Acrobat 5.0 attempts to ensure that the version specified in the header matches the version
specified in the Version entry; if this is not possible, it at least ensures that the latter is later than
(and therefore overrides) the version specified in the header.
● Acrobat 6.0 removes the Version entry when doing a full (non-incremental) save of the document.
34. In PDF 1.2, an additional entry in the document catalog, named AA, was defined but was never
implemented. The AA entry that is newly introduced in PDF 1.4 is entirely different from the one that
was contemplated for PDF 1.2.
3.6.2 Page Tree (Page Objects)
35. In PDF 1.2, an additional entry in the page object, named Hid, was defined but was never
implemented. Beginning with PDF 1.3, this entry is obsolete and should be ignored.
36. Acrobat 5.0 and later viewers do not accept a Contents array containing no elements.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 111
37. In a document containing articles, if the first page that has an article bead does not have a B entry,
Acrobat viewers rebuild the B array for all pages of the document.
38. In PDF 1.2, additional-actions dictionaries were inheritable; beginning with PDF 1.3, they are not
inheritable.
3.7.1 Content Streams
39. Acrobat viewers report an error the first time they find an unknown operator or an operator with too
few operands, but continue processing the content stream. No further errors are reported.
3.9.1 Type 0 (Sampled) Functions
40. When printing, Acrobat performs only linear interpolation, regardless of the value of the Order entry.
3.9.2 Type 2 (Exponential Interpolation) Functions
41. Since Type 2 functions are not defined in PDF 1.2 or earlier versions, Acrobat 3.0 (whose native file
format is PDF 1.2) reports an Invalid Function Resource error if it encounters a function of this type.
3.9.3 Type 3 (Stitching) Functions
42. Since Type 3 functions are not defined in PDF 1.2 or earlier versions, Acrobat 3.0 (whose native file
format is PDF 1.2) reports an error, “Invalid Function Resource,” if it encounters a function of this type.
3.9.4 Type 4 (PostScript Calculator) Functions
43. Since Type 4 functions are not defined in PDF 1.2 or earlier versions, Acrobat 3.0 (whose native file
format is PDF 1.2) reports an error, “Invalid Function Resource,” if it encounters a function of this type.
44. Acrobat uses single-precision floating-point numbers for all real-number operations in a type 4
function.
3.10.2 File Specification Dictionaries
45. .In Acrobat 5.0, file specifications accessed through EmbeddedFiles have a Type entry whose value is
F instead of the correct Filespec. Acrobat 6.0 and later accept a file specification whose Type entry
is either Filespec or F.
46. In certain situations, Acrobat 3.0 and greater do not correctly interpret file specifications referenced by
the F entry in Form or Image XObjects. Specifically, Acrobat ignores the file specification EF entry when
that file specification is referenced from the XObject F entry.
The code that follows shows an example of an Image XObject F entry referencing a file specification
that in turn references an embedded file. Acrobat does not correctly interpret such file specifications.
Example: Acrobat does not correctly interpret a file specification.
13 0 obj <<
/Type /XObject
/Subtype /Image
/F 12 0 R
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 112

>> stream endstream endobj
12 0 obj <<
/Type /Filespec
/EF <</F 10 0 R>>
>> endobj
10 0 obj <<
/Type /EmbeddedFile

>> stream … endstream endobj
4.5.2 Color Space Families
47. If an Acrobat viewer encounters an unknown color space family name, it displays an error specifying
the name, but reports no further errors thereafter.
4.5.5 Special Color Spaces (DeviceN Color Spaces)
48. Acrobat viewers support the special meaning of None only when a DeviceN color space is used as a
base color for an indexed color space. For all other uses of DeviceN, None is treated as a regular spot
color name.
4.5.5 Special Color Spaces (Multitone Examples)
49. This method of representing multitones is used by Adobe Photoshop 5.0.2 and subsequent versions
when exporting EPS files. Beginning with version 4.0, Acrobat exports Level 3 EPS files using this
method, and can also export Level 1 EPS files that use the “Level 1 separation” conventions of Adobe
Technical Note #5044, Color Separation Conventions for PostScript Language Programs. These
conventions are used to emit multitone images as calls to “customcolorimage” with overprinting,
which can then be placed in page layout applications such as Adobe PageMaker®, Adobe In-Design,
and QuarkXPress.
4.6 Patterns
50. Acrobat viewers earlier than version 4.0 do not display patterns on the screen, although they do print
them to PostScript output devices.
4.7 External Objects
51. Acrobat viewers that encounter an XObject of an unknown type display an error specifying the type of
XObject but report no further errors thereafter.
4.8.4 Image Dictionaries
52. Image XObjects in PDF 1.2 and earlier versions are all implicitly unmasked images. A PDF consumer
that does not recognize the Mask entry treats the image as unmasked without raising an error.
53. All Acrobat viewers ignore the Name entry in an image dictionary.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 113
4.8.5 Masked Images
54. Explicit masking and color key masking are features of PostScript LanguageLevel 3. Acrobat 4.0 and
later versions do not attempt to emulate the effect of masked images when printing to LanguageLevel
1 or LanguageLevel 2 output devices; they print the base image without the mask.
The Acrobat 4.0 viewer displays masked images, but only when the amount of data in the mask is
below a certain limit. Above that, the viewer displays the base image without the mask.
4.9.1 Form Dictionaries
55. All Acrobat viewers ignore the Name entry in a form dictionary.
4.9.3 Reference XObjects
56. Acrobat 8.0 and earlier viewers do not implement reference XObjects. The proxy is always used for
viewing and printing.
5.2.5 Text Rendering Mode
57. In Acrobat 4.05 and earlier versions, text-showing operators such as Tj first perform the fills for all the
glyphs in the string being shown, followed by the strokes for all the glyphs. This produces incorrect
results if glyphs overlap.
5.3.2 Text-Showing Operators
58. In versions of Acrobat earlier than 3.0, the horizontal coordinate of the text position after the TJ
operator paints a character glyph and moves by any specified offset must not be less than it was before
the glyph was painted.
59. In Acrobat 4.0 and earlier viewers, position adjustments specified by numbers in a TJ array are
performed incorrectly if the horizontal scaling parameter, Th, is different from its default value of 100.
5.5.1 Type 1 Fonts
60. All Acrobat viewers ignore the Name entry in a font dictionary.
61. Acrobat 5.0 and later viewers use the glyph widths stored in the font dictionary to override the widths
of glyphs in the font program itself, which improves the consistency of the display and printing of the
document. This addresses the situation in which the font program used by the conforming reader is
different from the one used by the application that produced the document.
The font program with the altered glyph widths may or may not be embedded. If it is embedded, its
widths should exactly match the widths in the font dictionary. If the font program is not embedded,
Acrobat overrides the widths in the font program on the conforming reader’s system with the widths
specified in the font dictionary.
It is important that the widths in the font dictionary match the actual glyph widths of the font program
that was used to produce the document. Consumers of PDF files depend on these widths in many
different contexts, including viewing, printing, fauxing (font substitution), reflow, and word search.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 114
These operations may malfunction if arbitrary adjustments are made to the widths so that they do not
represent the glyph widths intended by the PDF producer.
It is recommended that diagnostic and preflight tools check the glyph widths in the font dictionary
against those in an embedded font program and flag any inconsistencies. It would also be helpful if the
tools could optionally check for consistency with the widths in font programs that are not embedded.
This is useful for checking a PDF file immediately after it is produced, when the original font programs
are still available.
Note: This implementation note is also referred to in Section 5.6.3, “CIDFonts” (Glyph Metrics in
CIDFonts).
5.5.1 Type 1 Fonts (Standard Type 1 Fonts (Standard 14 Fonts))
62. Acrobat 3.0 and earlier viewers may ignore attempts to override the standard fonts.
Also, Acrobat 4.0 and earlier viewers incorrectly allow substitution fonts, such as TimesNewRoman and
ArialMT, to be specified without FirstChar, LastChar, Widths, and FontDescriptor entries.
The table titled “Names of standard fonts” shows the complete list of font names that are accepted as the
names of standard fonts. The first column shows the proper one (for example, Helvetica); the second
column shows the alternative if one exists (for example, Arial).
Names of standard fonts
STANDARD NAMES ALTERNATIVES
Courier CourierCourierNew
Courier-Oblique CourierNew,Italic
Courier-Bold CourierNew,Bold
Courier-BoldOblique CourierNew,BoldItalic
Helvetica Arial
Helvetica-Oblique Arial,Italic
Helvetica-Bold Arial,Bold
Helvetica-BoldOblique Arial,BoldItalic
Times-Roman TimesNewRoman
Times-Italic TimesNewRoman
Times-Bold TimesNewRoman,Bold
Times-BoldItalic TimesNewRoman,BoldItalic
Symbol
ZapfDingbats
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 115
Acrobat 5 and later viewers do not give special treatment to any font. Any non-embedded font, regardless
of name, will be processed in the same way.
5.5.3 Font Subsets
63. For Acrobat 3.0 and earlier viewers, all font subsets whose BaseFont names differ only in their tags
should have the same font descriptor values and should map character names to glyphs in the same
way; otherwise, glyphs may be shown unpredictably. This restriction is eliminated in Acrobat 4.0.
5.5.4 Type 3 Fonts
64. In principle, the value of the Encoding entry could also be the name of a predefined encoding or an
encoding dictionary whose BaseEncoding entry is a predefined encoding. However, Acrobat 4.0 and
earlier viewers do not implement this correctly.
65. For compatibility with Acrobat 2.0 and 2.1, the names of resources in a Type 3 font’s resource dictionary
must match those in the page object’s resource dictionary for all pages in which the font is referenced.
If backward compatibility is not required, any valid names may be used.
5.6.4 CMaps
66. Embedded CMap files, other than ToUnicode CMaps, do not work properly in Acrobat 4.0 viewers; this
has been corrected in Acrobat 4.05.
67. Japanese fonts included with Acrobat 6.0 contain only glyphs from the Adobe Japan1-4 character
collection. Documents that use fonts containing additional glyphs from the Adobe-Japan1-5 collection
must embed those fonts to ensure proper display and printing.
5.7 Font Descriptors
68. Acrobat viewers earlier than version 3.0 ignore the FontFile3 entry. If a font uses the Adobe standard
Latin character set (as defined in Section D.1, “Latin Character Set and Encodings”), Acrobat creates a
substitute font. Otherwise, Acrobat displays an error message (once per document) and substitutes any
characters in the font with the bullet character.
5.8 Embedded Font Programs
69. For simple fonts, font substitution may be performed using multiple master Type 1 fonts. This
substitution can be performed only for fonts that use the Adobe standard Latin character set (as
defined in Section D.1, “Latin Character Set and Encodings”). In Acrobat 3.0.1 and later, Type 0 fonts that
use a CMap whose CIDSystemInfo dictionary defines the Adobe-GB1, Adobe-CNS1 Adobe-Japan1,
or Adobe-Korea1 character collection can also be substituted. To make a document portable, fonts that
cannot be substituted must be embedded.
6.4.2 Spot Functions
70. When Distiller encounters a call to the PostScript setscreen or sethalftone operator that includes
a spot function, it compares the PostScript code defining the spot function with that of the predefined
spot functions shown in Table6.1. If the code matches one of the predefined functions, Distiller puts
the name of that function into the halftone dictionary; Acrobat uses that function when printing the
PDF document to a PostScript output device. If the code does not match any of the predefined spot
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 116
functions, Distiller samples the specified spot function and generates a function for the halftone
dictionary; when printing to a PostScript device, Acrobat generates a spot function that interpolates
values from that function.
When producing PDF version 1.3 or later, Distiller represents the spot function by using a Type 4
(PostScript calculator) function whenever possible (see Section 3.9.4, “Type 4 (PostScript Calculator)
Functions”). In this case, Acrobat uses this function directly when printing the document.
6.5.4 Automatic Stroke Adjustment
71. When drawing to the screen, Acrobat 6.0 always performs automatic stroke adjustment, regardless of
the value of the SA entry in the graphics state parameter dictionary.
7.5.2 Specifying Blending Color Space and Blend Mode
72. PDF 1.3 or earlier viewers ignore all transparency-related graphics state parameters (blend mode, soft
mask, alpha constant, and alpha source). All graphics objects are painted opaquely.
Note: This implementation note is also referred to in Sections 7.5.3,“Specifying Shape and Opacity”
(Mask Shape and Opacity, Constant Shape and Opacity) and 7.5.4, “Specifying Soft Masks”
(Soft-Mask Dictionaries).
7.5.3 Specifying Shape and Opacity (Mask Shape and Opacity)
73. PDF 1.3 or earlier viewers ignore the SMask entry in an image dictionary. All images are painted
opaquely.
Note: This implementation note is also referred to in Section 7.5.4, “Specifying Soft Masks” (Soft-Mask
Images).
8.2.2 Document Outline
74. In PDF 1.2, an additional entry in the outline item dictionary, named AA, was defined but was never
implemented. Beginning with PDF 1.3, this entry is obsolete and should be ignored.
75. Acrobat viewers report an error when a user activates an outline item whose destination is of an
unknown type.
8.3.1 Page Labels
76. Acrobat viewers up to version 3.0 ignore the PageLabels entry and label pages with decimal
numbers starting at 1.
8.4 Annotations
77. The text of Note 77, as published in the sixth edition of the PDF Reference, is replaced by the following
paragraphs.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 117
Interaction between accessibility preference and annotation tab order
This note clarifies the viewer-specific behavior of different Acrobat versions relative to annotation tab
order and the accessibility preference selection.
Beginning in PDF 1.5, the user experience of tabbing between annotations on a page (tab order) can be
made explicit by means of the page object Tabs entry (see Table 3.27). However, when this entry is not
defined, Acrobat tab order varies depending on the Acrobat version and on accessibility preference
settings. This behavior is viewer-specific because it is not specified by the PDF specification. Because the
row, column, and structured tab order settings behave exactly as specified in the PDF specification, they
do not have a viewer-specific behavior.
The Acrobat Preferences dialog box presents an Accessibility window. The Tab Order panel in that window
has a check box titled “Use document structure for tab order when no explicit tab order is specified.”
Selecting that check box specifies accessibility preferences.
Regardless of the Acrobat accessibility preference setting, the following applies to (a) all Acrobat versions
when processing a PDF document that omits a Tabs entry or (b) Acrobat 5 or earlier when processing a
PDF document regardless of a Tabs entry:
● If the document is structured (contains tagging), the annotations are visited in structure order.
● Otherwise, widgets are visited in the order in which they appear in the Annots array, and then other
annotation types are visited in row order.
Note: Documents that conform to PDF version 1.5 or earlier have no Tabs entries.
Accessibility preference selected (default setting)
The following bulleted items describe how the accessibility preference influences annotation tab order
when the accessibility preference is selected:
● If the document is viewed with Acrobat 6 or later and is structured, the Tabs entry affects tab order as
follows:
Widget order: When Tabs is set to W, widgets are visited in the order in which they appear in the
Annots array and then other annotation types are visited in structure order. Acrobat 9 and later
support Widget order.
All other tab orders: Annotations are visited as specified in the PDF specification supported by the
particular version of Acrobat. Acrobat 6 and later support increasingly specific levels of tab order.
● If the document omits a Tabs entry or when the document is viewed with Acrobat 5 or earlier, the
presence of structure (tagging) affects tab order as follows:
Structured: Annotations are visited in structure order.
Not structured: Widgets are visited in the order in which they appear in the Annots array, and
then other annotation types are visited in row order.
Note: Documents that conform to PDF version 1.5 or earlier have no Tabs entries.
Accessibility preference not selected
The following bulleted items explains Acrobat behavior relative to annotation tab order when the
accessibility preference is not selected.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 118
The document is viewed with Acrobat 9.
Widget order: When Tabs is set to W, widgets are visited in the order in which they appear in the
Annots array, and then other annotation types are visited in row order.
All other tab orders (row, column, structure, and annotation): Annotations are visited as
specified by the PDF specification.
No Tabs entry: Widget annotations are ordered as they appear in the Annots array, followed by
other annotation types ordered by rows.
● The document is viewed with Acrobat 6, 7, or 8.
Tabs entry provided: Tab order is as specified by the Tabs entry. These versions support only the
column, row, and structure order settings.
No Tabs entry or the Tabs entry value not recognized: Widgets are visited in the order in which
they appear in the Annots array, and then other annotation types are visited in row order.
● For a document viewed with Acrobat 5 or earlier, widgets are visited in the order in which they appear
in the Annots array, and then other annotation types are visited in row order.
Reordering of annotations
For documents that have a Tabs entry, Acrobat 6.0 and later reorder annotations in the Annots array to
match the order described in “Interaction between accessibility preference and annotation tab order” on
page 117. The tab order for widgets and other annotation types is then preserved when the document is
opened by earlier viewers.
8.4.1 Annotation Dictionaries
78. Acrobat viewers update the annotation dictionary’s M entry only for text annotations.
79. Acrobat 2.0 and 2.1 viewers ignore the annotation dictionary’s AP and AS entries.
80. All versions of Acrobat through 6.0 ignore the AP entry when drawing the appearance of link
annotations.
81. Acrobat viewers ignore the horizontal and vertical corner radii in the annotation dictionary’s Border
entry; the border is always drawn with square corners.
82. Acrobat viewers support a maximum of ten elements in the dash array of the annotation dictionary’s
Border entry.
8.4.2 Annotation Flags
83. Acrobat viewers earlier than version 3.0 ignore an annotation’s Hidden and Print flags. Annotations that
should be hidden are shown; annotations that should be printed are not printed. Acrobat 3.0 ignores
the Print flag for text and link annotations.
84. Acrobat 5.0 obeys the Locked flag only for widget annotations. In Acrobat 6.0, markup annotations
support it as well.
85. In Acrobat 6.0, the ToggleNoView flag is applicable to mouse-over and selection events.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 119
8.4.3 Border Styles
This note is associated with the description of the S key in Table 8.17.
86. If an Acrobat viewer encounters a border style it does not recognize, the border style defaults to S
(Solid).
8.4.4 Appearance Streams
87. Acrobat 5.0 treats the annotation appearance as an isolated group, regardless of whether a Group
entry is present. This behavior is corrected in Acrobat 6.0.
8.4.5 Annotation Types
88. Acrobat viewers display annotations whose types they do not recognize in closed form, with an icon
containing a question mark. Such an annotation can be selected, moved, or deleted, but if the user
attempts to activate it, an alert appears giving the annotation type and reporting that a required
plug-in is unavailable.
8.4.5 Annotation Types (Link Annotations)
89. Acrobat viewers report an error when a user activates a link annotation whose destination is of an
unknown type.
90. When a link annotation specifies a value of P for the H entry (highlighting mode), Acrobat viewers
display the link appearance with a beveled border, ignoring any down appearance that is defined (see
Section 8.4.4, “Appearance Streams”).
8.4.5 Annotation Types (Polygon and Polyline Annotations)
91. The PDF Reference fifth edition (PDF 1.6) erroneously omitted the IT entry from the additional entries
specific to a polygon or polyline annotation. This entry specifies the intent of the annotation. (see Table
8.29).
8.4.5 Annotation Types (Text Markup Annotations)
92. In Acrobat 4.0 and later versions, the text is oriented with respect to the vertex with the smallest y value
(or the left most of those, if there are two such vertices) and the next vertex in a counterclockwise
direction, regardless of whether these are the first two points in the QuadPoints array.
8.4.5 Annotation Types (Ink Annotations)
93. Acrobat viewers always use straight lines to connect the points along each path.
8.4.5 Annotation Types (File Attachment Annotations)
94. Acrobat 7.0 and earlier viewers only support file attachment annotations whose referenced file is
embedded in the PDF document.
95. Acrobat 7.0 does not include a Desc entry in file specifications for file attachment annotations and
ignores them if they are present.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 120
8.4.5 Annotation Types (Markup Annotations)
96. PDF 1.7 added the ability to apply markup annotations to 3D views. Although Acrobat 7.0 officially
supports PDF 1.6, Acrobat 7.0.7 also supports this feature.
8.4.5 Annotation Types (Watermark Annotations)
97. Watermark annotations are handled correctly only when Acrobat n-up printing is selected. Selecting
n-up from within the printer driver does not produce correct results.
8.5.2 Trigger Events
98. In PDF 1.2, the additional-actions dictionary could contain entries named NP (next page), PP (previous
page), FP (first page), and LP (last page). The actions associated with these entries were never
implemented; beginning with PDF 1.3, these entries are obsolete and should be ignored.
99. In PDF 1.2, additional-actions dictionaries were inheritable; beginning with PDF 1.3, they are not
inheritable.
100. In Acrobat 3.0, the O and C events in a page object’s additional-actions dictionary are ignored if the
document is not being displayed in a page-oriented layout mode. Beginning with Acrobat 4.0, the
actions associated with these events are executed if the document is in a page-oriented or
single-column layout and are ignored if the document is in a multiple-column layout.
8.5.3 Action Types (Launch Actions)
101. The Acrobat viewer for the Windows platform uses the Windows function ShellExecute to launch an
application. The Win dictionary entries correspond to the parameters of ShellExecute.
8.5.3 Action Types (URI Actions)
102. URI actions are resolved by the Acrobat WebLink plug-in extension.
103. If the appropriate plug-in extension (WebLink) is not present, Acrobat viewers report the following
error when a link annotation that uses a URI action is activated: “The plug-in required by this URI action
is not available.”
8.5.3 Action Types (Sound Actions)
104. In PDF 1.2, the value of the Sound entry was allowed to be a file specification. Beginning with PDF 1.3,
this is not supported, but the same effect can be achieved by using an external stream.
105. Acrobat viewers mute the sound if the value of Volume is negative; otherwise, this entry is ignored.
106. Acrobat 6.0 does not support the Synchronous entry.
107. Acrobat 5.0 and earlier viewers do not support the Mix entry.
8.5.3 Action Types (Movie Actions)
108. Acrobat viewers earlier than version 3.0 report an error when they encounter an action of type Movie.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 121
8.5.3 Action Types (Hide Actions)
109. Acrobat viewers earlier than version 3.0 report the following error when encountering an action of type
Hide: “The plug-in needed for this Hide action is not available.”
110. In Acrobat viewers, the change in an annotation’s Hidden flag as a result of a hide action is temporary in
that the user can subsequently close the document without being prompted to save changes and the
effect of the hide action is lost. However, if the user explicitly saves the document before closing, such
changes are saved and thus become permanent.
8.5.3 Action Types (Named Actions)
111. Acrobat viewers earlier than version 3.0 report the following error when encountering an action of type
Named: “The plug-in needed for this Named action is not available.”
112. Acrobat viewers extend the list of named actions in Table 8.61 to include most of the menu item names
available in the viewer.
8.6.1 Interactive Form Dictionary
113. Acrobat viewers may insert additional entries in the DR resource dictionary, such as Encoding, as a
convenience for keeping track of objects being used to construct form fields. Such objects are not
actually resources and are not referenced from the appearance stream.
114. In Acrobat, markup annotations can also make use of the resources in the DR dictionary.
115. Acrobat 6.0 recognizes only the stream value of the XFA entry; Acrobat 6.02 and later recognize both
stream and array values.
8.6.2 Field Dictionaries (Field Names)
116. Beginning in Acrobat 3.0, partial field names cannot contain a period.
117. Acrobat 6.0 and later support Unicode encoding of field names. Versions earlier than Acrobat 6.0 do
not support Unicode encoding of field names.
8.6.2 Field Dictionaries (Variable Text)
118. In PDF 1.2, an additional entry in the field dictionary, DR, was defined but was never implemented.
Beginning with PDF 1.5, this entry is obsolete and should be ignored.
119. If the MK entry is present in the field’s widget annotation dictionary (see Table 8.39), Acrobat viewers
regenerate the entire XObject appearance stream. If MK is not present, the contents of the stream
outside /Tx BMC...EMC are preserved.
8.6.2 Field Dictionaries (Rich Text Strings)
120. To select a font specified by attributes in a rich text string, Acrobat 6.0 follows this sequence, choosing
the first appropriate font it finds:
a. A font in the default resource dictionary (specified by the document’s DR entry; see Table 8.67)
whose font descriptor information matches the font specification in the rich text string. “Font
Characteristics” on page 892 describes how this matching is done.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 122
b. A matching font installed on the user’s system, ignoring generic font families.
c. A font on the user’s system that matches the generic font family, if specified.
d. A standard font (see implementation note 62) that most closely matches the other font
specification properties and is appropriate for the current input locale.
8.6.3 Field Dictionaries (Button Fields)
121. The behavior of Acrobat has changed in the situation where a check box or radio button field have
multiple children that have the same export value. In Acrobat 4.0, such buttons always turned off and
on in unison. In Acrobat 5.0, the behavior of radio buttons was changed to mimic HTML so that turning
on a radio button always turned off its siblings regardless of export value. In Acrobat 6.0, the
RadiosInUnison flag allows the document author to choose between these behaviors.
8.6.3 Field Types (Choice Fields)
122. In Acrobat 3.0, the Opt array must be homogenous: its elements must be either all text strings or all
arrays.
8.6.4 Form Actions (Submit-Form Actions)
123. In Acrobat viewers, if the response to a submit-form action uses Forms Data Format (FDF), the URL must
end in #FDF so that it can be recognized as such by the Acrobat software and handled properly.
Conversely, if the response is in any other format, the URL should not end in #FDF.
8.6.4 “Form Actions (Import-Data Actions)
124. Acrobat viewers set the F entry to a relative file specification locating the FDF file with respect to the
current PDF document file. If the designated FDF file is not found when the import-data action is
performed, Acrobat tries to locate the file in a few well-known locations, depending on the host
platform. On the Windows platform, for example, Acrobat searches in the directory from which Acrobat
was loaded, the current directory, the System directory, the Windows directory, and any directories
listed in the PATH environment variable. On Mac OS, Acrobat searches in the Preferences folder and the
Acrobat folder.
125. When performing an import-data action, Acrobat viewers import the contents of the FDF file into the
current document’s interactive form, ignoring the F and ID entries in the FDF dictionary of the FDF file.
8.6.4 Form Actions (JavaScript Actions)
126. Because JavaScript 1.2 is not Unicode-compatible, PDFDocEncoding and the Unicode encoding are
translated to a platform-specific encoding before interpretation by the JavaScript engine.
8.6.6 Forms Data Format (FDF Header)
127. Because Acrobat viewers earlier than 5.0 cannot accept any other version number because of a bug,
the FDF file header is permanently frozen at version 1.2. All further updates to the version number will
be made via the Version entry in the FDF catalog dictionary instead.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 123
8.6.6 Forms Data Format (FDF Catalog)
128. The Acrobat implementation of interactive forms displays the value of the Status entry, if any, in an
alert note when importing an FDF file.
129. The only Encoding value supported by Acrobat 4.0 is Shift-JIS. Acrobat 5.0 supports Shift-JIS, UHC,
GBK, and BigFive. If any other value is specified, the default, PDFDocEncoding, is used.
8.6.6 Forms Data Format (FDF Fields)
130. Of all the possible entries shown in Table 8.96 on page 717, Acrobat 3.0 exports only the V entry when
generating FDF, and Acrobat 4.0 and later versions export only the V and AP entries. Acrobat does,
however, import FDF files containing fields that have any of the described entries.
131. If the FDF dictionary in an FDF file received as a result of a submit-form action contains an F entry
specifying a form other than the one currently being displayed, Acrobat fetches the specified form
before importing the FDF file.
132. When exporting a form to an FDF file, Acrobat sets the F entry in the FDF dictionary to a relative file
specification giving the location of the FDF file relative to that of the file from which it was exported.
133. If an FDF file being imported contains fields whose fully qualified names are not in the form, Acrobat
discards those fields. This feature can be useful, for example, if an FDF file containing commonly used
fields (such as name and address) is used to populate various types of forms, not all of which
necessarily include all of the fields available in the FDF file.
134. As shown in Table 8.96 on page 717, the only required entry in the field dictionary is T. One possible use
for exporting FDF with fields containing T entries but no V entries is to indicate to a server which fields
are desired in the FDF files returned in response. For example, a server accessing a database might use
this information to decide whether to transmit all fields in a record or just some selected ones. As noted
in implementation note 133, the Acrobat implementation of interactive forms ignores fields in the
imported FDF file that do not exist in the form.
135. The Acrobat implementation of forms allows the option of submitting the data in a submit-form action
in HTML Form format for the benefit of existing server scripts written to process such forms. Note,
however, that any such existing scripts that generate new HTML forms in response need to be modified
to generate FDF instead.
136. When scaling a button’s appearance to the bounds of an annotation, versions of Acrobat earlier than
6.0 always took into account the line width used to draw the border, even when no border was being
drawn. Beginning with Acrobat 6.0, the FB entry in the icon fit dictionary (see Table 8.97 on page 719)
allows the option of ignoring the line width.
8.6.6 Forms Data Format (FDF Pages)
137. Acrobat renames fields by prepending a page number, a template name, and an ordinal number to the
field name. The ordinal number corresponds to the order in which the template is applied to a page,
with 0 being the first template specified for the page. For example, if the first template used on the fifth
page has the name Template and has the Rename flag set to true, fields defined in that template are
renamed by prepending the character string P5.Template_0. to their field names.
138. Adobe Extreme® printing systems require that the Rename flag be true.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 124
8.7 Digital Signatures
139. Acrobat computes a byte range digest only when the signature dictionary is referenced from a
signature field. There is no byte range signature (that is, there is only an object signature) for FDF file
signatures and usage rights signatures referenced from the UR entry of a permissions dictionary. In
Acrobat 7.0, byte range digests are also computed for usage rights signatures referenced from the UR3
entry of a permissions dictionary.
Note: This note is also attached to the description of the value of the Changes key in Table 8.102.
140. Acrobat 6.0 and later do not provide the Changes entry.
8.7.1 Transform Methods
141. Acrobat 6.0 and 7.0 always generate DigestValue when creating MDP signatures. Acrobat 6.0
requires the presence of DigestValue in order to validate MDP signatures. Acrobat 7.0 does not use
DigestValue but compares the current and signed versions of the document.
142. Acrobat 6.0 requires a usage rights signature dictionary that is referenced from the UR entry of the
permissions dictionary in order to validate the usage rights. Acrobat 7.0 supports both UR and UR3; it
uses the UR3 dictionary if both are present. Adobe PDF generating applications that support PDF 1.6
and greater generate UR only for backwards compatibility with Adobe Reader 6.0.
143. In Adobe Reader 6.0, any usage right that permits the document to be modified implicitly enables the
FullSave right.
Adobe Reader 7.0 and 8.0 mimic Reader 6.0 behavior if the PDF document contains a UR dictionary but
omits a UR3 dictionary. If the PDF document contains a UR3 dictionary, only rights specified by the
Annots entry that permit the document to be modified implicitly enable the FullSave right. For all other
rights, FullSave must be explicitly enabled in order to save the document. (Signature rights permit
saving as part of the signing process but not otherwise).
If the P entry in the UR transform parameters dictionary is true, Acrobat 7.0 and greater conforming
readers permit only those rights that are enabled by the entries in the dictionary. However, viewers
permit saving the document as long as any rights that permit modifying the document are enabled.
144. In Acrobat 6.0 and greater, the DigestMethod entry in the signature reference dictionary is required,
even though this specification indicates that entry is optional.
145. In Acrobat 6.0 and greater, the V entry in the various transform parameters dictionaries are required,
even though this specification indicates otherwise. Those dictionaries include the DocMDP transform
parameters dictionary, the UR transform parameters dictionary, and the FieldMDP transform
parameters dictionary.
8.7.2 Signature Interoperability
146. In versions earlier than Acrobat 6.0, it was a requirement that the signer’s signature be the first
certificate in the PKCS#7 object. Acrobat 6.0 removed this restriction, but for maximum compatibility
with earlier versions, this practice should be followed.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 125
8.9 Document Requirements
147. PDF 1.7 added the ability to specify requirements the PDF consumer application must satisfy before it
can process or display a PDF document. Although Acrobat 7.0 officially supports PDF 1.6, Acrobat 7.0.5
also supports this document requirements feature.
9.1 Multimedia
148. The following media formats are recommended for use in authoring cross-platform PDF files intended
for consumption by Acrobat 6.0.
9.1.3 Media Clip Objects (Media Clip Data)
149. If the CT entry is not present, Acrobat requires a PL entry to be present that specifies at least one player
that can be used.
9.2 Sounds
150. Acrobat supports a maximum of two sound channels.
9.3 Movies
151. Acrobat viewers do not support the value of Aspect.
152. Acrobat viewers support only the DeviceRGB and DeviceGray color spaces for poster image
XObjects. For indexed color spaces with a base color space of DeviceRGB (see “Indexed Color Spaces”
Recommended media types
COMMON EXTENSION COMMON MIME TYPE DESCRIPTION
.aiff audio/aiff Audio Interchange File Format
.au audio/basic NeXT/Sun

Audio Format
.avi video/avi AVI (Audio/Video Interleaved)
.mid audio/midi MIDI (Musical Instrument Digital Interface)
.mov video/quicktime QuickTime
.mp3 audio/x-mp3 MPEG Audio Layer-3
.mp4 audio/mp4 MPEG-4 Audio
.mp4 video/mp4 MPEG-4 Video
.mpeg video/mpeg MPEG-2 Video
.smil application/smil Synchronized Multimedia Integration
Language
.swf application/x-shockwave-flash SWF File Format
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 126
on page 262”), Acrobat 5.0 viewers incorrectly treat hival as the number of colors rather than the
number of colors - 1. Acrobat 6.0 can handle this case properly, as well as the correct value of hival; for
compatibility with 5.0 viewers, it is necessary to specify hival as the number of colors.
Also, Acrobat viewers do not support authoring or rendering posters when the value of Poster is
true.
153. Acrobat viewers treat a FWScale value of [999 1] as full screen.
154. Acrobat viewers never allow any portion of a floating window to be offscreen.
9.4 Alternate Presentations
155. The PDF language contains no direct method of initiating an alternate presentation-defined slide
show. Instead, a slide show is invoked by a JavaScript call that is typically triggered by an interactive
form element. (See Section 8.6, “Interactive Forms.”) See the JavaScript for Acrobat API Reference (see the
Bibliography) for information about starting and stopping a slide show using JavaScript.
156. Beginning with Acrobat 8.1, Acrobat no longer provides support for SVG slide shows.
Acrobat 5.1 through 8.0 support SVG slide shows (MIME content type image/svg+xml). Those versions of
Acrobat support the Scalable Vector Graphics (SVG) 1.0 Specification defined by the W3C (see the
Bibliography). Implementation notes on support of SVG by Adobe products are available at
<http://www.adobe.com/svg/>.
All resources must be either image XObjects (see Section 4.8.4, “Image Dictionaries”) or embedded file
streams (see Section 3.10.3, “Embedded File Streams”).
● Image XObjects used for slide shows must use the DCTDecode filter and a Device RGB color space.
Color profile information must be specified in the image XObject dictionary as well as embedded
within the stream.
● Embedded audio files must be of type .wav (supported on Windows only, MIME type audio/x-wav) or
.mp3 (MIME type audio/mpeg, documented at <http://www.chiariglione.org/mpeg/index.htm>).
● Embedded video must be QuickTime-compatible files of type .avi (MIME type video/ms-video) or .mov
(MIME type video/quicktime, documented on Apple’s Developer Connection site at
<http://developer.apple.com>. To play video, a QuickTime player (version 3 or later) must be installed.
9.5 3D Artwork
157. Acrobat viewers earlier than version 7.0.7 did not honor the U3DPath entry of a 3D view dictionary.
Acrobat 7.0.7 supports text string values for this entry and deprecates the use of an array for its value.
158. PDF 1.7 introduced several new dictionaries for controlling the appearance and behavior of 3D artwork
and for enabling markup annotations on 3D views. Although Acrobat 7.0 officially supports PDF 1.6,
Acrobat 7.0.7 also supports these new dictionaries.
10.1 Procedure Sets
159. Acrobat viewers earlier than version 5.0 respond to requests for unknown procedure sets by warning
the user that a required procedure set is unavailable and canceling the printing operation. Acrobat 5.0
and later ignores procedure sets.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 127
10.2 Metadata
160. Acrobat viewers display the document’s metadata in the Document Properties dialog box and impose
a limit of 255 bytes on any string representing one of those values.
10.2.2 Metadata Streams
161. For backward compatibility, applications that create PDF 1.4 documents should include the metadata
for a document in the document information dictionary as well as in the document’s metadata stream.
Applications that support PDF 1.4 or later should check for the existence of a metadata stream and
synchronize the information in it with that in the document information dictionary. The Adobe
metadata framework provides a date stamp for metadata expressed in the framework. If this date
stamp is equal to or later than the document modification date recorded in the document information
dictionary, the metadata stream shall be taken as authoritative. If, however, the document modification
date recorded in the document information dictionary is later than the metadata stream’s date stamp,
the document has likely been saved by an application that is not aware of PDF 1.4 metadata streams. In
this case, information stored in the document information dictionary should be taken to override any
semantically equivalent items in the metadata stream.
10.3 File Identifiers
162. Although the ID entry is not required in a non-encrypted PDF, all Adobe applications that produce PDF
files include this entry. Acrobat adds this entry when saving a file if it is not already present.
163. Adobe applications may pass the suggested information to the MD5 message digest algorithm to
calculate file identifiers. Note that the calculation of the file identifier need not be reproducible; all that
matters is that the identifier is likely to be unique. For example, two implementations of this algorithm
might use different formats for the current time, causing them to produce different file identifiers for
the same file created at the same time, but the uniqueness of the identifier is not affected.
10.9.2 Content Database (Digital Identifiers)
164. The Acrobat Web Capture plug-in treats external streams referenced within a PDF file as auxiliary data.
Such streams are not used in generating the digital identifier.
10.9.3 Content Sets (Image Sets)
165. In Acrobat 4.0 and later versions, if the indirect reference to an image XObject is not removed from the
O array when its reference count reaches 0, the XObject is never garbage-collected during a save
operation. The image set’s reference to the XObject may thus be considered a weak one that is relevant
only for caching purposes; when the last strong reference goes away, so does the weak one.
10.9.4 Source Information (URL Alias Dictionaries)
166. Acrobat viewers use an indirect object reference to a shared string for each URL in a URL alias
dictionary. These strings can be shared among the chains and with other data structures. It is
recommended that other PDF conforming readers adopt this same implementation.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 128
10.10.1 Page Boundaries
167. Acrobat provides various user-specified options for determining how the region specified by the crop
box is to be imposed on the output medium during printing. Although these options have varied from
one Acrobat version to another, the default behavior is as follows:
1. Select the media size and orientation according to the operating system’s Print Setup dialog.
(Acrobat has no direct control over this process.)
2. Compute an effective crop box by clipping it with the media box and rotating the page according to
the page object’s Rotate entry, if specified.
3. Center the crop box on the medium, rotating it if necessary to enable it to fit in both dimensions.
4. Optionally, scale the page up or down so that the crop box coincides with the edges of the medium
in the more restrictive dimension.
The description above applies only in simple printing workflows that lack any other information about
how PDF pages are to be imposed on the output medium. In some workflows, there is additional
information, either in the PDF file (BleedBox, TrimBox, or ArtBox) or in a separate job ticket (such as
JDF or PJTF). In these circumstances, other rules apply, which depend on the details of the workflow.
Consequently, it is recommended that PDF files initially be created with the crop box the same as the
media box (or equivalently, with the crop box omitted). This ensures that if the page is printed on that
size medium, the crop box coincides with the edges of the medium, producing predictable and
dependable positioning of the page contents. On the other hand, if the page is printed on a different
size medium, the page may be repositioned or scaled in implementation-defined or user-specified
ways.
10.10.4 Output Intents
168. Acrobat viewers do not make use of the “to CIE” (AToB) information in an output intent’s ICC profile.
169. Acrobat 5.0 does not make direct use of the destination profile in the output intent dictionary, but
third-party plug-in extensions might do so. Acrobat 6.0 does make use of this profile.
10.10.5 Trapping Support (Trap Network Annotations)
170. Older viewers may fail to maintain the trap network annotation’s required position at the end of the
Annots array.
171. Older viewers may fail to validate trap networks before printing.
172. In Acrobat 4.0, saving a PDF file with the Optimize option selected causes a page’s trap networks to be
incorrectly invalidated even if the contents of the page has not been changed. This occurs because the
new, optimized content stream generated for the page differs from the original content stream still
referenced by the trap network annotation’s Version array. This problem has been corrected in later
versions of Acrobat.
10.10.6 Open Prepress Interface (OPI)
173. The Acrobat 3.0 Distiller application converts OPI comments into OPI dictionaries. When the Acrobat
3.0 viewer prints a PDF file to a PostScript file or printer, it converts the OPI dictionary back to OPI
comments. However, the OPI information has no effect on the displayed image or form XObject.
174. Acrobat viewer and Distiller applications earlier than version 4.0 do not support OPI 2.0.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to the PDF Reference, sixth edition 129
175. In Acrobat 3.0, the value of the F entry in an OPI dictionary must be a string.
Appendix C Implementation Limits
176. Acrobat viewers earlier than 5.0 use the PostScript save and restore operators rather than gsave
and grestore to implement q and Q, and are subject to a nesting limit of 12 levels.
177. In PDF versions earlier than PDF 1.6, the size of the default user space unit is fixed at 1 / 72 inch. In
Acrobat viewers earlier than version 4.0, the minimum allowed page size is 72 by 72 units in default
user space (1 by 1 inch); the maximum is 3240 by 3240 units (45 by 45 inches). In Acrobat versions 5.0
and later, the minimum allowed page size is 3 by 3 units (approximately 0.04 by 0.04 inch); the
maximum is 14,400 by 14,400 units (200 by 200 inches).
Beginning with PDF 1.6, the size of the default user space unit may be set with the UserUnit entry of
the page dictionary. Acrobat 7.0 supports a maximum UserUnit value of 75,000, which gives a
maximum page dimension of 15,000,000 inches (14,400 * 75,000 * 1 / 72). The minimum UserUnit
value is 1.0 (the default).
F.2.2 Linearization Parameter Dictionary (Part 2)
178. Acrobat requires a white-space character to follow the left bracket ( [ ) character that begins the H array.
179. Acrobat does not currently support reading or writing files that have an overflow hint stream.
Note: This implementation note is also referred to in Section F.2.5, “Hint Streams (Parts 5 and 10).”
180. Acrobat generates a value for the E parameter that incorrectly includes an object beyond the end of
the first page as if it were part of the first page.
F.2.6 First-Page Section (Part 6)
181. Acrobat always treats page 0 as the first page for linearization, regardless of the value of OpenAction.
F.2.8 Shared Objects (Part 8)
182. Acrobat does not generate shared object groups containing more than one object.
F.3.1 Page Offset Hint Table
183. In Acrobat, items 6 and 7 in the header section of the page offset hint table are set to 0. As a result, item
6 of the per-page entry effectively does not exist; its value is taken to be 0. That is, the sequence of
bytes constituting the content stream for a page is described as if the content stream were the first
object in the page, even though it is not.
184. Acrobat 4.0 and later versions always set item 8 equal to 0. They also set item 9 equal to the value of
item 5, and set item 7 of each per-page hint table entry (Table F.4) to be the same as item 2 of the
per-page entry. Acrobat ignores all of these entries when reading the file.
F.3.2 Shared Object Hint Table
185. In Acrobat, item 5 in the header section of the shared objects hint table is unused and is always set to 0.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to Adobe Extensions to ISO 32000 130
186. MD5 signatures are not implemented in Acrobat; item 2 in a shared object group entry must be 0.
187. Acrobat does not support more than one shared object in a group; item 4 in a shared object group
entry should always be 0.
188. In a document consisting of only one page, items 1 and 2 in the shared object hint table are not
meaningful; Acrobat writes unpredictable values for these items.
Implementation Notes to Adobe Extensions to ISO 32000
This section contains notes on the implementation by Acrobat of the Adobe extensions to the PDF
language beyond that contained in ISO 32000. The implementation notes for Adobe extensions have a
suffix of E-.
E-1. Acrobat 9.0 stores data required by the welcome page and header in this way in the Resources entry
of the collections dictionary. The document Navigator Template Format, listed in the Bibliography,
describes the content and display of a header and welcome page of a portable collection.
E-2. Acrobat 9.0 Pro has two standard navigators and several custom navigators. When an Acrobat user
chooses a custom navigator while in authoring mode, Acrobat embeds the navigator in the portable
collection. After being embedded and saved, all editions of Acrobat and Adobe Reader, beginning with
version 9.0, can display a portable collection using the embedded custom navigator.
The custom navigator that Acrobat Pro embeds into the portable collection is a stand-alone file
available on the local hard drive. A navigator file collects into a single file, the resources required by a
navigator of a portable collection. Although PDF 1.7 supports two standard collection views (tile and
details), a navigator provides a custom view using a SWF file. The navigator SWF file interacts with a
host authoring or viewing application through Acrobat ActionScript API. See the Acrobat ActionScript
API Reference in the Bibliography.
E-3. The navigator file format, a NAV file, is based on UCF. (See Uniform Container Format listed in the
Bibliography.) A navigator file contains an XML manifest, the navigator SWF file, and other resources
required by the navigator, such as images, localized strings, and private data. See the Acrobat Navigator
File Format in the Bibliography for information about the format for a navigator file. See also
implementation note E-2.
E-4. In Acrobat 9.0, the image referenced by the Icon entry may be any size. For best results in Acrobat, the
image should be 42 x 42 pixels.
E-5. Acrobat 8.1 adds support for both XFA versions 2.5 and 2.6.
E-6. Authoring forms with barcodes has been available since version 6.0.5; however, the barcode plug-in
was not available as a product feature until version 7.0. In version 6.0.5 of Acrobat and Adobe Reader,
paper form barcodes could only encode PDF417 symbology. Support for Data Matrix and QR Code
symbology was added in version 7.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to Adobe Extensions to ISO 32000 131
E-7. The Acrobat implementation of barcode form fields places several constraints on some of the entries in
the field dictionary:
Field Flags Entry: In the field dictionary of a barcode form field, bits 1, 3, 13, and 23 of the Ff entry
(field flags) are set. These bit positions have the names ReadOnly, NoExport, Multiline, and
DoNotSpellCheck. (See Tables 8.70 and 8.77 of the PDF Reference, sixth edition, PDF 1.7.)
Kids Entry: In Acrobat 9, there is a limit of 255 on the array of indirect references to the barcode
widget annotations that render the barcode.
The Acrobat implementation of barcode widget annotations sets the BG entry of the MK dictionary
to[1.0]to obtain a black background for the barcode widget annotation.
E-8. In Acrobat 9.0, the string length of WKT is limited to 1024 bytes.
E-9. For EPSG codes that the Acrobat 9.0 implementation does not support, or for custom coordinate
systems not associated with EPSG codes, Well Known Text strings can be used to fully specify an object.
E-10. If the text box, as determined by TB, is not large enough, Acrobat 9.0 truncates the string (UT).
E-11. In the implementation for version 9.0 of the Adobe Reader software, both Flash and 3D content are
supported.
E-12. Rich Media annotations in version 9.0 of the Adobe Reader software support only a subset of the
Border Style dictionary (/BS), including the line width and color values. One behavior discrepancy is
that if the dictionary is not present, the line width value defaults to zero.
E-13. When the value for the key Transparent (as described in “TABLE 9.50d Entries in a
RichMediaPresentation dictionary” on page 82) is set to true, the Rich Media Annotation artwork is
composited over already flattened page content using an alpha channel. Rich Media Annotation
artwork is always rendered above all page content and does not, therefore, interfere with the
transparency model of the page.
E-14. Older viewers—earlier than 9.0—ignore and do not process the additional approval signature
FieldMDP Lock state. To increase compatibility, Acrobat sets FieldMDP to lock all fields when the
document is locked. Consequently, older viewers consider all fields locked when the document lock is
applied using Acrobat 9.0. However, adding annotations is still possible.
Documents signed with Acrobat 9.0 with locking, and then opened and modified in an older viewer
(adding annotations), and then opened in Acrobat 9.0 show invalidated signatures.
E-15. How seed values are interpreted is both application-specific and specific to the signature handler
associated with the signature field. Each application and handler may choose how to honor the seed
values. The behavior of Acrobat and the PPKLite signature handler is documented below for the
LockDocument seed value, and for AppearanceFilter in implementation note E-15.
A seed value of auto specifies that the implementation is application-specific. Acrobat processes the
auto value as follows: If the document contains hidden fields, the signer is not allowed to lock the
document. Otherwise, the signer can choose whether to lock at the time of signing, with the same
behavior as the value being set to false and the required flag not set. Acrobat does not honor the
required flag when the LockDocument value is auto.
E-16. The AppearanceFilter is implemented as follows: If the AppearanceFilter is present, it
automatically chooses a matching appearance from the user interface. If the AppearanceFilter is
optional, and if a matching appearance is not available, it defaults to the normal behavior where any
appearance can be chosen. If the filter is required, the matching appearance is selected and the
selection box disabled.
Adobe Acrobat SDK Implementation Notes
Adobe® Supplement to the ISO 32000 Implementation Notes to Adobe Extensions to ISO 32000 132
E-17. Version 9.0 of Acrobat and Adobe Reader do not implement the value of A (annotation array order) of
the Tabs entry of the page object.
E-18. Acrobat Pro and Acrobat Pro Extended while in portable collection editing mode use the combination
of ID, Locale, and Version to uniquely identify a navigator. This behavior allows the application to
determine that the navigator embedded in a collection is the same as a navigator description stored on
hard disk. IDs can be human-readable or a URN based on a machine-generated GUID, as long as they
are likely to be unique. GUIDs are defined in RFC4122, A Universally Unique Identifier (UUID) URN
Namespace, listed in the Bibliography.
E-19. For version 9.0, a PDF viewing application loads the navigator found in the PDF file, no matter what
navigators are available.
In addition to loading the navigator in the PDF file, a portable collection authoring application—
Acrobat Pro or Acrobat Pro Extended—loads the navigator with the highest version number when it
finds more than one with the same ID and locale. Acrobat, in authoring mode, usually shows the PDF
file's navigator as well as all the loaded navigators. If one of the loaded navigators matches the PDF
file's navigator (ID, version, locale), only one copy is shown in the navigator list. If the PDF file's
navigator is newer (higher version number), only it is shown. If the PDF file's navigator is older, both are
shown, with the loaded navigator marked as new.
E-20. For Acrobat 9.0, if a WKT string is present, it is used to specify the coordinate system. If an EPSG code is
present, it shall be consistent with the WKT string. If no WKT string is present, the EPSG code is used to
specify the coordinate system.
133
Index
Number
3D activation dictionaries
Style entry 56
Transparent entry 56
Window entry 56
3D annotation dictionaries
3DU entry 55
3D comment notes 74–75
3D content supported by Acrobat 9.0 131
3D measurement/markup dictionaries 57, 59
A1 entry 63, 65, 68, 71, 74
A2 entry 63, 66, 68, 71
A3 entry 72
A4 entry 72
about 62
AP entry 63, 65, 68, 71
C entry 64, 66, 69, 72, 75
D1 entry 66, 68
D2 entry 68
DR entry 69
EL entry 72
N1 entry 63, 65, 68, 74
N2 entry 63, 66, 69, 71
P entry 64, 66, 69, 72
R entry 73
S entry 64, 67, 69, 73, 75
SC entry 73
Subtype entry 62
TB entry 75
TP entry 63, 66, 69, 72, 75
TRL entry 62
TS entry 64, 66, 69, 72, 75
TX entry 69, 72
TY entry 64, 66, 69, 72
Type entry 62
U entry 64, 66, 72
UT entry 64, 67, 69, 72, 75
V entry 64, 66, 69, 72
3D node dictionaries
Data entry 58
Instance entry 58
N entry 58
RM entry 58
3D units dictionaries
about 55, 59–61
DSm entry 60
DSn entry 60
DU entry 60
TSm entry 60
TSn entry 60
USm entry 60
USn entry 60
UU entry 60
3D units dictionary
creation time units 59, 61
display units 59, 61
user override units 59, 61
3D View dictionaries
MA entry 57
Params entry 93
Snapshot entry 93
Type entry 93
3D view dictionaries
MA entry 57
MS entry 57
3DMeasure object type 62
3DU entry
3D annotation dictionary 55
A
A entry
cue point dictionary 92
A tab order
annotations 23, 37
A Universally Unique Identifier (UUID) URN Namespace
(Internet RFC 4122) 103
A1 entry
3D measurement/markup dictionary 63, 65, 68, 71, 74
A2 entry
3D measurement/markup dictionary 63, 66, 68, 71
A3 entry
3D measurement/markup dictionary 72
A4 entry
3D measurement/markup dictionary 72
access flags 17
access permissions
flags 17
accessibility preference not selected
Acrobat 5 and earlier 118
Acrobat 6 118
Acrobat 7 118
Acrobat 8 118
Acrobat 9 118
accessibility preference selected 117
accessibility preference settings 117
ActionScript API for navigator
accessing colors dictionary 30
accessing string table 37
Activation entry
rich media settings dictionary 78
AES algorithm
encrypting data 16
AESV2 decryption method
crypt filters 16
AESV3 decryption method
crypt filters 16
Adobe Acrobat SDK Index
Adobe® Supplement to the ISO 32000 134
angular dimension measurement 62, 67–70
Animation entry
rich media activation dictionary 79
annotation tab order 117
annotation types
Projection 38
AP entry
3D measurement/markup dictionary 63, 65, 68, 71
APIVersion entry
navigator dictionary 35
AppearanceFilter 131
AppearanceFilter entry
signature field seed value dictionary 44
artifacts, Tagged PDF
pagination 101
Asset entry
rich media instance dictionary 89
Assets entry
rich media content dictionary 86
Assets name tree 87
AuthEvent entry
crypt filter dictionary 16
B
Background entry
collection colors dictionary 31
barcode form fields
constraints on the field dictionary 131
barcode plug-in support 130
BaseVersion 23, 25
Bates Numbering 101
Binding entry
rich media params dictionary 90
BindingMaterialName entry
rich media params dictionary 90
Border Style dictionary
supported by Rich Media annotations 131
Bounds entry
geospatial measure dictionary 50
C
C entry
3D measurement/markup dictionary 64, 66, 69, 72, 75
Caption entry
PaperMetaData generation parameters dictionary 46
CardBackground entry
collection colors dictionary 31
CardBorder entry
collection colors dictionary 31
case normalization in folder names for portable collections
33
Category entry
navigator dictionary 35
CF entry
encryption dictionary 14
CFM entry
crypt filter dictionary 16
Child entry
folder dictionary 32, 33
CI entry
folder dictionary 32, 33
collection colors dictionaries
about 30
Background entry 31
CardBackground entry 31
CardBorder entry 31
PrimaryText entry 31
SecondaryText entry 31
collection dictionaries
about 34
Colors entry 30, 34
Folders entry 30, 31, 34
Navigator entry 29, 34
Resources entry 29, 34
Split entry 30, 34
View entry 29, 34
collection field dictionaries
Subtype entry 30
collection item dictionary 32, 33
collection split dictionaries
about 30
Direction entry 31
Position entry 31
Colors entry
collection dictionary 30, 34
Condition entry
rich media activation dictionary 79
rich media deactivation dictionary 80
Configuration entry
rich media activation dictionary 79
Configurations entry
rich media content dictionary 86
Contents entry, Tagged PDF artifact 100
coordinate systems
geospatial (measurement properties) 48
rectilinear (measurement properties) 48
CreationDate entry
folder dictionary 32
crypt filter dictionaries
AuthEvent entry 16
CFM entry 16
crypt filters 13, 14, 16
Identity 14, 15, 16
stream encryption 14
string encryption 15
cue point dictionaries 91–92
A entry 92
Name entry 92
Subtype entry 92
Time entry 92
Type entry 92
CuePoints entry
rich media params dictionary 90
custom navigator
C key in collection dictionary 29
custom navigators in Acrobat 9.0 Pro 130
Adobe Acrobat SDK Index
Adobe® Supplement to the ISO 32000 135
D
D1 entry
3D measurement/markup dictionary 66, 68
D2 entry
3D measurement/markup dictionary 68
Data entry
3D node dictionary 58
view params dictionary 93
DCS entry
geospatial measure dictionary 50, 51, 52
Deactivation entry
rich media settings dictionary 78
Desc entry
folder dictionary 32
navigator dictionary 35
dictionaries
standard encryption 16
See encryption dictionary
Direction entry
collection split dictionary 31
DocOpen authorization event (crypt filters) 16
document catalog
Extensions entry 23
DR entry
3D measurement/markup dictionary 69
DSm entry
3D units dictionary 60
DSn entry
3D units dictionary 60
DU entry
3D units dictionary 60
E
ECC entry
PaperMetaData generation parameters dictionary 47
ECMA-363, Universal 3D file Format 103
EL entry
3D measurement/markup dictionary 72
EmbeddedFiles entry (name dictionary) 33, 37
encryption
algorithms 14
key algorithm 16–19
encryption dictionary
CF entry 14
EncryptMetadata entry 18
Filter entry 19
for standard security handler 16–18, 19
Length entry 13, 18, 19
O entry 17, 18, 19
OE entry 17, 20
P entry 17, 18, 19
Perms entry 18, 20
R entry 16, 19
standard 16, ??–18
StmF entry 14
StrF entry 14
U entry 17, 19
UE entry 17, 20
V entry 13, 14, 16, 19
encryption keys
computing 17
and encryption revision number 14
length 13
encryption of data using the AES algorithm 16
EncryptMetadata entry
encryption dictionary 18
Enforce entry
viewer preferences dictionary 28
enforcing viewer preferences
print scaling 28
EPSG entry
geographic coordinate system dictionary 51, 52
EPSG reference code 51, 52
error correction coefficient (ECC) 47
ExData entry
markup annotation dictionary 38
ExtensionLevel 25
Extensions entry
document catalog 23
extensions to the PDF language beyond ISO 32000 130
external data dictionaries, projection annotation
M3DREF entry 76
Subtype entry 76
Type entry 76
F
Federal Information Processing Standards Publications 103
file encryption key 16, 18, 19, 20, 21
file formats native to Acrobat products 106
file identifiers
encryption 18
file names (UCF) 33
file specification dictionaries
Thumb entry 26
file trailer dictionary
ID entry 18
Filter entry
encryption dictionary 19
Flash content supported by Acrobat 9.0 131
FlashVars entry
rich media params dictionary 90
folder dictionaries
about 30
Child entry 32, 33
CI entry 32, 33
CreationDate entry 32
Desc entry 32
Free entry 33
ID entry 32, 33, 34
ModDate entry 32
Name entry 32
Next entry 32, 33
Parent entry 32, 33
Thumb entry 33
Type entry 32
Folder object type 32
Folders entry
collection dictionary 30, 31, 34
Adobe Acrobat SDK Index
Adobe® Supplement to the ISO 32000 136
folios 101
Free entry
folder dictionary 33
G
GCS entry
geospatial measure dictionary 50, 51, 52
GEOGCS object type 51
geographic coordinate system dictionaries
about 51
EPSG entry 51, 52
Type entry 51, 52
WKT entry 51, 52
geospatial measure dictionaries 49–51
Bounds entry 50
DCS entry 50, 51, 52
GCS entry 50, 51, 52
GPTS entry 51
LPTS entry 51
PDU entry 50
GPTS entry
geospatial measure dictionary 51
H
HAlign entry
rich media position dictionary 84
Height entry
PaperMetaData generation parameters dictionary 46
rich media window dictionary 84
HOffset entry
rich media position dictionary 85
I
Icon entry
navigator dictionary 35
ID entry
file trailer dictionary 18
folder dictionary 32, 33, 34
navigator dictionary 35
Identity crypt filter 14, 15, 16
image dictionaries
Measure entry 27
PtData entry 27
image size in Acrobat 9.0 130
InitialFields entry
navigator dictionary 36
Instance entry
3D node dictionary 58
view params dictionary 93
Instances entry
rich media configuration dictionary 88
Internationalized Resource Identifiers (IRIs) 36
Internet RFCs (Requests for Comments)
3454 Preparation of Internationalized Strings
(“stringprep”) 103
3986 Uniform Resource Identifier (URI): Generic Syntax
103
3987 Internationalized Resource Identifiers (IRIs) 103
4013 SASLprep: Stringprep Profile for User Names and
Passwords 103
4122 A Universally Unique Identifier (UUID) URN
Namespace 103
K
Key Salt 19
L
Length entry
encryption dictionary 13, 18, 19
linear dimension measurement 63–65
LoadType entry
navigator dictionary 35
Locale entry
navigator dictionary 36
LockDocument entry
signature field seed value dictionary 44
locked fields and signatures
older viewers 131
LPTS entry
geospatial measure dictionary 51
M
M3DREF entry
external data dictionary, projection annotation 76
MA entry
3D View dictionary 57
MA entry (3D view dictionary) 57
markup annotation dictionaries
ExData entry 38
MD5 message-digest algorithm
hash function 18–19
measure dictionaries
Subtype entry 48, 49
See geospatial measure dictionaries
Measure entry
image dictionary 27
type 1 form dictionary 27
metadata
encryption of 18
unencrypted 18
ModDate entry
folder dictionary 32
MS entry (3D view dictionary) 57
N
N entry
3D node dictionary 58
N1 entry
3D measurement/markup dictionary 63, 65, 68, 74
N2 entry
3D measurement/markup dictionary 63, 66, 69, 71
name dictionary
EmbeddedFiles entry 33, 37
XFAResources entry 23
Name entry
cue point dictionary 92
Adobe Acrobat SDK Index
Adobe® Supplement to the ISO 32000 137
folder dictionary 32
navigator dictionary 34
rich media configuration dictionary 88
name trees
name dictionary 33
Names entry
point data dictionary 54
native file formats of Acrobat products 106
NavigationPane entry
rich media presentation dictionary 83
navigator
identifying in Acrobat Pro and Acrobat Pro Extended
132
navigator dictionaries
APIVersion entry 35
Category entry 35
Desc entry 35
Icon entry 35
ID entry 35
InitialFields entry 36
LoadType entry 35
Locale entry 36
Name entry 34
Resources entry 36
Strings entry 36
SWF entry 34
Version entry 35
navigator dictionary
Navigator entry in collection dictionary 29
Navigator entry
collection dictionary 29, 34
navigator file format 130
navigator in the PDF file
loading in Acrobat 9.0 132
navigators
about 34–37
custom in Acrobat 9.0 Pro 130
neatline 50
Next entry
folder dictionary 32, 33
O
O entry
encryption dictionary 17, 18, 19
object types
3DMeasure 62
Folder 32
GEOGCS 51
PaperMetaData 46
PROJCS 52
PtData 53
OE entry
encryption dictionary 17, 20
owner password 17
P
P entry
3D measurement/markup dictionary 64, 66, 69, 72
encryption dictionary 17, 18, 19
page objects
Tabs entry 23
pagination artifacts 101
PaperMetaData generation parameters dictionaries
about 45
Caption entry 46
ECC entry 47
Height entry 46
Resolution entry 46
Symbology entry 46, 47
Type entry 46
Version entry 46
Width entry 46
XSymHeight entry 47
XSymWidth entry 47
PaperMetaData object type 46
Params entry
3D View dictionary 93
rich media instance dictionary 89
Parent entry
folder dictionary 32, 33
PassContextClick entry
rich media presentation dictionary 83
passwords
owner 17
user 17
PDF extensions
BaseVersion 23, 25
ExtensionLevel 25
PDU entry
geospatial measure dictionary 50
Perms entry
encryption dictionary 18, 20
perpendicular dimension measurement 62, 65–67
PlayCount entry
rich media animation dictionary 81
PMD entry
widget annotation dictionary 39
point data dictionaries 53–54
Names entry 54
Subtype entry 53
Type entry 53
XPTS entry 54
portable collections 26
Position entry
collection split dictionary 31
rich media window dictionary 84
prefix registry 24
Preparation of Internationalized Strings (“stringprep”)
(Internet RFC 3454) 103
Presentation entry
rich media activation dictionary 80
PrimaryText entry
collection colors dictionary 31
PrintScaling
Enforce array 28
PROJCS object type 52
projected coordinate system dictionary 52
projection annotation 39, 75
Projection annotation type 38
Adobe Acrobat SDK Index
Adobe® Supplement to the ISO 32000 138
PtData entry
image dictionary 27
type 1 form dictionary 27
PtData object type 53
R
R entry
3D measurement/markup dictionary 73
encryption dictionary 16, 19
radial dimension measurement 62, 71–74
Resolution entry
PaperMetaData generation parameters dictionary 46
Resources entry
collection dictionary 29, 34
navigator dictionary 36
rich media activation dictionaries 78–80
Animation entry 79
Condition entry 79
Configuration entry 79
Presentation entry 80
Scripts entry 80
Type entry 79
View entry 79
rich media animation dictionaries 80–82
PlayCount entry 81
Speed entry 81
Subtype entry 81
Type entry 81
rich media annotation dictionaries
RichMediaContent entry 77
RichMediaSettings entry 77
Subtype entry 77
Rich Media annotations
support of Border Style dictionary 131
rich media configuration dictionaries 88
Instances entry 88
Name entry 88
Subtype entry 88
Type entry 88
rich media content dictionaries 86–94
Assets entry 86
Configurations entry 86
Type entry 86
Views entry 86
rich media deactivation dictionaries 80
Condition entry 80
Type entry 80
rich media instance dictionaries 88–89
Asset entry 89
Params entry 89
Subtype entry 89
Type entry 89
rich media params dictionaries 90–91
Binding entry 90
BindingMaterialName entry 90
CuePoints entry 90
FlashVars entry 90
Settings entry 90
Type entry 90
rich media position dictionaries
HAlign entry 84
HOffset entry 85
Type entry 84
VAlign entry 85
VOffset entry 85
rich media presentation dictionaries 82–83
NavigationPane entry 83
PassContextClick entry 83
Style entry 82
Toolbar entry 83
Transparent entry 83
Type entry 82
Window entry 82
rich media settings dictionaries 78–86
Activation entry 78
Deactivation entry 78
Type entry 78
rich media window dictionaries 84–86
Height entry 84
Position entry 84
Type entry 84
Width entry 84
RichMediaContent entry
rich media annotation dictionary 77
RichMediaSettings entry
rich media annotation dictionary 77
RM entry
3D node dictionary 58
running heads 101
S
S entry
3D measurement/markup dictionary 64, 67, 69, 73, 75
SASLprep: Stringprep Profile for User Names and Passwords
(Internet RFC 4013) 103
SC entry
3D measurement/markup dictionary 73
Scripts entry
rich media activation dictionary 80
SecondaryText entry
collection colors dictionary 31
Security Requirements For Cryptographic Modules (FIPS
PUB 140-2) 103
seed values
interpreting 131
Settings entry
rich media params dictionary 90
signature field seed value dictionaries
AppearanceFilter entry 44
LockDocument entry 44
signatures and locked fields
older viewers 131
slide shows
initiating 126
Snapshot entry
3D View dictionary 93
Speed entry
rich media animation dictionary 81
Adobe Acrobat SDK Index
Adobe® Supplement to the ISO 32000 139
Split entry
collection dictionary 30, 34
StdCF crypt filter name 16
StmF entry
encryption dictionary 14
StrF entry
encryption dictionary 14
Strings entry
navigator dictionary 36
Style entry
3D activation dictionary 56
rich media presentation dictionary 82
Subtype entry
3D measurement/markup dictionary 62
collection field dictionary 30
cue point dictionary 92
external data dictionary, projection annotation 76
measure dictionary 48, 49
point data dictionary 53
rich media animation dictionary 81
rich media annotation dictionary 77
rich media configuration dictionary 88
rich media instance dictionary 89
Subtype entry, Tagged PDF artifact 100
SVG slide shows not supported by Acrobat 8.1 126
SWF entry
navigator dictionary 34
Symbology entry
PaperMetaData generation parameters dictionary 46,
47
T
tab order for annotations 117
Tabs entry (page object) 23
TB entry
3D measurement/markup dictionary 75
Thumb entry
file specification dictionary 26
folder dictionary 33
Time entry
cue point dictionary 92
Toolbar entry
rich media presentation dictionary 83
TP entry
3D measurement/markup dictionary 63, 66, 69, 72, 75
Transparent entry
3D activation dictionary 56
rich media presentation dictionary 83
TRL entry
3D measurement/markup dictionary 62
TS entry
3D measurement/markup dictionary 64, 66, 69, 72, 75
TSm entry
3D units dictionary 60
TSn entry
3D units dictionary 60
TU entry
3D units dictionary 60
TU units dictionaries
TSm entry 60
TX entry
3D measurement/markup dictionary 69, 72
TY entry
3D measurement/markup dictionary 64, 66, 69, 72
type 1 form dictionaries
Measure entry 27
PtData entry 27
Type entry
3D measurement/markup dictionary 62
3D View dictionary 93
cue point dictionary 92
external data dictionary, projection annotation 76
folder dictionary 32
geographic coordinate system dictionary 51, 52
PaperMetaData generation parameters dictionary 46
point data dictionary 53
rich media activation dictionary 79
rich media animation dictionary 81
rich media configuration dictionary 88
rich media content dictionary 86
rich media deactivation dictionary 80
rich media instance dictionary 89
rich media params dictionary 90
rich media position dictionary 84
rich media presentation dictionary 82
rich media settings dictionary 78
rich media window dictionary 84
U
U entry
3D measurement/markup dictionary 64, 66, 72
encryption dictionary 17, 19
UE entry
encryption dictionary 17, 20
Unicode Technical Standard #35 36
Uniform Resource Identifier (URI): Generic Syntax (Internet
RFC 3986) 103
Universal Container Format (UCF) specification 87
Universal Container Format (UCF) specification 33
user password 17
USm entry
3D units dictionary 60
USn entry
3D units dictionary 60
UT entry
3D measurement/markup dictionary 64, 67, 69, 72, 75
UTS 35, Unicode Technical Standard #35 Locale Data
Markup Language (LDML) 104
UU entry
3D units dictionary 60
V
V entry
3D measurement/markup dictionary 64, 66, 69, 72
encryption dictionary 13, 14, 16, 19
V2 decryption method
crypt filters 16
Validation Salt 19
Adobe Acrobat SDK Index
Adobe® Supplement to the ISO 32000 140
VAlign entry
rich media position dictionary 85
Version entry
navigator dictionary 35
PaperMetaData generation parameters dictionary 46
view dictionaries 92–94
View entry
collection dictionary 29, 34
rich media activation dictionary 79
view params dictionaries 93–94
Data entry 93
Instance entry 93
viewer preferences
enforcing print scaling 28
viewer preferences dictionary
Enforce entry 28
Views entry
rich media content dictionary 86
VOffset entry
rich media position dictionary 85
W
W tab order
annotations 23
Well Known Text (WKT) 52
Well Known Text strings 51, 131
widget annotation dictionaries
PMD entry 39
Width entry
PaperMetaData generation parameters dictionary 46
rich media window dictionary 84
Window entry
3D activation dictionary 56
rich media presentation dictionary 82
WKT entry
geographic coordinate system dictionary 51, 52
WKT length restriction in Acrobat 9.0 131
X
XFA versions newly supported by Acrobat 8.1 130
xfa:spec attribute 42
XFAResources entry
name dictionary 23
XPTS entry
point data dictionary 54
XSymHeight entry
PaperMetaData generation parameters dictionary 47
XSymWidth entry
PaperMetaData generation parameters dictionary 47

© 2008 Adobe Systems Incorporated. All rights reserved. Adobe® Acrobat® 9.0 SDK Adobe Supplement to the ISO 32000 Edition 1.0, June 2008 If this guide is distributed with software that includes an end user agreement, this guide, as well as the software described in it, is furnished under license and may be used or copied only in accordance with the terms of such license. Except as permitted by any such license, no part of this guide may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, recording, or otherwise, without the prior written permission of Adobe Systems Incorporated. Please note that the content in this guide is protected under copyright law even if it is not distributed with software that includes an end-user license agreement. The content of this guide is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Adobe Systems Incorporated. Adobe Systems Incorporated assumes no responsibility or liability for any errors or inaccuracies that may appear in the informational content contained in this guide. Please remember that existing artwork or images that you may want to include in your project may be protected under copyright law. The unauthorized incorporation of such material into your new work could be a violation of the rights of the copyright owner. Please be sure to obtain any permission required from the copyright owner. Any references to company names, company logos and user names in sample material or sample forms included in this documentation and/or software are for demonstration purposes only and are not intended to refer to any actual organization or persons. Adobe, the Adobe logo, and Acrobat are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other countries. Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, USA. Notice to U.S. Government End Users. The Software and Documentation are “Commercial Items,” as that term is defined at 48 C.F.R. §2.101, consisting of “Commercial Computer Software” and “Commercial Computer Software Documentation,” as such terms are used in 48 C.F.R. §12.212 or 48 C.F.R. §227.7202, as applicable. Consistent with 48 C.F.R. §12.212 or 48 C.F.R. §§227.7202-1 through 227.7202-4, as applicable, the Commercial Computer Software and Commercial Computer Software Documentation are being licensed to U.S. Government end users (a) only as Commercial Items and (b) with only those rights as are granted to all other end users pursuant to the terms and conditions herein. Unpublished-rights reserved under the copyright laws of the United States. Adobe Systems Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, USA. For U.S. Government End Users, Adobe agrees to comply with all applicable equal opportunity laws including, if appropriate, the provisions of Executive Order 11246, as amended, Section 402 of the Vietnam Era Veterans Readjustment Assistance Act of 1974 (38 USC 4212), and Section 503 of the Rehabilitation Act of 1973, as amended, and the regulations at 41 CFR Parts 60-1 through 60-60, 60-250, and 60-741. The affirmative action clause and regulations contained in the preceding sentence shall be incorporated by reference.

Contents
Preface .......................................................................................................................................... 5
What’s in this guide? ..................................................................................................................................................................... 5 Who should read this guide? ..................................................................................................................................................... 5 Related documentation ............................................................................................................................................................... 5

Transitioning the PDF Specification to ISO ............................................................................... 6
Extensions to the PDF specification ........................................................................................................................................ 6 Behavior of PDF consumers that does not support an extension.......................................................................... 6 Subsequent extensions to a BaseVersion ....................................................................................................................... 6 Plans related to the first version of ISO 32000............................................................................................................... 7 Plans related to subsequent versions of ISO 32000 .................................................................................................... 7

Part I: Extensions to the PDF Specification
What’s New................................................................................................................................... 9
Adobe BaseVersion 1.7 and ExtensionLevel 3 ..................................................................................................................... 9 Extension identification......................................................................................................................................................... 9 Bates numbering page artifact ........................................................................................................................................... 9 Features for Architecture, Engineering and Construction ........................................................................................ 9 Accessibility..............................................................................................................................................................................10 Portable collections...............................................................................................................................................................10 Rich media ................................................................................................................................................................................10 Seed values and locking a document for digital signatures ..................................................................................10 Encryption and passwords .................................................................................................................................................10 Barcode form fields ...............................................................................................................................................................11 PDF/A-2 and XML form data ..............................................................................................................................................11 Adobe BaseVersion 1.7 and ExtensionLevel 1 ...................................................................................................................11 PRC in 3D annotations..........................................................................................................................................................11 Other...........................................................................................................................................................................................11

Syntax (Chapter 3 in PDF Reference) ....................................................................................... 13
3.5 Encryption................................................................................................................................................................................13 3.5.1 General Encryption Algorithm................................................................................................................................15 3.5.2 Standard Security Handler .......................................................................................................................................16 3.5.3 Public-Key Security Handlers ..................................................................................................................................21 3.5.4 Crypt Filters....................................................................................................................................................................22 3.6 Document Structure.............................................................................................................................................................23 3.6.1 Document Catalog......................................................................................................................................................23 3.6.2 Page Tree ........................................................................................................................................................................23 3.6.3 Name Dictionary ..........................................................................................................................................................23 3.6.4 Extensions to PDF........................................................................................................................................................23 3.10 File Specifications ...............................................................................................................................................................26 3.10.2 File Specification Dictionaries ..............................................................................................................................26

Graphics (Chapter 4 in PDF Reference) .................................................................................... 27
4.8 Images .......................................................................................................................................................................................27 4.8.4 Image Dictionaries ......................................................................................................................................................27
3

.............. 102 Other Resources.........................................................8 Measurement Properties ............................................7..................................3 Action Types..........................................5 Actions............................................48 8...........................................................................................................55 9.......76 9...........................................................................................................4 Collections..........................................................................................28 8................................7 Tagged PDF......................................................................................................................................................................................................................................................................................7 XFA Forms ..........................................................5 3D Artwork...........................................................5..................28 8...................................................................................................... 100 10..........................................................Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 4 4...........3 3D Views ...............6 Rich Media.....................28 8........................................1 Viewer Preferences........................................................................................................................................................................................................................................6 Persistence of 3D Measurements and Markups ...........................................................................................................55 9............5...............................................................................6 Interactive Forms................48 8.............................................................40 8.................................................................................................................................................................................4.................5................................................................................. 106 Implementation Notes to Adobe Extensions to ISO 32000 .............................................1 3D Annotations ..................................................57 9............................................... sixth edition ........................................................................................ 55 9...................42 8...........................................................................................................................................................................2 3D Streams...............8.........1 RichMedia Annotations................................5..............2 Document-Level Navigation ...................................................................................................................................................40 8...................5.................................................................................................................................................................................................................................... 103 Part II: Reference Errors and Implementation Notes Implementation Notes ............................6.........................................106 Implementation Notes to the PDF Reference........................................................................................................................38 8.........................................................................................................6..............................................................................................................................................................27 Interactive Features (Chapter 8 in PDF Reference) ......................2...............102 Resources from Adobe Systems Incorporated ............................................................................................................9 Form XObjects..............................................49 Multimedia Features (Chapter 9 in PDF Reference)..5..........................................................................................................59 9...........................................3 3D Views (Node Dictionaries).............3 Field Types .............................................................37 8...........................................................56 9......................5 Annotation Types ...........................................................................................6...............................4 Annotations...............................................................................................................133 .........................................................................................................................................................100 10.....................................1 Tagged PDF and Page Content...................... 100 Bibliography ................................43 8........................................................................................................76 Document Interchange (Chapter 10 in PDF Reference).....1 Geospatial Features .....................57 9.... 28 8................................................................. 130 Index ..............................................................................................

and operating system used to create them and of the output device on which they are to be displayed or printed. version 1. The implementation notes are differences between the PDF specification. The next version of this document to be released after ISO 32000 is published will reference specifications in ISO 32000.7. sixth edition. sixth edition.7 Reference ISO 32000 5 .7 Reference and ported into the ISO32000 draft. including the extensions. this document will reference the PDF specification represented by the PDF Reference. Who should read this guide? This guide is intended for developers of applications that consume or produce PDF content. hardware. are available through the Adobe PDF Technology Center (select “PDF Specification. What’s in this guide? This document describes Adobe’s extension and implementation notes relative to the soon-to-be-published ISO 32000. sixth edition. with the exception of ISO 32000. 2006) and the PDF Redaction: Addendum to the PDF Reference.7 (Nov. These documents.Summary of Changes. Adobe plans to submit these extensions to ISO as candidates for inclusion into the next version of the ISO 32000 specification. version 1. The implementation notes are intended for developers who need more detail about the Adobe Acrobat family of products. PDF 1. version 1. sixth edition. ISO version of the PDF Reference.7. For information about PDF specification PDF specification for redaction annotations Corrections to the PDF specification Changes made to content taken from Adobe PDF 1. This document is not yet publicly available. such as Adobe Acrobat. Related documentation The resources in this table can help you understand the material in this document.7 Errata for the PDF Reference. Document management. The extensions are to the PDF document format.7 PDF Redaction: Addendum to the PDF Reference.Preface The Portable Document Format (PDF) is a file format for representing documents in a manner independent of the application software. version 1. Portable document format. Sixth Edition”). sixth edition.7 ISO 32000 . Resource PDF Reference. About the ISO Draft of the PDF 1. version 1. Until ISO 32000 is published. and what is implemented in Adobe PDF applications.

ISO may or may not accept these Adobe extensions. the convention identifies extension levels relative to that base version. which are the PDF Reference.6. the PDF Redaction: Addendum to the PDF Reference. but applications based on earlier versions of PDF can behave reasonably when they encounter newer features that they do not understand. Portable document format. Document management. Consequently.7. sixth edition.1 Document Catalog” on page 23. PDF 1. Additionally. see “3.Transitioning the PDF Specification to ISO Adobe has transferred responsibility for the PDF specification to the International Standards Organization (ISO). sixth edition. Appendix H describes how a PDF consumer application should behave in such cases. such identification is no longer within Adobe’s control. version 1. In other words. The new convention lets companies and other entities identify their own extensions relative to a base version of PDF. For normative information on the use of base versions and extension levels in a PDF document.8 “Extensibility” in the PDF Reference. sixth edition. Adobe identified extensions to the PDF specification with PDF version identifiers. and the Errata for the PDF Reference. this document references the last PDF specifications published by Adobe. As of this document’s publication date. sixth edition. If accepted.7 has not been published. version 1.7 (Nov. Not only can new features be added.2. Subsequent extensions to a BaseVersion Each subsequent company-specific extension level for a particular PDF base version is cumulative.7 describes this behavior as follows: PDF is designed to be extensible. such as PDF 1.7 provides this additional guidance: Both viewer applications and PDF have been designed to enable users to view everything in the document that the viewer application understands and to ignore or inform the user about objects not understood.7. the exact syntax and semantics of the ISO version of these extensions may differ from that described in this guide. Adobe will use the extensions mechanisms defined for ISO 32000-1 by which Adobe and other companies can identify extensions to the PDF specification. version 1. Now that ISO has responsibility for the PDF specification. Extensions to the PDF specification The language extensions described in this guide may be submitted to ISO as proposed changes to the PDF specification. The Section 2. Behavior of PDF consumers that does not support an extension The extension convention also relies on the behavior of PDF consuming applications when they encounter PDF properties they do not recognize. version 1. The decision whether to ignore or inform the user is made on a feature-by-feature basis. As an alternative. PDF-processing applications that support the third extension level for a particular base level shall also support the first and second extension levels. 2006).7. And Appendix H in PDF Reference. 6 . ISO 32000. In the past. It is Adobe’s intent to increment the base version extensions only with major releases of its PDF-processing applications. version 1. sixth edition.

Adobe will continue using 1. Extensions described in a prior release that are not incorporated into ISO 32000 will remain in this document with their original base version and extension level. version 1. This document is available through www.7 as its base version until the second release of ISO 32000. sixth edition. sixth edition.adobe. .7. Extensions described for the 1.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Transitioning the PDF Specification to ISO Plans related to the first version of ISO 32000 7 Plans related to the first version of ISO 32000 Adobe expects that the first version of ISO 32000 will convey the same requirements as the PDF Reference. The third and subsequent releases of ISO 32000 will repeat this pattern. Sixth Edition”). Because of this similarity and to avoid unnecessary confusion. Adobe will use a new base version value that reflects the new Version value specified by that second version of ISO 32000. For information about changes Adobe made to PDF Reference.7 to become the ISO Draft International Standard (DIS).com/go/pdf_developer (select “PDF Specification. version 1.7 base version that are incorporated into the second version of ISO 32000 will not be included in future versions of this document. Plans related to subsequent versions of ISO 32000 After the second version of ISO 32000 is released. see ISO 32000 — Summary of Changes. Features that are included in the second ISO version will henceforth be considered as features of the ISO version and the designation (in the PDF files) as being Adobe extensions will no longer be used.

Part I: Extensions to the PDF Specification 8 .

This capability is a key step in using a PDF document as the primary mechanism for transferring information in manufacturing and AEC workflows.7 and Adobe ExtensionLevel 3 extend the PDF specification with the features introduced here. In one application of this feature. the convention identifies extension levels relative to that base version. facilitating the communication of 3D shape information between users. Additionally. Adobe BaseVersion 1.) Bates numbering page artifact The Bates number page artifact lets PDF processors override the starting point for the Bates Numbering for the pages in a PDF document.) 9 . If the scaling of such a document were changed for printing.5. This feature can be used to enforce default print scaling. (See “TABLE 3. This feature ensures consistent Bates Numbering for pages that were extracted from another PDF document.6 Persistence of 3D Measurements and Markups” on page 59. (See “Table 8. which ensures that the document is printed with the default scaling. consider a PDF document that contains architectural or engineering drawings. Engineering and Construction Enforced viewer preferences Enforced viewer preferences instruct a conforming reader that the user cannot override viewer settings specified in PDF documents. Examples of such viewer preferences are default print scaling value and number of copies. The addition of 3D measurement definitions also lets users more accurately describe 3D data. Extension identification Extension identification lets companies and other entities identify their own extensions relative to a base version of PDF.What’s New This section provides an overview of the extensions to the PDF specification. (See “9.7 and ExtensionLevel 3 The Adobe PDF extensions for BaseVersion 1. Each feature description references the format changes that make the feature possible.) Persistence of 3D measurements and markup 3D measurement and markup data can now be stored in the PDF file. the document may be compromised. (See “TABLE 10.1 Entries in a viewer preferences dictionary” on page 28.) Features for Architecture. The introduction of 3D annotations to the PDF format lets users create views of 3D data to illustrate important 3D features.25 Entries in the catalog dictionary” on page 23.17 Property list entries for artifacts” on page 100.

) The new Colors entry in a collection dictionary (Table 8. which enables video commenting.) Portable collections The following are changes to the PDF language in support of portable collections that use a SWF file-based presentation of the collection contents: ● New entries in the collection dictionary support SWF file-driven layouts of a collection.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 What’s New Accessibility 10 Accessibility A PDF document can specify the order in which user tabs cause attention to move from one annotation to the next.2. audio. ● ● ● ● Rich media There is a new annotation subtype of RichMedia.6 of Section 8. This enhancement provides a details view or tile view with either a horizontal or vertical split.) Encryption and passwords For Acrobat 9.264 format.4.) Seed values and locking a document for digital signatures Seed values specify constraining information that are used at the time a digital signature is applied.) Introduction of a Thumb entry to the file specification dictionary. The Navigator entry is an indirect reference to a navigator dictionary.) The entry is used to create thumbnail images in conjunction with portable collections that use navigators. The rich media annotation incorporates the existing 3D annotation structure to support multiple multimedia file assets. actions can be linked to video chapter points.0 has two new seed values. Additionally. (See “Signature Fields” on page 43.) The rich media annotation means that Flash applications. There are three parts to the new encryption and password design: . a new entry in the signature field lock dictionary supports the locking after signature feature.41 on page 26. AppearanceFilter filters signature appearances that can be used when signing or certifying a document by name. LockDocument supports controlling the user interface for locking documents after the signature is applied. (See “TABLE 3. see “Navigators” on page 34. (See Table 8. Finally.6 on page 29. video. which contains information about the layout to be used to present the collection. For information about the navigator dictionary.27 Entries in a page object” on page 23.6a on page 31). In addition. and other multimedia can be attached to a PDF document. (See Table 8. encryption of data uses the AES-256 algorithms. The new constructs allow a two-way scripting bridge between the Flash player and Acrobat.8 on page 30.6 on page 29) takes as its value a collection colors dictionary (Table 8. (See the section on “Rich Media” beginning on page 76. Acrobat 9.0. (See Table 8. (See Table 3.4 on page 29.) The SWF file that manages the presentation is called a navigator.5 “Annotation Types” on page 38. a new password algorithm supports the use of Unicode-based passwords and passphrases. The CompressedSize value of the Subtype key in the collection field dictionary is used to display the compressed file sizes for embedded files. including Flash video and compatible variations on the H. Users can decouple the splitter orientation from the View key in a collection dictionary. which is used to specify a list of colors that a navigator should use in its layout of a portable collection. There is support for generalized linking of a Flash application state to a comment or view. (See Section 8.

This feature affects the bibliography. (See Table 8.) This entry can be used to save XML form data within a PDF/A-2 conforming file. Universal 3D file format. PRC in 3D annotations Starting with Acrobat 8.7 and ExtensionLevel 1 Acrobat 8.1.39a on page 46. which is available at the Adobe PDF Technology Center. A new Crypt Filter Version code (5) enables 256-bit (32-byte) keys and does not try to mix the Object ID with the encryption key. These extensions were originally specified in Acrobat Implementation of the PDF Specification. ● See “3.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 What’s New Barcode form fields 11 ● ● A new AES variant (AESV3) uses AES-256 encryption. The barcodes feature adds an entry to the widget annotation dictionary. is added to the names dictionary. Select the PDF Specification link. PDF/A-2 and XML form data A new entry.1 PDF extensions were finalized in April 2007 and are included in the Adobe PDF extensions for Adobe BaseVersion 1. 3rd Edition. edition 1.5 Encryption” on page 13.1 extended the PDF language for several 3D-related features. (See Table 8. XFAResources.) This entry takes as its value a PaperMetaData generation parameters dictionary.) Adobe BaseVersion 1. U3D is another standard for 3D representations. see the “Barcode Fields” on page 45. Acrobat 8. and TABLE 9.39 on page 39.) .) For more information about barcode form fields. (See Table 3. The Acrobat 8. (See “Bibliography” on page 102. PRC is a new highly-compressed CAD visualization format.6 and later provide support for ECMA-363.) Other Universal 3D file format PDF 1.39 Entries in a 3D view dictionary on page 57.7 and ExtensionLevel 1. These extensions occurred before the BaseVersion and ExtensionLevel properties were established. 3D annotations can specify streams that conform to the PRC file format.) It also adds an entry to the form field dictionary.28 on page 23.1 extends this support to ECMA-363. Acrobat 8. (See Table 8. Universal 3D file format. A new Crypt Revision value (5) activates a new Password algorithm. (See “Incorporation of XFA Datasets into a PDF/A-2 Conforming File” on page 48. Barcode form fields The PDF language additions that support barcode form fields are now documented for Adobe extension level 3.1 introduced extended existing PDF features to add support for PRC and to extend support for U3D.47 Entries in a 3D node dictionary on page 58.39b on page 46. (See TABLE 9.

5 and 2. (See “Table 8.) .73 Attributes of the <body> element” on page 42.6.1 extends support for the rich text conventions described in XML Forms Architecture (XFA) versions 2.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 What’s New Other 12 Support for rich text conventions Acrobat 8.

modify the paragraph as shown below where unchanged content is shown in gray. determines the length of the encryption key.7. These documents differ as described in About the ISO Draft of the PDF 1.5. version 1. Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. the phrase BaseVersion 1. in specifying which algorithm to use.5 Encryption On page 116.4.5. on which the encryption (and decryption) of data in a PDF file is based. In PDF 1. For V values 2 and 3. Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3 throughout this document. 13 . For extension level 3.7 and in ISO 32000 (Document management .PDF 1. The V entry. The latter document is the version of the PDF specification that has been ratified by the ISO. a value of 5 for V permits the specification of crypt filters with a key length of 256 bits (32 bytes). a value of 4 for V permits the security handler to use its own encryption and decryption algorithms and to specify crypt filters with a key length of 128 bits (16 bytes) to use on specific streams (see Section 3.7).Syntax (Chapter 3 in PDF Reference) This section describes extensions to the PDF specification contained in the PDF Reference.7 Reference. sixth edition. “Crypt Filters”). 3. For convenience. the Length entry specifies the exact length of the encryption key.Portable document format .

(See implementation note 23 in Appendix H. or 5 for ExtensionLevel 3) The name of the crypt filter that is used by default when decrypting streams. using the rules specified by the CF. and StrF entries using algorithm 3. using this crypt filter. see implementation note 22 in Appendix H. StmF.23. but permitting encryption key lengths greater than 40 bits. and whose use is strongly discouraged.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3. “Cross-Reference Streams”) or streams that have a Crypt entry in their Filter array (see Table 3. .7. except for cross-reference streams (see Section 3.1 on page 119.4) Algorithm 3. and EFF) is to qualify them for use when V is 5. (ExtensionLevel 3) The security handler defines the use of encryption and decryption in the document. are decrypted by the security handler. Default value: Identity. the only change to the other listed entries (StmF.5) The security handler defines the use of encryption and decryption in the document. and StrF entries using algorithm 3.) StmF name (Optional. Unchanged text is shown in gray. Algorithm 3. TABLE 3. The V entry has a new value of 5. 1. The default value if this entry is omitted is 0. 3. meaningful only when the value of V is 4. An algorithm that is undocumented and no longer supported. The name must be a key in the CF dictionary or a standard crypt filter name specified in Table 3.1 with a key length of 128 bits. 2.5 Encryption 14 Modify Table 3.18 Entries common to all encryption dictionaries KEY V TYPE number DESCRIPTION (Optional but strongly recommended) A code specifying the algorithm to be used in encrypting and decrypting the document: 0. see below. StmF. using the rules specified by the CF.4) An unpublished algorithm that permits encryption key lengths ranging from 40 to 128 bits.5).1. Old files may use this value but no new files should be written using 0. (PDF 1. (PDF 1.1a with a key length of 256 bits. but a value of 1 or greater is strongly recommended. StrF.18 as shown below where only entries that changed are listed in the table.4. (PDF 1. 5. with an encryption key length of 40 bits. 4. All streams in the document.

algorithm 3. or 5 for ExtensionLevel 3) The name of the crypt filter that is used when decrypting all strings in the document. Because the RC4 algorithm and AES algorithms are symmetric. Default value: Identity. or 5 for ExtensionLevel 3) The name of the crypt filter that should be used by default when encrypting embedded file streams.1 General Encryption Algorithm On page 119.) Applications should respect this value when encrypting embedded files.1 is used.5. the stream should be encrypted using the default stream crypt filter specified by StmF 3. For Encrypt version 5 (extension level 3).7). it must correspond to a key in the CF dictionary or a standard crypt filter name specified in Table 3.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3. For Encrypt versions 1-4. Encryption of data uses one of two algorithms. this same sequence of steps can be used both to encrypt and to decrypt data. PDF’s standard encryption methods also make use of the MD5 message-digest algorithm for key generation purposes (described in Internet RFC 1321. insert Algorithm 3. modify the paragraph that begins with “PDF’s standard encryption methods also make use…” as well as the paragraph that follows as shown below. The difference is that algorithm 3.1). (See implementation note 24 in Appendix H. except for embedded file streams that have their own crypt filter specifier. If this entry is not present. This entry is provided by the security handler.1a uses the starting key directly and does not modify the key at all.1a is used only with the AES algorithm and 256-bit keys. The MD5 Message-Digest Algorithm. Unchanged content is shown in gray. its use in the encryption of data is always the same (see Algorithm 3. and the embedded file stream does not contain a crypt filter specifier. Algorithm 3.5. meaningful only when the value of V is 4. Different security handlers compute the encryption key using their own mechanisms. Regardless of how the key is computed. Encrypt version 5 does not use MD5. see the Bibliography).1a is used. The encryption of data in a PDF file is based on the use of an encryption key computed by the security handler.18 Entries common to all encryption dictionaries KEY StrF TYPE name DESCRIPTION (Optional. meaningful only when the value of V is 4. The name must be a key in the CF dictionary or a standard crypt filter name specified in Table 3. introduced in extension level 3. algorithm 3. For Encrypt versions 1-4 (through PDF version 1. .23. EFF name (Optional.1.1a. to be used when the value of the V key is 5.23.1 General Encryption Algorithm 15 TABLE 3. One sentence is struck out and replaced by another to include Encrypt version 5. Following Algorithm 3.

4. Use the 32-byte file encryption key for the AES-256 symmetric key algorithm. The output is the encrypted data to be stored in the PDF file.19 shows the encryption dictionary entries for the standard security handler (in addition to those in Table 3. the standard security handler supports crypt filters (see Section 3. Standard Encryption Dictionary Table 3. Use the AES algorithm in Cipher Block Chaining (CBC) mode.19 Additional encryption dictionary entries for the standard security handler KEY R TYPE number VALUE (Required) A number specifying which revision of the standard security handler should be used to interpret this dictionary: ● 2 if the document is encrypted with a V value less than 2 (see Table 3.18) and does not have any of the access permissions set (by means of the P entry. which requires an initialization vector. to Table 3. TABLE 3.2 Standard Security Handler Revise the first paragraph on page 122 to read as follows. The support is limited to the Identity crypt filter (see Table 3. the filter CFM value shall be AESV3 (AES-256). “Crypt Filters”).5.5. Add three new entries. along with the string or stream data to be encrypted. or has any “Revision 3 or greater” access permissions set 4 if the document is encrypted with a V value of 4 5 (ExtensionLevel 3) if the document is encrypted with a V value of 5 ● ● .23) and crypt filters named StdCF whose dictionaries contain a CFM value of V2 or AESV2 and an AuthEvent value of DocOpen. 3. If revision version 4 or 5 is specified.2 Standard Security Handler 16 Algorithm 3. OE.18).1a Encryption of data using the AES algorithm 1.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3.5.20 ● 3 if the document is encrypted with a V value of 2 or 3. The block size parameter is set to 16 bytes. and the initialization vector is a 16-byte random number that is stored as the first 16 bytes of the encrypted stream or string.19. the filter CFM value may be V2 (RC4) or AESV2 (AES-128). For version 4. For version 5. UE and Perms. Unchanged content is shown in gray. below) that are designated “Revision 3 or greater” in Table 3. and modify the other entries as shown.

see “Password Algorithms” on page 126. the R entry described above. based on the owner and user passwords. that is used in computing the encryption key and in determining whether a valid owner password was entered. The value for R is 5: (ExtensionLevel 3) A 48-byte string. that is used in determining whether to prompt the user for a password and. the R entry described above. . required if R is 5) A 32-byte string. U string (Required) A string based on the user password. UE string (ExtensionLevel 3. see “Password Algorithms” on page 126. if so. based on the owner and user passwords. that is used in computing the encryption key. see “Encryption Key Algorithm” on page 124 and “Password Algorithms” on page 126. For more information. whether a valid user password was entered. based on the user password. based on the user password. For more information. The value of the string depends on the value of the revision number. For more information. The value of the string depends on the value of the revision number.20). that is used in determining whether to prompt the user for a password and. The value of R is 4 or less: A 32-byte string. based on the user password. if so. For more information. The value of R is 4 or less: A 32-byte string. that is used in computing the encryption key. The value for R is 5: (ExtensionLevel 3) A 48-byte string.19 Additional encryption dictionary entries for the standard security handler KEY O TYPE string VALUE (Required) A string used in computing the encryption key.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3.5.2 Standard Security Handler 17 TABLE 3. see “Password Algorithms” on page 126. required if R is 5) A 32-byte string. P integer (Required) A set of flags specifying which operations are permitted when the document is opened with user access (see Table 3. based on both the owner and user passwords. whether a valid user or owner password was entered. that is used in computing the encryption key and in determining whether a valid owner password was entered. OE string (ExtensionLevel 3.

Applications should respect this value.3 shows how the O value is computed. see “Password Algorithms” on page 126.2 Computing an encryption key 1. Pass the value of the encryption dictionary’s O entry to the MD5 hash function.2. For revision 5. encrypted with the file encryption key.2a. low-order byte first. (Revision 4 or greater) If document metadata is not being encrypted. Given a password string. PDF 1. the algorithm is as shown in Algorithm 3.2. see Table 3. and then to PDFDocEncoding for backward compatibility. 5. first convert to a codepage encoding. Default value: true. The password string is generated from OS codepage characters by first converting the string to PDFDocEncoding. 8.5. (See implementation note 26 in Appendix H. If the input is Unicode. (Algorithm 3. Treat the value of the P entry as an unsigned 4-byte integer and pass these bytes to the MD5 hash function.) 6. (Revision 3 or greater) Do the following 50 times: Take the output from the previous MD5 hash and pass the first n bytes of the output as input into a new MD5 hash. 2. 3. meaningful only when the value of V is 4 or 5. Algorithm 3. the algorithm is as shown in Algorithm 3. For more information.13 on page 97) to the MD5 hash function. “Metadata Streams”) is to be encrypted. EncryptMetadata boolean (Optional. required if R is 5) A16-byte string. For revision 4 and earlier. that contains an encrypted copy of the permission flags.19 Additional encryption dictionary entries for the standard security handler KEY Perms TYPE string VALUE (ExtensionLevel 3. Pass the first element of the file’s file identifier array (the value of the ID entry in the document’s trailer dictionary.) 4.5) Indicates whether the document-level metadata stream (see Section 10. Initialize the MD5 hash function and pass the result of step 1 as input to this function. where n is the number of bytes of the encryption key as defined by the value of the encryption dictionary’s Length entry. Encryption Key Algorithm Modify the first paragraph of this section as shown. 7. As noted earlier. one function of a security handler is to generate an encryption key for use in encrypting and decrypting the contents of a document. .2 Standard Security Handler 18 TABLE 3.2. Finish the hash. pass 4 bytes with the value 0xFFFFFFFF to the MD5 hash function. the standard security handler computes an encryption key.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3.

for revision 3 or greater. but the computation of the O (owner password) and U (user password) entries requires further explanation.The computation of the values for the O (owner password) and U . The 32-byte result is the key used to decrypt the 32-byte OE string using AES-256 in CBC mode with no padding and an initialization vector of zero. They should match the value in the P key.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3.2a Computing an encryption key To understand the algorithm below. The password string is generated from Unicode input by processing the input string with the SASLprep (IETF RFC 4013) profile of stringprep (IETF RFC 3454). The next 8 bytes are called the Validation Salt. Algorithm 3. 2. concatenated with the 48-byte U string. Truncate the UTF-8 representation to 127 bytes if it is longer than 127 bytes. Test the password against the owner key by computing the SHA-256 hash of the UTF-8 password concatenated with the 8 bytes of owner Validation Salt. ‘b’. The final 8 bytes are called the Key Salt. Insert Algorithm 3. Bytes 0-3 of the decrypted Perms entry. treated as a little-endian integer. Length. The 32-byte result is the file encryption key. R.2 Standard Security Handler 19 9.5. and P entries are straightforward. it is necessary to treat the O and U strings in the Encrypt dictionary as made up of three sections. If the 32-byte result matches the first 32 bytes of the O string. Decrypt the 16-byte Perms string using AES-256 in ECB mode with an initialization vector of zero and the file encryption key as the key. Compute an intermediate user key by computing the SHA-256 hash of the UTF-8 password concatenated with the 8 bytes of user Key Salt. the standard security handler must provide the contents of the encryption dictionary (Table 3.18 on page 116 and Table 3. 4. The first 32 bytes are a hash value (explained below). where n is always 5 for revision 2 but. Password Algorithms Revise the opening paragraphs of this section as indicated below.19 on page 122). 5. In addition to the encryption key. 3. This algorithm.3 through 3.1 on page 119. are the user permissions. Parts of this algorithm are also used in the algorithms described below. Verify that bytes 9-11 of the result are the characters ‘a’. depends on the value of the encryption dictionary’s Length entry. and then converting to a UTF-8 representation. The values of the Filter. produces the encryption key used to encrypt or decrypt string and stream data according to Algorithm 3. Algorithms 3. Compute an intermediate owner key by computing the SHA-256 hash of the UTF-8 password concatenated with the 8 bytes of owner Key Salt. The 32-byte result is the file encryption key. Set the encryption key to the first n bytes of the output from the final MD5 hash. this is the user password. If the 32 byte result matches the first 32 bytes of the U string. The 32-byte result is the key used to decrypt the 32-byte UE string using AES-256 in CBC mode with no padding and an initialization vector of zero. Test the password against the user key by computing the SHA-256 hash of the UTF-8 password concatenated with the 8 bytes of user Validation Salt. this is the owner password. ‘d’.5 show how the values of the owner password and user password entries are computed (with separate versions of the latter depending on the revision of the security handler). V. when applied to the user password string.2a as shown below. concatenated with the 48-byte U string. 1.

Generate 16 random bytes of data using a strong random number generator.8. Algorithm 3. Compute the 32-byte SHA-256 hash of the password concatenated with the Owner Key Salt and then concatenated with the 48-byte U string as generated in Algorithm 3.3–3. U.8 Computing the encryption dictionary’s U (user password) and UE (user encryption key) values 1. Algorithms 3. Using this hash as the key.5. Algorithms 3. Algorithms 3. Using this hash as the key. encrypt the file encryption key using AES-256 in CBC mode with no padding and an initialization vector of zero. The 48-byte string consisting of the 32-byte hash followed by the Owner Validation Salt followed by the Owner Key Salt is stored as the O key.13 show how to determine if a revision 5 password is valid. and are limited to characters in the PDFDocEncoding character set (see Appendix D). the result of running the password algorithm was exactly the file encryption key. For the algorithms below.5 show how the values of the owner password and user password are computed for revision 4 and earlier.3 through 3. Then insert the following paragraphs. and the O. All passwords for revision 5 are based on Unicode. Generate 16 random bytes of data using a strong random number generator. Algorithms 3. The 48-byte string consisting of the 32-byte hash followed by the User Validation Salt followed by the User Key Salt is stored as the U key. convert the password string to UTF-8 encoding. Compute the 32-byte SHA-256 hash of the password concatenated with the User Validation Salt. Compute the 32-byte SHA-256 hash of the password concatenated with the Owner Validation Salt and then concatenated with the 48-byte U string as generated in Algorithm 3. The second 8 bytes are the Owner Key Salt.10 show how the values for revision 5 are computed. These algorithms and accompanying text remain unchanged. 2.7 show how to determine if a password is valid. UE (user encryption key) and Perms (permissions) values for encryption revision 5 require more explanation.8. 2. the file encryption key is decoupled from the password algorithm to make the owner and user keys independent.10 Computing the encryption dictionary’s Perms (permissions) value Fill a 16-byte block as follows: .Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3. The first 8 bytes are the User Validation Salt. Algorithm 3. The resulting 32-byte string is stored as the OE key. encrypt the file encryption key using AES-256 in CBC mode with no padding and an initialization vector of zero.6 and 3. Next. and then truncate to the first 127 bytes if the string is longer than 127 bytes. The first 8 bytes are the Owner Validation Salt.8 through 3.2 Standard Security Handler 20 (user password) entries for encryption revision 4 and earlier. Compute the 32-byte SHA-256 hash of the password concatenated with the User Key Salt. first generate a 256-bit (32 byte) encryption key for the file using a strong random number generator. The resulting 32-byte string is stored as the UE key. In revision 5. In revision 4 and earlier.11 through 3. Following the above paragraphs comes the listing of algorithms 3. Passwords for revision 4 and earlier are up to 32 characters in length. The second 8 bytes are the User Key Salt. Algorithm 3. Preprocessing of a user-entered password consists first of normalizing its representation by applying the “SASLPrep” profile (see RFC 4013) of the “stringprep” algorithm (see RFC 3454) to the supplied password using the Normalize and BIDI options.9 Computing the encryption dictionary’s O (owner password) and OE (owner encryption key) values 1.7. OE (owner encryption key).

6. using the file encryption key as the key. 5. Test the password against the user key by computing the SHA-256 hash of the UTF-8 password concatenated with the 8 bytes of User Validation Salt. 4. The encryption key that is used by Algorithm 3. Set byte 8 to the ASCII value 'T' or 'F' according to the EncryptMetadata Boolean. Bytes 0-3 of the decrypted Perms entry. treated as a little-endian integer. in order: . If the 32 byte result matches the first 32 bytes of the O string. ‘b’.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3.13 Validating the Permissions 1. Algorithm 3.5.1 is calculated by means of an a SHA-1 message digest operation for a key length of 128 bits or a SHA-256 digest operation for a key length of 256 bits that digests the following data. Test the password against the user key by computing the SHA-256 hash of the UTF-8 password concatenated with the 8 bytes of Owner Validation Salt and the 48 byte U string. and checked for validity when the file is opened. Verify that bytes 9-11 of the result are the characters ‘a’. They should match the value in the P key. Algorithm 3. Decrypt the 16 byte Perms string using AES-256 in ECB mode with an initialization vector of zero and the file encryption key as the key. 3. are the user permissions.3 Public-Key Security Handlers 21 1. Byte 8 should match the boolean value of the EncryptMetadata key. Set bytes 12-15 to 4 bytes of random data. ‘d’. Set bytes 9-11 to the ASCII characters 'a'. which will be ignored. Extend the permissions (contents of the P integer) to 64 bits by setting the upper 32 bits to all 1’s. low order byte first. The result (16 bytes) is stored as the Perms string.) 2.3 Public-Key Security Handlers Public-Key Encryption Algorithms On page 131. 'd'. Record the 8 bytes of permission in the bytes 0-7 of the block.5. (This allows for future extension without changing the format. 'b'. Encrypt the 16-byte block using AES-256 in ECB mode with an initialization vector of zero. If the 32-byte result matches the first 32 bytes of the U string. modify the paragraph shown below by inserting the indicated phrase.12 Authenticating the Owner Password 1. this is the user password. Algorithm 3. this is the user password. 3.11 Authenticating the User Password 1.

using the AES-128 algorithm in Cipher Block Chaining (CBC) with padding mode with a 16-byte block size and an initialization vector that is randomly generated and placed as the first 16 bytes in the stream or string. The key size (Length) shall be 128 bits.1a. the application may ask once for this encryption key and cache the key for subsequent use for streams that use the same crypt filter. When the value is V2. AESV2 (PDF 1. Unchanged content is shown in gray.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3. if any.22 Entries common to all crypt filter dictionaries KEY CFM TYPE name VALUE (Optional) The method used. by the consumer application to decrypt data.) V2 The application asks the security handler for the encryption key and implicitly decrypts data with Algorithm 3. (See implementation note 30 in Appendix H.4 Crypt Filters Modify Table 3. .4 Crypt Filters 22 3. or AESV3. AESV3 (ExtensionLevel 3) The application asks the security handler for the encryption key and implicitly decrypts data with Algorithm 3. Only the values listed here are supported.5.18 is 2 or 3. Applications that encounter other values should report that the file is encrypted with an unsupported algorithm. Default value: None.5. using the RC4 algorithm.6) The application asks the security handler for the encryption key and implicitly decrypts data with Algorithm 3.1.22 where only changed entries are shown. Therefore. TABLE 3. AESV2. The following values are supported: None The application does not decrypt data but directs the input stream to the security handler for decryption. there must be a one-to-one relationship between a crypt filter name and the corresponding encryption key.1. Length integer (Required if the value for the V key in Table 3. using the AES-256 algorithm in Cipher Block Chaining (CBC) with padding mode with a 16-byte block size and an initialization vector that is randomly generated and placed as the first 16 bytes in the stream or string. Note: Security handlers can define their own use of the Length entry but are encouraged to use it to define the bit length of the encryption key. It must be a multiple of 8 in the range of 40 to 128 256. optional otherwise) The bit length of the encryption key. The key size (Length) shall be 256 bits.

The presence of the extension dictionary in a document indicates . “Annotations” for details. Regarding annotations array order. 3.3 “Name Dictionary.2 Page Tree Add new values to the value for the Tabs key in Table 3. (See “Incorporation of XFA Datasets into a PDF/A-2 Conforming File” on page 48.” Beginning with BaseVersion 1. C (column order).3 Name Dictionary Add the new entry XFAResources to Table 3. Table 3. ExtensionLevel 3) A name tree mapping name strings to streams that contain the <xfa:datasets> element of the XFA.25a on page 24 describes the entries in the extensions dictionary.6. TABLE 3.25 Entries in the catalog dictionary KEY Extensions SUBTYPE dictionary DESCRIPTION (ExtensionLevel 3) An extensions dictionary representing information about the PDF extensions that this document may contain. see implementation note E-17.4 Extensions to PDF Add this new section (including the above title) after Section 3.27 Entries in a page object KEY Tabs TYPE name VALUE (Optional.27.6.1 Document Catalog Add the following new entry after the Version entry in Table 3.28.) 3.25 TABLE 3. and S (structure order).6. page 132.7. the extensions dictionary lets developers designate that a given document contains extensions to PDF.6 Document Structure 23 3. See Section 8.6. PDF 1. 3.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3.6.28 Entries in the name dictionary KEY XFAResources TYPE dictionary VALUE (Optional. TABLE 3.6 Document Structure 3.4. Beginning with ExtensionLevel 3.5) A name specifying the tab order that shall be used for annotations on the page. The possible values shall be R (row order). Unchanged text is shown in gray. the possible values also include A (annotations array order) and W (widget order).

6. The intent of this dictionary is to enable developers of PDF-producing applications to identify company-specific specifications (such as this one) that PDF-consuming applications use to interpret the extensions. case-sensitive prefix that identifies a company or other entity. shall be Extensions for an extensions dictionary.12. Additionally.com/go/ISO32000Registry Table 3. (See Table 3. version 1.com/go/ISO32000Registry Select from the Prefix Registry link in the Related Resources pane. “Extensions Dictionary. This prefix is used for company-specific version identifiers. ISO provides the prefix name registry.) The extensions dictionary is part of ISO 32000 (See Section 7. The prefix registry is used to designate a 4-character. The prefix name registry is available at http://www.”) TABLE 3. The extensions dictionary enables developers to identify their own extensions relative to a base version of PDF. the convention identifies extension levels relative to that base version.25a Entries in the extensions dictionary KEY Type SUBTYPE name dictionary DESCRIPTION (Optional) The type of PDF object that this dictionary describes.25b Entries in a developer extensions dictionary” on page 25. ● To avoid collisions over company names and company-specific extension names. . Additionally. sixth edition.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3. See “Table 3.7. The intent of the extensions convention is two-fold: ● Enable developers of PDF-producing applications to identify the use of company-specific extensions they have added to a PDF document and to associate those extensions with their own publicly-available specifications. these prefixes are used to create second-class names of the form ACME_aPropertyName. where each Prefix name entry is a registered prefix.adobe. For information about prefix names. see Appendix E of the PDF Reference. This registry is available from the Prefix Registry link in the Related Resources panel at the following Web page: http://www.25 on page 23. The extensions dictionary is the value of the Extensions entry in the document catalog.adobe.4 Extensions to PDF 24 that it may contain developer-specific PDF properties that extend a particular base version of the PDF specification.25a shows the entries in an extensions dictionary. Prefix name A developer extensions dictionary representing the extensions added by a developer. Enable developers of PDF-consuming applications to determine which extensions are present in a PDF document and to associate those extensions with the specifications that describe them.

(Required) A name that designates a version of the PDF specification and that is syntactically consistent with the Version key in the Catalog entry. This is because it reflects the version of the standard that is extended and not the version of this particular file. The initial line in the file or in the Catalog.25b shows the entries in a developer extensions dictionary. It may also contain MyCo extension number 1002. The interpretation of this value is defined by the developer.0. the value 100 could represent 1. which is relative to PDF version 1. The value of ExtensionLevel for a particular BaseVersion value shall increase over subsequent extensions.7 <</Type /Catalog /Extensions <</ACME . or as supplied by the Version key in the Catalog.4 Extensions to PDF 25 Table 3. will be DeveloperExtensions for a developer extensions dictionary.) The name value 1. The BaseVersion value may differ from the version number on the header line. BaseVersion name ExtensionLevel integer (Required) An integer that is used in conjunction with the associated BaseVersion.6. version 1. For example. %PDF 1. Note: Developers can designate lower-order digits to represent sub-levels.7 /ExtensionLevel 3 >> >> >> The PDF document that contains the following segment may contain ACME extension number 4.7 <</Type /Catalog /Extensions <</ADBE <</BaseVersion /1. %PDF 1.7 designates PDF version 1.7.7. sixth edition. The PDF document that contains the following segment may contain the Adobe-specific extensions relative to PDF version 1. or the value 101 could represent 1. Table 3. if present.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3. which is relative to PDF version 500 (a hypothetical PDF version number).1.7.6. (See Section 3.1.25b Entries in a developer extensions dictionary KEY Type SUBTYPE name VALUE (Optional) The type of PDF object that this dictionary describes. Note: The version in a PDF file can be specified in two places. as defined in PDF Reference.7 available from the Adobe PDF Technology Center.

41.3.2 File Specification Dictionaries The following entry is added to the file specification dictionary.2.”) The Thumb entry is used primarily in conjunction with files embedded in portable collections that use a navigator. ExtensionLevel 3) A stream object defining the thumbnail image for the file specification. TABLE 3.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Syntax (Chapter 3 in PDF Reference) 3. (See Section 8.10. see “Navigators” on page 34. it is extensible to any other feature that may require a thumbnail image representation of a file specification.10 File Specifications 3. “Thumbnail Images.7 /ExtensionLevel 4>> /MyCo << /BaseVersion /500 /ExtensionLevel 1002>> >> >> 3. Table 3.10 File Specifications 26 << /BaseVersion /1. . For information about navigators.41 Entries in a file specification dictionary KEY Thumb TYPE stream VALUE (Optional. However.

45 Additional entries specific to a type 1 form dictionary KEY Measure TYPE dictionary dictionary VALUE (Optional.9 Form XObjects 4. See Section 8.Portable document format .8.9. to Table 4. See Section 8.1 Geospatial Features on page 49. PtData 27 . ExtensionLevel 3) A measure dictionary (see Table 8. Note: This guide uses italics to identify information not intended for inclusion in the PDF specification.7.110. TABLE 4.39 Additional entries specific to an image dictionary KEY Measure TYPE dictionary dictionary VALUE (Optional.4 Image Dictionaries Add new entries.39 in support of geospatial content. These documents differ as described in About the ISO Draft of the PDF 1. Measure and PtData. 4. ExtensionLevel 3) A point data dictionary (see Table 111d.1 Form Dictionaries Add new entries. For convenience. version 1. The latter document is the version of the PDF specification that has been ratified by the ISO.7). (Optional. Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3 throughout this document.Graphics (Chapter 4 in PDF Reference) This section describes extensions to the PDF specification contained in the PDF Reference.1 Geospatial Features on page 49. sixth edition. PtData 4. page 49) that specifies the scale and units that apply to the image.7 Reference.PDF 1.110. Measure and PtData. (Optional. TABLE 4. page 53) that specifies the extended geospatial data that applies to the image. page 49) that specifies the scale and units that apply to the form.7 and in ISO 32000 (Document management .8. to Table 4.45 in support of geospatial content. ExtensionLevel 3) A point data dictionary (see Table 111d. ExtensionLevel 3) A measure dictionary (see Table 8.8.8 Images 4. the phrase BaseVersion 1. page 53) that specifies the extended geospatial data that applies to the form.

sixth edition.1. 8. Table 8. add the following paragraph and table. and before Section 8.2.7 Reference. Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3 throughout this document.7 and in ISO 32000 (Document management . version 1. Table 8.1) specifies a valid value other than AppDefault. For convenience.1 Entries in a viewer preferences dictionary KEY Enforce TYPE VALUE array of names (Optional.1a Names defined for an Enforce array NAME PrintScaling DETAILS (Optional.7). 8.Portable document format . ExtensionLevel 3) This name may appear in the Enforce array only if the corresponding entry in the viewer preferences dictionary (Table 8.PDF 1.1a Names defined for an Enforce array specifies valid names. 28 .1.2. Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. After Table 8.” insert the two paragraphs below.Interactive Features (Chapter 8 in PDF Reference) This section describes extensions to the PDF specification contained in the PDF Reference.1 Viewer Preferences Add the new Enforce entry in Table 8. Table 8. Future additions to this table should be limited to keys in the viewer preferences dictionary with the following qualities: ● ● Can be assigned values (default or specified) that cannot be used in a denial-of-service attack Have default values that cannot be overridden using the application user interface Table 8. The latter document is the version of the PDF specification that has been ratified by the ISO. the phrase BaseVersion 1. ExtensionLevel 3) Viewer preference settings that may be enforced by conforming readers and that will not be overridden by subsequent selections in the application user interface.1a shows the only valid name that can appear in an Enforce array.7.4 Collections Following the paragraph (in the PDF Reference) that begins with “The file attachments comprising a collection.2 Document-Level Navigation 8. These documents differ as described in About the ISO Draft of the PDF 1.

A conforming application should store data required by the welcome page and header in the collection resources name tree. H The collection view is initially hidden. (Optional. The SWF file that manages the collection presentation is called a navigator. The collection dictionary contains some entries that support navigators.6 Entries in a collection dictionary KEY View TYPE name VALUE (Optional) The initial view. ExtensionLevel 3) An indirect reference to the navigator dictionary that describes the navigator that provides the collection view. Resources.2. or presentation. Default value: D Navigator dictionary (Required if the value of View is C. ExtensionLevel 3) An indirect reference to a name tree. TABLE 8. of the collection contents.6 in support of portable collections that use navigators. The View entry of Table 8. This mode provides the most information to the user. with all information in the Schema dictionary presented in a multi-column format. mapping name strings to streams for named resources used by SWF file-based aspects of the collection presentation other than navigators. The Navigator entry is an indirect reference to a navigator dictionary that contains a reference to the SWF file that describes the layout.6 has an additional value of C. without preventing the user from obtaining a file list via explicit action. The following values are valid: D The collection view is presented in details mode.4 Collections 29 Beginning with extension level 3.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. Folders. and unchanged content is shown in gray. See “TABLE 8. See the discussion in “Resources name tree” on page 36.6d Entries in a navigator dictionary” on page 34. Resources name tree . with each file in the collection denoted by a small icon and a subset of information from the Schema dictionary. C (ExtensionLevel 3) The collection view is presented by a custom navigator. The value of the Colors entry is a collection colors dictionary that specifies a suggested set of colors for use by a collection navigator. and Split to Table 8. page 130. This mode provides top-level information about the file attachments to the user. a portable collection can include a SWF file that creates an interactive layout. T The collection view is presented in tile mode. Add the entries Navigator. For more information about navigators. The Resources entry is an indirect reference to a name tree that can describe the content and display of a header and welcome page of a portable collection. See implementation note E-1. Colors. see “Navigators” on page 34. The Folders entry is an indirect reference to the root folder of the collection’s folder structure.

See “TABLE 8. the preferred orientation is determined by the value of the View key.10. No splitter is used if the View key has a value of H. This value is used by portable collections to display the compressed size of embedded files. and the two values shall be identical.8 Entries in a collection field dictionary KEY Subtype TYPE name VALUE CompressedSize (Optional.) There is no requirement. ExtensionLevel 3) A collection split dictionary that specifies the orientation of the splitter bar.4.3. a set of colors that should be used by the navigator for its presentation. ExtensionLevel 3) A collection colors dictionary specifying a suggested set of colors for use by a collection navigator.8. however. (See the Acrobat ActionScript API Reference in the Bibliography. ExtensionLevel 3) An indirect reference to a folder dictionary that is the single common ancestor of all other folders in a portable collection. as identified by the Length entry in the embedded filestream dictionary (see Section 3. A value of D (or no value) indicates a horizontal orientation.6b Entries in a collection split dictionary” on page 31.navigatorColorPalette provides access to a user-specified color theme or palette. TABLE 8. If Split is not present. (Optional. See “TABLE 8. while a value of T indicates a vertical orientation. Add the next three tables to the end of Section 8.6a Entries in a collection colors dictionary” on page 31.4 Collections 30 TABLE 8. The ActionScript property INavigatorHost.6 Entries in a collection dictionary KEY Colors TYPE dictionary VALUE (Optional.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. .2. See “TABLE 8. Note: A navigator accesses the colors dictionary through the Acrobat ActionScript API. that the navigator actually use the colors.6c Entries in a folder dictionary” on page 32. Split dictionary Add a new value of CompressedSize to the Subtype key in Table 8. Folders dictionary (Required if the collection has folders.2. ExtensionLevel 3) The field data is the length of the embedded filestream. “Embedded File Streams”).

0 to 1. The entry is ignored if Direction is set to N. ExtensionLevel 3) An array of three numbers in the range 0. specified as a percentage of the available window area. ExtensionLevel 3) An array of three numbers in the range 0.0.0 to 1. representing a DeviceRGB color used for the navigator background. representing a DeviceRGB color used for the navigator card background. N indicates that the window is not split. ExtensionLevel 3) An array of three numbers in the range 0. (Optional.0. A collection split dictionary holds information that specifies the initial orientation (horizontal.0.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. The structure is represented by a tree with a single root folder acting as the common ancestor for all other folders and files in the collection. or no split) of the splitter control and its position.6 on page 29. ExtensionLevel 3) An array of three numbers in the range 0. This dictionary has the following entries.6b Entries in a collection split dictionary KEY Direction TYPE name VALUE (Optional. ExtensionLevel 3) The initial position of the splitter bar. Beginning with extension level 3. representing a DeviceRGB color used for the primary text in a navigator. Position number (Optional. representing a DeviceRGB color used for the navigator card border.0 to 1. The following values are valid: H indicates that the window is split horizontally. (Optional. (Optional. TABLE 8.0.4 Collections 31 A collection colors dictionary lists colors that a navigator should use in its presentation of a collection.2.0 to 1. The entire window region is dedicated to the file navigation view. TABLE 8. such as file names and links. . a portable collection can contain a Folders object for the purpose of organizing files into a hierarchical structure. ExtensionLevel 3) An array of three numbers in the range 0. The single root folder is referenced in the Folders entry of Table 8.0 to 1. representing a DeviceRGB color used for other text in a navigator.6a Entries in a collection colors dictionary KEY Background TYPE array VALUE (Optional. (Optional. vertical. V indicates that the window is split vertically.0. Values should range from 0 to 100. showing a navigator (or file list) in one sub-view and a preview of the currently selected document in the other. CardBackground array CardBorder array PrimaryText array SecondaryText array A portable collection can be displayed in a split view. ExtensionLevel 3) The orientation of the splitter bar.

TABLE 8. page 29) or by folder name if no collection Sort key is present. Siblings should be ordered according to the collection Sort key (Table 8.45 of the PDF Reference) associated with this folder. if present. (Optional. ExtensionLevel 3) The collection item dictionary (see Table 3.4 Collections 32 Table 8. (Optional.6. (Required for all but the last item at each level. Child dictionary dictionary (Required if the folder has any descendents.2. Two folders shall not share the same ID value. ExtensionLevel 3) The date of the most recent change to immediate child files or folders of this folder. ExtensionLevel 3) An indirect reference to the parent folder of this folder. Two sibling folders shall not share the same name following case normalization. ExtensionLevel 3) A file name representing the name of the folder.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. ExtensionLevel 3) An indirect reference to the first child folder of this folder.6c describes the entries in a folder dictionary. ExtensionLevel 3) The type of PDF object that this dictionary describes. This entry shall be absent for a root folder. Next CI dictionary text string date string date string (Optional. ExtensionLevel 3) The date the folder was first created. Desc CreationDate ModDate . (Optional. ID integer Name text string (Required. shall be Folder for a folder dictionary. (Required. The folder ID value appears as part of the name tree key of any file associated with this folder. A detailed description of the association between folder and files can be found after this table. Note: Descriptions of file name and case normalization follow this table.6c Entries in a folder dictionary KEY Type TYPE name VALUE (Optional. ExtensionLevel 3) A text description associated with this folder. ExtensionLevel 3) An indirect reference to the next sibling folder at this level. Parent dictionary (Required for child folders. ExtensionLevel 3) A non-negative integer value representing the unique folder identification number.

If no folder structure is specified.). all files in the EmbeddedFiles name tree (see Table 3. The association between files and folders is accomplished using a special naming convention on the key strings of the name tree. Each pair represents an endpoint-inclusive range of values that are available for use when a new folder is added.5. a low value followed by a high value. When folders are used. and Next keys. it is further required that two file names in the same folder do not map to the same string following case normalization. Section 3. U+005C REVERSE SOLIDUS (\). The string shall not contain any embedded NULL characters.2. See http://www. Child. Folders are indirect objects. If an ID value is used from the Free entry array. New values for the ID key shall be obtained by a conforming reader by accessing the Free entry in the root folder. ExtensionLevel 3) An array containing ID values that are not currently in use by the folder structure. The last character shall not be a U+002E FULL STOP (.” for a discussion of the key strings. The number of characters in the string shall be between 1 and 255 inclusive. just as it does for embedded files in a collection. have naming restrictions inherited from the Universal Container Format (UCF) specification. As previously described. only used by root folder. and relationships between folders in the tree are specified using Parent. U+0022 QUOTATION MARK ("). .) Strings that conform to these restrictions are known as file names. A valid file name conforms to the following requirements: ● ● ● ● The string shall be a PDF text string. In addition to the restriction on naming folders. U+003A COLON (:). as well as its associated files. If not. an appropriate error message shall be provided. ● A conforming reader may choose to support invalid names or not.8. as just described. maintaining compatibility with older viewers. The string shall not contain any of the eight special characters: U+002F SOLIDUS (/).3.4 Collections 33 TABLE 8. conforming readers show all files in the collection in a flat list.unicode. Each low value is less than or equal to its corresponding high value.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. U+003C LESS-THAN SIGN (<). The array contains zero or more pairs of numbers. the array is updated. (See the Bibliography.html for information on case normalization. the Name entry is a file name for a folder.org/reports/tr21/tr21-5. “Name Trees. and U+007C VERTICAL LINE (|). Two file names that differ only in case are disallowed within the same folder. U+003E GREATER-THAN SIGN (>).28 of the PDF Reference) shall be treated as members of the folder structure by a conforming reader. A folder. Free array (Optional. The CI entry (a collection item dictionary) allows user-defined metadata to be associated with a folder.2. U+002A ASTERISK (*). See the PDF Reference. ExtensionLevel 3) A stream object defining the thumbnail image for the folder See Section 8. “Thumbnail Images” of the PDF Reference.6c Entries in a folder dictionary KEY Thumb TYPE stream VALUE (Optional.

or presentation. A conforming interactive reader shall play the SWF file that drives the presentation of the collection. the entries used only for authoring are noted.6. These include Resources. the GREATER-THAN SIGN (>) The remainder of the string is a file name. page 130. page 29) is given a value of C to indicate that the collection view is provided by a custom navigator. The first character. expressed as an entry in the navigator's resources tree. See the Resources entry later in this table. such as the location of the SWF file that implements the layout of the collection. authoring only) The name to be displayed to the user when choosing a navigator in a conforming interactive reader. (See implementation note E-3. The section of the string following the folder ID tag represents the file name of the embedded file. page 130. Name text string . The following table lists the entries in the navigator dictionary. ExtensionLevel 3) The location of the SWF file that implements the layout of the collection. of the collection contents.4 Collections 34 As previously mentioned. See Table 8. excluding any byte order marker.6 on page 29 for information about these entries. (Required. the LESS-THAN SIGN (<). (See implementation note E-2. The SWF file that manages the presentation is called a navigator. files in the EmbeddedFiles name tree are associated with folders by a special naming convention applied to the name tree key strings. Strings that conform to the following rules serve to associate the corresponding file with a folder: ● ● ● The name tree keys are PDF text strings.) This section describes how navigator information is stored in a PDF file.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. The following characters shall one or more digits (0 to 9) followed by the closing U+003E.2. The value shall correspond to a folder ID. A Navigator entry in the collection dictionary contains an indirect reference to the navigator dictionary that describes the navigator. unless some other considerations such as accessibility require a non-SWF file-based presentation. is U+003C. Colors. and Split. ExtensionLevel 3. Other entries in the collection dictionary may also be present. Files in the EmbeddedFiles name tree that do not conform to these rules shall be treated as associated with the root folder. TABLE 8. ● The section of the string enclosed by LESS-THAN SIGN GREATER-THAN SIGN(<>) is interpreted as a numeric value that specifies the ID value of the folder with which the file is associated. Navigators Beginning with extension level 3. The navigator dictionary contains a variety of information about the navigator to be used. a portable collection can include a SWF file-based interactive layout. Folders. but does not describe the SWF file that implements the navigator itself.) When a portable collection is created. the View entry of the collection dictionary (Table 8. and resources. a unique ID number.6d Entries in a navigator dictionary KEY SWF TYPE text string VALUE (Required. load type.

If a portable collection is opened in an older viewer that supports a SWF file driven presentation of collections. p. See implementation note E-4. ExtensionLevel 3. expressed as a URI. m. p. Note: For information about modules.6d Entries in a navigator dictionary KEY Desc TYPE text string VALUE (Optional. and q are non-negative integers. m. The following values are valid: Module The navigator SWF file is loaded as an Adobe© Flex™ 2 module. See implementation note E-18. . ExtensionLevel 3. p. ExtensionLevel 3) The method to use to load the navigator SWF file.2. n. but a PNG or JPEG image accepted by the version of the SWF file identified by the navigator APIVersion. where. authoring only) A string representing a numerical version number of the form m[. APIVersion text string (Required. the navigator SWF file is loaded as an ordinary SWF file. p. ExtensionLevel 3) A string representing a numerical version number of the form m[. The resource is not a PDF XObject. ExtensionLevel 3. If not present. ExtensionLevel 3. n. and q default to 0. authoring only) The category name that may be used to group navigators.n[. it does not load and run the navigator SWF file if this version is greater than that supported by the conforming reader.) Icon text string (Optional. and q are non-negative integers. ExtensionLevel 3.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. LoadType name (Optional.q]]]. (See the Bibliography. (Optional. and q default to 0.p[. If this key is omitted. (Required. See implementation note E-19. authoring only) The description of the navigator available to the user when choosing a navigator in a conforming interactive reader. authoring only) The location of an image representing the navigator expressed as an entry in the navigator's resources tree. If not present. see the chapter “Modular applications overview” in the Flex 2 Developer Guide. n.p[. authoring only) A string representing a unique ID for the navigator. page 132. page 130.q]]]. where.4 Collections 35 TABLE 8.n[. page 132. Default The navigator SWF file is loaded as an ordinary SWF file. n. This number is the version of the navigator API required by the navigator SWF file. Category text string text string ID Version text string (Optional.

Existing fields are reordered if necessary to conform to the order of the fields specified here. The base IRI for references from the navigator SWF file is the navigator SWF file itself. the fields are added in the order specified. that this key specifies the navigator SWF file IRI to be MyNavigator. Suppose also that the Icon key in . Resources name tree Resources name tree A resources name tree provides access to named files used by portable collection-related SWF file components. Suppose. page 29). Table 8. the reference is resolved relative to the root directory of the abstract container. (For information about Internationalized Resource Identifiers (IRIs). ExtensionLevel 3. followed by a two-character territory code. and resources used by the navigator SWF file. Both the keys and values of the name tree are text strings. The navigator SWF file IRI is defined by the SWF key in the navigator dictionary. ExtensionLevel 3) An indirect reference to a string table name tree that maps string IDs to localized strings.. (Required. are stored in a resources name tree.) The use of parent directory symbol (.) The name tree maps relative IRI references to streams. (Optional. separated by an underscore (_). the navigator SWF file and its icon. The resources in the name tree exist in a hierarchical directory structure. Strings name tree InitialFields dictionary (Optional. if a relative IRI reference contains an absolute path. See the discussion in “String table” on page 37.2.6d.css and an image named images/MyImage. Table 8. in turn.7 in the PDF Reference) that defines the schema fields expected by the navigator.swf and that this SWF file. These relative IRI references are used by SWF files that implement components of the collection user interface. but a processor should treat a hyphen (-) as equivalent to an underscore (_). Existing fields not listed in InitialFields are moved to the end of the collection schema. see RFC 3986 and RFC3987 in the Bibliography. As noted in UTS 35.4 Collections 36 TABLE 8. matching the abstract container and directory structure defined by the Uniform Container Format (UCF).Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. which is an IRI that has no schema or authority but begins with a U+002F SOLIDUS (/). ExtensionLevel 3) A string that specifies a locale according to UTS 35. and the header.6. the welcome page. for example. When a navigator is applied to a portable collection and any of these fields do not exist in the collection schema. the navigator icon. See the discussion in “Resources name tree” that follows this table.) in a relative IRI is disallowed. As specified by UCF. refers internally to a style sheet named MyStyles.jpeg. Two components of the navigator itself. the canonical form of a locale ID uses an underscore (_) as a separator. authoring only) A collection schema dictionary (see Table 8. (See the Bibliography. Unicode Technical Standard #35.6d Entries in a navigator dictionary KEY Locale TYPE text string VALUE (Optional. including the custom navigator. Collections contain two resources name trees. The string is usually a two-character language code. mapping text strings to streams for named resources including the navigator SWF file. one for the navigator (the Resources entry in the navigator dictionary. ExtensionLevel 3) An indirect reference to a name tree. page 34) and one for all other components (the Resources entry in the collection dictionary.

see the R (row order) entry description on page 605. All the resources needed by the welcome page are named beginning with welcome/. A resources name tree differs from the EmbeddedFiles name tree (Section 3. (See Table 3. The Acrobat ActionScript API provides access to the string table.” part of implementation note 77.) The resources in the collection resources name tree are organized by directory. 8. and images/MyImage. . a localized text string can be found. The String entry in the navigator dictionary (TABLE 8.4 Annotations Page 605 of the PDF Reference describes the effect of each supported Tabs value.3 in the PDF Reference) in two respects. For information about the Acrobat implementation of this feature and the effect of the accessibility preference on annotations order.10.4 Annotations 37 the navigator dictionary refers to MyIcon. String table Navigators include some text that is displayed to the user.jpeg. This string table is a name tree whose keys are string IDs and values are localized text strings.6. MyStyles.) W (widgets order): Widget annotations are visited in the order in which they appear in the page Annots ● array. Given a string ID and a locale (the Locale entry in a navigator dictionary).Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8.6d Entries in a navigator dictionary) is an indirect reference to a string table.” and implementation note E-17. Similarly. The SWF file components embedded in a PDF file use the collection resources. (See the Acrobat ActionScript API Reference in the Bibliography.png. page 132. the navigator resources are replaced as well. MyIcon. “Entries in a page object. The base IRI in this case is the root directory of the abstract container. see “Interaction between accessibility preference and annotation tab order. The values in the tree are simple streams rather than file specifications. which is defined by the key. The base IRI for PDF viewer components such as the welcome page and header is the root directory of the abstract container.”) For information about row order.) The method INavigatorHost. If a user replaces a navigator with another. The only information associated with a resource is its name. header resources begin with header/. on page 29. A string ID is itself a text string. While the content of PDF documents is generally not localized. and PDF provides a mechanism that enables navigators to specify localized text separate from the application.css. The keys in the tree are always text strings that represent relative IRIs. as if these resources were in a directory named welcome. on page 116.swf.png. navigators include both content and application (the navigator SWF file). The navigator’s resources name tree should then include four resources: MyNavigator. After the description for the S (structure order) value. (See the Resources entry in Table 8.27. add these bulleted entries: ● A (annotation array order): All annotations are visited in the order in which they appear in the page Annots array.27 “Entries in a page object.getLocalizedString returns the value for a given ID or returns the provided default value (a parameter to getLocalizedString) if the ID is not in the string table. followed by other annotation types in row order. Storing the navigator resources in a name tree separate from the collection resources allows a navigator to be self-contained. (See Table 3.

48 on page 835 lists the values that correspond to a subtype of Markup3D.5 Annotation Types Add the Projection and the RichMedia annotation types to Table 8. This Subtype does not define any additional entries. (See also implementation note 96 in Appendix H.4.6.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8.21 Additional entries specific to markup annotations KEY ExData TYPE dictionary VALUE (Optional.21.20 TABLE 8.1 RichMedia Annotations” on page 76 RichMedia Markup Annotations Add a new subtype to the ExData entry in Table 8. Markup3D (PDF 1. other entries are defined. (See also implementation note 96 in Appendix H.5 Annotation Types 38 8. Additional entries in this dictionary are listed in Table 9.4. Additional entries in this dictionary are listed in “TABLE 9.20 Annotation types ANNOTATION TYPE Projection DESCRIPTION (ExtensionLevel 3) Projection annotation (ExtensionLevel 3) RichMedia annotation MARKUP? DISCUSSED IN SECTION Yes No “Projection Annotations” on page 39 “9. Table 9.7) for a 3D comment. This dictionary contains the following entries: Type (optional): If present.7) An external data dictionary specifying data to be associated with the annotation. must be ExData.39g Entries in the external data dictionary of a projection annotation” on page 76. PDF 1. MarkupGeo (ExtensionLevel 3) for geospatial markup.) . Unchanged content is shown in gray. TABLE 8.) 3DM (ExtensionLevel 3) for a 3D measurement. Subtype (required): A name specifying the type of data that the markup annotation is associated with. For each value of Subtype.48 on page 835.

39b.39 Additional entries specific to a widget annotation KEY PMD TYPE dictionary VALUE (Required.39g Entries in the external data dictionary of a projection annotation on page 76. . such as an activated 3D model. Add the following new topic to the end of Section 8. it has an ExData dictionary with a Subtype of 3DM. a projection annotation is only valid within the context of an associated run-time environment. “Additional entries specific to a widget annotation” on page 641.4. ExtensionLevel 3) The PaperMetaData generation parameters dictionary. Projection Annotations A projection annotation is a markup annotation subtype (Table 8.20.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. page 38) that has much of the functionality of other markup annotations.) Otherwise. TABLE 8. However. the ExData dictionary is optional. (See TABLE 9. for the description of a PaperMetaData generation parameters dictionary.39.15 and Table 8. The entries of a annotation dictionary for a projection annotation are those listed in Table 8.5. The PMD entry is used by barcode fields.5 Annotation Types 39 Widget Annotations Add the PMD entry to the end of Table 8. See Table 8. The entries of this dictionary are instructions to the barcode encoding software on how to generate the barcode image. XMP (Extensible Metadata Platform) is an XML format for representing metadata. Note: PaperMetaData should not be confused with XMP as used in a PDF file. These measurements and comments then persist in the document.4. page 46. barcode fields only. Projection annotations provide a way to save 3D and other specialized measurements and comments as markup annotations. When a projection annotation is used in conjunction with a 3D measurement (“3D Measurements and Projection Annotations” on page 75). A projection annotation with a Rect entry that has zero height or zero width does not have an AP dictionary.21 of the PDF Reference.

Note: Because of the potential for multiple Flash instances within a single annotation. ExtensionLevel 3) A dictionary that shall be an indirect object reference to a RichMediaInstance dictionary that is also present in the Instances array of the annotation. the TI entry allows targeting of actions to a specific Flash instance.48 Action Types ACTION TYPE RichMediaExecute DESCRIPTION DISCUSSED IN SECTION (ExtensionLevel 3.5.5 Actions 8. TABLE 8.) Table 8. .48a Additional entries specific to a rich-media-execute action KEY S TYPE name DESCRIPTION (Required. Rich-Media-Execute Actions A rich-media-execute action identifies a rich media annotation and specifies a command to be sent to that annotation’s handler.48. TABLE 8. ExtensionLevel 3) The type of action that this dictionary describes.48a shows the entries in a rich-media-execute action dictionary. RichMedia annotation “Rich-Media-Execute Actions” on only) Specifies a command to be sent to page 40 the annotation’s handler. “Rich Media” on page 76. shall be RichMediaExecute for a rich-media-execute action.48b Entries in a RichMediaCommand dictionary” on page 41.6. TA dictionary TI dictionary CMD dictionary (Required. ExtensionLevel 3) An indirect object reference to a rich media annotation dictionary for an annotation for which to execute the script command. (Required. ExtensionLevel 3) A RichMediaCommand dictionary containing the command name and arguments to be executed when the rich-media-execute action is invoked. (See Section 9.5 Actions 40 8.3 Action Types Add the rich-media-execute action to Table 8. See “TABLE 8. The RichMediaCommand dictionary contains a command name and optional arguments to be passed to the annotation handler specific to the target instance specified by the TI key in the parent rich-media-execute action dictionary.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. (Optional.

real. The object can either be a single typed value or an array of typed values. shall be RichMediaCommand for a RichMediaCommand dictionary. the command string represents an ActionScript ExternalInterface call to the script engine context specific to the target instance.48b Entries in a RichMediaCommand dictionary KEY Type TYPE name DESCRIPTION (Optional. If the target instance is a 3D model. or Boolean. C text string A various (Optional.5. Default value: no arguments. integer. . ExtensionLevel 3) A text string specifying the script command (a primitive ActionScript or JavaScript function name). If the target instance (specified by the TI key in the parent rich-media-execute action dictionary) is Flash content. each an argument.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. Valid arguments are objects of type text string. ExtensionLevel 3) An object that specifies the arguments to the command.3 Action Types 41 TABLE 8. ExtensionLevel 3) The type of PDF object that this dictionary describes. (Required. the call is made in the global context of the annotation’s instance of the 3D JavaScript engine.

which specifies XFA version 2. This value is an extension added in Acrobat 8. 2. This value is an extension added in Acrobat 8.73 reflects the clarified description from the Errata for the PDF Reference. (ExtensionLevel 1) 2. which specifies XFA version 2.4.5. ● 2. PDF 1. which specifies XFA version 2.0.0.com/go/acrobat_developer.adobe. Table 8. versions 2. sixth edition.1.6. available at www.5 supports this version.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. PDF 1.0.5 and 2. The following entry in Table 8. which specifies XFA version 2.2.73 Attributes of the <body> element ATTRIBUTE xfa:spec DESCRIPTION The version of the XML Forms Architecture (XFA) specification to which the rich text string complies.6 Interactive Forms 42 8.1. which specifies XFA version 2.7. page 130. (ExtensionLevel 2) ● See implementation note E-5. PDF 1.7 supports this version and the earlier versions back to XFA version 2.6. (Select the Documentation tab.) Unchanged content is shown in gray.0. .6 supports this version and the earlier versions back to XFA version 2.6. version 1.4.2.6 Interactive Forms Extension level 1 adds support for the rich text specified in XML Forms Architecture (XFA). The following are valid values: ● ● 2.5. ● 2.

82 Entries in a signature field lock dictionary KEY P TYPE number DESCRIPTION (Optional. as well as annotation creation. The new permission applies to any incremental changes to the document following the signature of which this key is part. and signing. no changes to the document are permitted. other changes invalidate the signature. . the initial permissions in effect are those based on the number 3. ExtensionLevel 3) The access permissions granted for this document.6. If MDP permission is already in effect from an earlier incremental save section or the original part of the document. TABLE 8. Valid values follow: 1. Default value: none. instantiating page templates.82 on page 697 of the PDF Reference. 3. the new number is ignored. any change to the document invalidates the signature. permissions can be denied but not added.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. other changes invalidate the signature. If the document does not have an author signature. See implementation note E-14 on page 131. permitted changes are filling in forms. 2. deletion.6.3 Field Types 43 8. and modification. If the number specifies greater permissions than an MDP value already in effect. That is. permitted changes are the same as for 2. absence of this key results in no effect on signature validation rules.3 Field Types Signature Fields Add the new P entry to Table 8. the number shall specify permissions less than or equal to the permissions already in effect based on signatures earlier in the document.

the required flag. Unchanged content is shown in gray. the user may choose to override this at the time of signing. Again. false. Ff. auto. Conforming readers may choose to maintain a list of named signature appearances. Default value: auto See implementation note E-15 on page 131. otherwise. . the document should be locked at the time of signing. Ff. If the required bit AppearanceFilter in Ff is set. the document should not be locked after signing. based on the properties of the document. Values are true. the appearance shall be available to sign the document and is used.3 Field Types 44 The following are additions and changes to Table 8. the document is locked after signing.83 Entries in a signature field seed value dictionary KEY LockDocument TYPE name DESCRIPTION (Optional. determines whether this is a required constraint.6. AppearanceFilter text string (Optional. ExtensionLevel 3) A text string naming the appearance to be used when signing the signature field. This text string provides authors with a means of specifying which appearance should be used to sign the signature field.83 on page 697 of the PDF Reference. as follows: true. ExtensionLevel 3) A name value supplying the author’s intent for whether the signing dialog should allow the user to lock the document at the time of signing. false. If the Ff entry indicates that LockDocument is not a required contraint. TABLE 8. and auto. the consuming application decided whether to present the lock user interface for the document and whether to honor the required flag.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. New entries are LockDocument and AppearanceFilter. See implementation note E-16 on page 131.

A value of 1 specifies that the parser must be able to recognize all seed value dictionary entries specified in PDF 1. Note: The PDF References fifth edition (PDF1.6. “Additional entries specific to a widget annotation” in the PDF Reference. Insert the following new section after the subsection titled “Signature Fields” on page 702 of the PDF Reference. A value of 1 for the flag indicates that the associated entry is a required constraint. 2 (SubFilter). and 9 (AppearanceFilter). (See the AA entry in Table 8.3 Field Types 45 TABLE 8. A value of 0 indicates that the associated entry is an optional constraint. (See the PaperMetaData generation parameters dictionary. and segmented. page 46. A value of 2 specifies that it must be able to recognize all seed value dictionary entries specified in PDF 1. erroneously indicates that the V entry is of type integer. (See implementation note E-6. A value of 3 specifies that it shall be able to recognize all seed value dictionary entries specified in extension level 3 and earlier.) A barcode field dynamically acquires its value through user input into one or more text fields that are referenced in a calculate dictionary (see the C entry in Table 8. contains the value that is to be recovered from the barcode at scan time. 5 (LegalAttestation).) The appearance of the barcode field.5. “Entries in a form field’s additional-actions dictionary” in the PDF Reference) of an additional-actions dictionary. The Ff entry indicates whether this is a required constraint. Bit positions are 1 (Filter). Default value: 0 V real (Optional) The minimum required capability of the signature field seed value dictionary parser. encrypted. page 130. called the textual value. 6 (AddRevInfo). 3 (V).39. the following bit flags are added: 8 (LockDocument).7 and earlier. This entry is of type real.6) and earlier. 7 (DigestMethod). . for extension level 3. which barcode symbology is employed.83 Entries in a signature field seed value dictionary KEY Ff TYPE integer DESCRIPTION (Optional) A set of bit flags specifying the interpretation of specific entries in this dictionary. Barcode Fields A barcode field is a text field (field type Tx) in which its appearance is rendered by one or more annotation widgets that contain a PMD entry.46.) Additional keys in the form field and widget annotation dictionaries control whether and how the data value is compressed.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. and any other parameters required for generating the barcode. 4 (Reasons).

(See also implementation note E-7. QRCode. shown below. Should be the number 1. for forward compatibility.) The PMD entry is a PaperMetaData generation parameters dictionary. Version number number Resolution Caption text string (Optional. The default value of Caption is the “file: scheme” URL of the current document. the field dictionary for a barcode field may contain the additional entry shown in Table 8.39b Entries in a PaperMetaData generation parameters dictionary KEY Type TYPE name VALUE (Required. ExtensionLevel 3) The resolution. and DataMatrix. The entries of a PaperMetaData generation parameters dictionary are listed in Table 8. (Required. If there are several widget annotations associated with a single barcode field.39a Additional entry specific to a barcode field KEY DataPrep TYPE number VALUE (Optional.3 Field Types 46 Besides the usual entries common to all fields (see Table 8. of the barcode object. page 131. ExtensionLevel 3) The type of PDF object that this dictionary describes. Width number number Height . Supported values are PDF417. (Optional. (See Table 9. shall be PaperMetaData for a PaperMetaData generation parameters dictionary. the data is divided into approximately equal parts. of the barcode object. Default value is 300. and each part is encoded (rendered) separately according to the specifications of the PMD entry in the widget annotation dictionary. The widget annotation dictionary of a barcode field may be merged with the field dictionary when there is a single barcode associated with the field. Permissible values follow: 0 The data is sent directly to the encoder. ExtensionLevel 3) Versioning mechanism.39a. ExtensionLevel 3) The caption of the barcode object. measured in inches.69 on page 675 of the PDF Reference).6. TABLE 8. at which the barcode object is rendered. measured in inches. ExtensionLevel 3) The height. the data is sent directly to the encoder. (Required. ExtensionLevel 3) The width.) TABLE 8. in dots-per-inch (dpi). ExtensionLevel 3) Specifies which barcode or glyph technology is to be used on this annotation. 1 The data undergoes flate compression before encoding. (Required.39b. Symbology name (Required. ExtensionLevel 3) Describes the data preparation steps before encoding.39 on page 39 for the PMD entry.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. The default is 0.

Associate each message with a widget annotation referred to through the Kids array from the barcode field.3 Field Types 47 TABLE 8. Needed only for PDF417. (Required. its widget annotation dictionary is merged into the barcode field dictionary. ExtensionLevel 3) An integer value representing the error correction coefficient. The number of codewords per barcode column. (If there is only one widget annotation. XSymHeight number ECC number nCodeWordRow number Needed only for PDF417. (Required for PDF417 and QRCode only. and the parameters to specify how to generate the barcode or glyph. The DataPrep entry determines whether the value of a computed barcode field is compressed. Obsolete. QRCode. measured in pixels. The number of codewords per barcode row. See the listing of these symbology standards in the International Organization for Standardization (ISO) section of the Bibliography. this ratio shall always be 1. An appearance stream for the widget (the N entry in the AP dictionary) is then constructed that causes the entire rectangular area of the widget to be filled with the generated image. For PDF417. If DataPrep entry is present and its value is 1. Starting with the value of the field as stored in the V key of the barcode field dictionary. 1 for ‘M’. and 3 for ‘H’). in inches. PDF417. ExtensionLevel 3) Only needed for PDF417. For QRCode. shall be from 0 to 8. For QRCode and DataMatrix. and DataMatrix. the error correction coefficient. in pixels. the following steps are applied: 1. ExtensionLevel 3) The horizontal distance. the acceptable ratio range is from 1 to 4. Higher levels provide more redundancy and a more robust barcode that will generate more successful decode results.39b Entries in a PaperMetaData generation parameters dictionary KEY XSymWidth TYPE number VALUE (Required. between two barcode modules. the PMD entry (in the PaperMetaData generation parameters dictionary) of the widget annotation instructs which barcode or glyph symbology to use. The ratio XSymHeight/XSymWidth shall be an integer value. compress the text value of the barcode field using flate compression.) For each such association. The XSymWidth entry can be calculated by multiplying the desired distance. corresponds to the level of data redundancy that is added to the barcode to correct any potential decoding errors. however. The encoding (or rendering) of the data occurs whenever the text value of a barcode field changes.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8.6. . Defaults to 0. 2 for ‘Q’. Defaults to 0. nCodeWordCol number The Symbology entry takes one of three values. For PDF417. by the Resolution value. higher levels also result in a larger barcode and a reduced ability to encode user-supplied or form structure data into the barcode. The vertical distance between two barcode modules. 2. Rendering. shall be from 0 to 3 (0 for ‘L’. Compression. and then rounding up the result. The ECC entry. Shall be presented as an integer value. Obsolete.

8 Measurement Properties Add new entries Measure and PtData to Table 8.7 XFA Forms 48 8. . which is part of the name dictionary of the document catalog. For applications that convert PDF documents to PDF/A-2. Incorporation of XFA Datasets into a PDF/A-2 Conforming File To support PDF/A-2 conforming files. The XFAResources name tree consists of a string name and an indirect reference to a stream. TABLE 8. and one or more XML signature(s). XML forms are not. XDP streams can contain XFA datasets.7 XFA Forms Place the following material at the end of this section.28 Entries in the name dictionary” on page 23.110. version 2. See the XML Architecture. The stream contains the <xfa:datasets> element of the XFA. comprised of <xfa:data> elements.109 Entries in a viewport dictionary KEY Measure TYPE dictionary dictionary VALUE (Optional) A measure dictionary (see Table 8.109 in support of geospatial content. specified by the value RL for the Subtype entry. The string name is created at the time the document is converted to a PDF/A-2 conforming file. ExtensionLevel 3) A point data dictionary (see Table 111d. Table 8. providing the flexibility to measure using other types of coordinate systems. the <xfa:data> elements enable the storage and retrieval of other types of information that may be useful for other workflows. See Section 8. Extension level 3 defines a geospatial coordinate system specified by the value GEO for the Subtype entry. ExtensionLevel 3 adds support for XML form data (XFA datasets) through the XFAResources name tree.8.6 in the Bibliography. Such XML forms are specified as XDP streams referenced from interactive form dictionaries. Unchanged content appears in gray.1 Geospatial Features. XML Forms Architecture (XFA) Specification. respectively).) While Acrobat forms (and form data) are permitted in a PDF/A-2 conforming file.110 shows the entries in a measure dictionary. page 49) that specifies the scale and units that apply to the image. the XFAResources name tree supports relocation of XML form data from XDP streams in a PDF document into the XFAResources name tree.6 defines only a single type of coordinate system. on page 49. which is defined as one in which the x and y axes are perpendicular and have units that increment linearly (to the right and up.6. Other subtypes are permitted. modify the following paragraph to reflect the new geospatial coordinate system. In addition to data values for XML form fields. including data that is not bound to form fields. page 53) that specifies the extended geospatial data that applies to the image. Unchanged content is shown in gray. a rectilinear coordinate system.6. 8. (See “TABLE 3. PtData On page 745.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. PDF 1. (Optional.

111a. In extension level 3. TABLE 8.111a.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. insert the following. For example.1 Geospatial Features 49 When the value of the Subtype entry is GEO. a geospatial coordinate system is introduced (Table 8.110. a map may be created in a state plane coordinate system based on a 1927 datum. Table 8. Table 111a. A geospatial measure dictionary. page 49) is GEO.8. potentially. other ellipsoid objects).110. to support geospatially registered content. and corresponding arrays of points in that coordinate system and the local object coordinate system. distances and areas. The entries of a geospatial measure dictionary are shown in Table 8. .1 Geospatial Features PDF is a common delivery mechanism for map and satellite imagery data. as explained in this section.110. It may also contain a choice of default units (the PDU entry) for user displays of positions.110 Entries in a measure dictionary KEY Subtype TYPE name VALUE (Optional) A name specifying the type of coordinate system to use for measuring.8. Add the value of GEO to the Subtype entry of Table 8. additional entries are defined. Valid values follow: RL. Add a new section to the end of Section 8. which defines the region of the PDF object for which the geographic associations are valid. An optional display coordinate system (the DCS entry) allows a document to be authored to display values in a coordinate system other than that associated with the source data. It may contain a bounding polygon (the Bounds entry). page 50. contains a description of the earth-based coordinate system associated with the PDF object. but it is possible to display its latitude and longitude values in the WGS84 datum corresponding to values reported by a GPS device. lists and describes these additional entries in a geospatial measure dictionary. for a rectilinear coordinate system GEO.110.8. 8. additional entries are defined through a geospatial measure dictionary. page 49) along with a number of PDF constructs. Geospatial Measure Dictionary When the subtype of a measurement dictionary (Table 8. When the subtype of a measurement dictionary is GEO. (ExtensionLevel 3) for a geospatial coordinate system Default value: RL Between the two paragraphs that follow Table 8. the dictionary defines the relationship between points or regions in the two dimensional PDF object space and points or regions with respect to an underlying model of the earth (or.

ExtensionLevel 3) A projected or geographic coordinate system dictionary.0 0. a grad (1/400 of a circle.9 degrees) .0 1. ExtensionLevel 3) A projected or geographic coordinate system to be used for the display of position values. The following are valid linear display units: M. or 0. and an angular display unit.S.0 1. a kilometer FT.0 0. an international foot USFT. If not present. These numbers are expressed relative to a unit square that describes the BBox associated with a Viewport or form XObject.0]. a square foot A. this bounding polygon is know as a neatline. a U. a hectare (10. (Optional. or the bounds of an image Xobject. ExtensionLevel 3) An array of numbers taken pairwise that define a series of points that describes the bounds of an area for which geospatial transformations are valid. such as latitude and longitude. an area display unit.000 square meters) SQKM.111a Additional entries specific in a geospatial measure dictionary KEY Bounds TYPE array VALUE (Optional. an international nautical mile DCS PDU array The following are valid area display units: SQM.0 1. a square kilometer SQFT.1 Geospatial Features 50 TABLE 8. a degree GRD.0 1.0 0.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. Note: The polygon description need not be explicitly closed by repeating the first point values as a final point. a square meter HA.8. ExtensionLevel 3) Preferred Display Units. with values of [0. the default values define a rectangle describing the full unit square. a meter KM. For maps. GCS dictionary dictionary (Required. an acre SQMI. an international mile NM. Survey foot MI. Formatting the displayed representation of these values is controlled by the conforming reader. a square mile The following are valid angular display units: DEG. An array of three names that identify in order a linear display unit. (Optional.

org.) See implementation note E-9. which contains a description of algorithms and parameters needed for transformations. LPTS array Geographic Coordinate System Dictionary A geographic coordinate system (GEOGCS) specifies an ellipsoidal object in geographic coordinates: angular units of latitude and longitude. ExtensionLevel 3) An array of numbers taken pairwise that define points in a 2D unit square. Table 8. ExtensionLevel 3) The type of PDF object that this dictionary describes.) TABLE 8. or as a Well KnownText (WKT) string.111b Entries in a geographic coordinate system dictionary KEY Type TYPE name VALUE (Required.) (Optional.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. (Optional. (Optional.111a Additional entries specific in a geospatial measure dictionary KEY GPTS TYPE array VALUE (Required. ExtensionLevel 3) An EPSG reference code specifying the geographic coordinate system. See implementation note E-8. or forms XObject that contain the measure dictionary.111a on page 50. as administered by the International Association of Oil and Gas Producers (OGP). image XObject. (See Table 8. page 132. page 131. (Note that any projected coordinate system includes an underlying geographic coordinate system. The unit square is mapped to the rectangular bounds of the viewport. shall be GEOGCS for a geographic coordinate system dictionary. OpenGIS Implementation Specification: Coordinate Transformation Services. of the Open Geospatial Consortium.8. (See implementation note E-20. This array contains the same number of number pairs as the GPTS array.111b lists the entries in a geographic coordinate system dictionary.1 Geospatial Features 51 TABLE 8. . ExtensionLevel 3) An array of numbers taken pairwise.epsg. These values are based on the geographic coordinate system described in the GCS dictionary. (See Bibliography. defining points in geographic space as degrees of latitude and longitude. page 131. Well Known Text is specified in document 01-009. A geographic coordinate system dictionary may be a value of the GCS or the DCS entry of a geospatial measure dictionary. ExtensionLevel 3) A string of Well Known Text describing the geographic coordinate system. each number pair is the unit square object position corresponding to the geospatial position in the GPTS array. The geographic coordinate system can be described in either or both of two well-established standards: as a numeric EPSG reference code.) The EPSG reference codes are described in a database available through www. EPSG integer ASCII string WKT Either an EPSG code or a WKT string is required in a geographic coordinate system dictionary.

0.6378137.org. (Optional. this distortion may be small enough to allow direct mapping between geographic coordinates and PDF object coordinates without requiring the use of a projected coordinate system. of the Open Geospatial Consortium. (See implementation note E-20.0. ExtensionLevel 3) The type of PDF object that this dictionary describes. beginning on page 52.257222101] ]. which contains a description of algorithms and parameters needed for transformations. page 131. Table 8. For small areas. TABLE 8. PRIMEM["Greenwich".0174532925199433] ] . or as a Well KnownText (WKT) string. specifies the algorithms and associated parameters used to transform points between geographic coordinates and a two-dimensional (projected) coordinate system. GEOGCS["GCS_North_American_1983". which includes an embedded GEOGCS. ExtensionLevel 3) A string of Well Known Text describing the projected coordinate system. The projected coordinate system can be described in either or both of two well-established standards: as a numeric EPSG reference code.) See implementation note E-9.111a on page 50. Well Known Text is specified in document 01-009.298. SPHEROID["GRS_1980". UNIT["Degree".111c Entries in a projected coordinate system dictionary KEY Type TYPE name VALUE (Required.8. page 131. Projected Coordinate System Dictionary A projected coordinate system (PROJCS).) Example: A WKT describing a geographic coordinate system An example of WKT description of a geographic coordinate system. ExtensionLevel 3) An EPSG reference code specifying the projected coordinate system. (Optional.1 Geospatial Features 52 Examples of WKT description strings appear at the end of the next section. The EPSG reference codes are described in a database available through www. A projected coordinate system dictionary may be a value of the GCS or the DCS entry of a geospatial measure dictionary.epsg.111c lists the entries in a projected coordinate system dictionary. OpenGIS Implementation Specification: Coordinate Transformation Services.0. Table 8. shall be PROJCS for a projected coordinate system dictionary.0]. The EPSG code equivalent to the GCS_North_American_1983 geographic coordinate system is 4269. (See Bibliography. page 132. DATUM["D_North_American_1983". formatted for readability. Any transformation between a three-dimensional curved geographic coordinate system and a two-dimensional coordinate system introduces distortions. as administered by the International Association of Oil and Gas Producers (OGP). See implementation note E-8. EPSG integer ASCII string WKT Either an EPSG code or a WKT string is required in the projected coordinate system dictionary.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8.

Image XObject.0.1 Geospatial Features 53 Example: A WKT describing a projected coordinate system An example of WKT description of a projected coordinate system.257222101] ].0].60. SPHEROID["GRS_1980". The EPSG code equivalent to the North_American_Albers_Equal_Area_Conic projected coordinate system is 102008.111d Entries in a point data dictionary KEY Type TYPE name name VALUE (Required.0]. Subtype .-96. PARAMETER["False_Easting". PARAMETER["Latitude_Of_Origin". UNIT["Degree". PROJCS["North_America_Albers_Equal_Area_Conic".8. page 49) of subtype GEO can optionally include a PtData entry.0174532925199433] ].0].0. TABLE 8. Table 8.0]. PARAMETER["Standard_Parallel_2".40. ExtensionLevel 3) Shall be Cloud.0].20.0. or Form XObject) that contains a measure dictionary (Table 8.111d lists the entries of a point data dictionary. PROJECTION["Albers"]. PARAMETER["Central_Meridian".0]. (Required.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. formatted for readability.110.0]. The value of a PtData entry is a point data dictionary or an array of point data dictionaries of extended data associated with points in the 2D space.1. PRIMEM["Greenwich".6378137.0. 298. GEOGCS["GCS_North_American_1983".0] ] Point Data Dictionary Any 2D object (Viewport. PARAMETER["Standard_Parallel_1".0. shall be PtData for a point data dictionary. DATUM["D_North_American_1983". PARAMETER["False_Northing". UNIT["Meter". ExtensionLevel 3) The type of PDF object that this dictionary describes.

latitude in degrees. each member in the interior arrays is of a type defined by the corresponding name in the Names array. The XPTS value is a number type.111d Entries in a point data dictionary KEY Names TYPE array VALUE (Required. .1 Geospatial Features 54 TABLE 8. altitude in meters.8. column headers for the array of XPTS values. in effect. and ALT are predefined. longitude in degrees. ExtensionLevel 3) An array of arrays of values. The names LAT. and are used to associate altitude information with latitude and longitude positions. The XPTS value is a number type. LON. Note: These names are. The XPTS value is a number type.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Interactive Features (Chapter 8 in PDF Reference) 8. ALT. The XPTS array is a collection of tuples without any guaranteed ordering or relationship from point to point. There are three predefined names: LAT. ExtensionLevel 3) An array of names that identify the internal data elements of the individual point arrays in the XPTS array. XPTS array (Required. LON. The number of members in each interior array corresponds to the size of the Names array.

33 Additional entries specific to a 3D annotation KEY 3DU TYPE dictionary VALUE (Optional.7 Reference. ExtensionLevel 3) A 3D units dictionary that specifies the units definitions for the 3D data associated with this annotation.Multimedia Features (Chapter 9 in PDF Reference) This section describes extensions to the PDF specification contained in the PDF Reference. See “TABLE 9.5 3D Artwork On page 790. Add the Style. “3D Streams”).5. These documents differ as described in About the ISO Draft of the PDF 1.7.2].PDF 1. Note: This guide uses italics to identify information not intended for inclusion in the PDF specification.1 3D Annotations Add the 3DU entry to Table 9.34. 55 .Portable document format . TABLE 9.6.2 ISO section 13. Universal 3D file format developed by the 3D Industry Forum (see Bibliography). the phrase BaseVersion 1. and Transparent entries to Table 9. 3D streams contain the actual specification of a piece of 3D artwork (see section 9. “3D Annotations”). 9. Window. “3D stream contain …”. For convenience. as well as providing background information on 3D graphics: ● 3D annotations provide a virtual camera through which the artwork is viewed.5. Extension level 1 extends PDF to support the PRC file format (see Bibliography).6.33.5.7). This specification supports the standard ECMA-363.3].33a Entries in a 3D units dictionary” on page 60. Unchanged content is shown in gray. sixth edition. ● 9. The latter document is the version of the PDF specification that has been ratified by the ISO. version 1. Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3 throughout this document. append the indicated sentence to the bullet that begins.7 and in ISO 32000 (Document management .1 [ISO section 13. The following sections describe the major PDF objects that relate to 3D artwork. (see section 9.

1. as amended by this guide. which usually means leaving the annotation in its inactive state. If this is the case. Default value: false Transparent boolean Add the following commentary to the end of Section 9. displaying its normal appearance. PRC.1. which specifies the PRC file format.2 3D Streams Modify the Subtype entry as shown in Table 9. The only valid value is U3D. . Default value: Embedded Window dictionary (Optional. TABLE 9.5.0. which specifies the Universal 3D file format.35 Entries in a 3D stream dictionary KEY Subtype TYPE name VALUE (Required) A name specifying the format of the 3D data contained in the stream. (ExtensionLevel 1) On page 798.2 3D Streams 56 TABLE 9. 9. A conforming interactive reader supports both Embedded and Windowed. See “RichMediaWindow Dictionary” on page 84 for a detailed description.5. The following valid values are supported: U3D. This value is an extension supported by Acrobat 8. which indicates that the stream data conforms to the Universal 3D File Format specification (see Bibliography).34 Entries in a 3D activation dictionary KEY Style TYPE name VALUE (Optional. some area of the page may be visible through the background if the resulting alpha value at that location is less than 1. See also the Transparent entry of the “RichMediaPresentation Dictionary” on page 82. (Optional.0). ExtensionLevel 3) A RichMediaWindow Dictionary that describes the size and position of the floating user interface window when the value for Style is set to Windowed.5. delete the sentence that begins “The only valid value …” in the following paragraph. The material in that sentence is covered in Table 9. PDF consumer applications must be prepared to encounter unknown values for Subtype and recover appropriately. The Style and Window entries provide the mechanism to present the 3D content in a floating window. The Subtype entry specifies the format of the 3D stream data.35298].Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. ExtensionLevel 3) Values may be Embedded or Windowed.35. ExtensionLevel 3) A flag that indicates whether the page content is displayed through the transparent areas of the rich media content (where the alpha value is less than 1. The Transparent entry provides a flag for specifying whether the background of a 3D view is rendered using transparency.

Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9.39 Entries in a 3D view dictionary KEY MA TYPE array VALUE (Optional. .3 3D Views Add the MA entry in Table 9.39 Entries in a 3D view dictionary KEY MS TYPE name VALUE (Optional) A name specifying the entry to use for the 3D camera-to-world transformation matrix. M is the only valid entry for 3D stream objects of type PRC (or it may be omitted).5. Modify the MS entry as shown. TABLE 9. where each dictionary represents an instance of a 3D measurement to be displayed in the context of this view. TABLE 9. and RM) in Table 9.5. that would correspond to a 3D stream object of type PRC. 9. where each dictionary represents an instance of a 3D measurement to be displayed in the context of this view.47 as follows. ExtensionLevel 3) An array of 3D measurement/markup dictionaries. ExtensionLevel 3) An array of 3D measurement/markup dictionaries. This value reflects the sole supported value of the Subtype entry in the 3D stream dictionary. The following values are supported: M indicates that the C2W entry specifies the matrix U3D indicates that the U3DPath entry in the 3D stream object is used for the matrix.5.3 3D Views 57 9. See “3D Measurement/Markup Dictionary” on page 62 for the definition of a 3D measurement dictionary. Note: There is no corresponding MS field value for the PRC file format.39 of the PDF Reference. See “3D Measurement/Markup Dictionary” on page 62 for the definition of a 3D measurement dictionary. and add the MA entry in Table 9. the view specified in the 3D artwork is used.39 of the PDF Reference. If omitted. .3 3D Views (Node Dictionaries) Modify the N entry and add three new entries (Instance. Data. MA array (Optional.

as described below: ● U3D. Data text string or stream RM dictionary (Optional. The Instance and Data entries provide a reference to an instance array dictionary within the Instances array.3 “3D Views” of the PDF Reference. (See Section 9. In PDF 1. (ExtensionLevel 1) If the Subtype of the corresponding 3D Stream is PRC. See Section 9. such as the Universal 3D File Format.47 Entries in a 3D node dictionary KEY N TYPE text string VALUE (Required) The name of the node being described by the node dictionary. conforming readers translate between the PDF text encoding used by PDF and the character encoding specified in the 3D stream. (Optional. Note: When comparing this entry to node names for a particular convention. Instance dictionary (Required if Data is present. “3D Views (3D Render Mode Dictionaries)” in PDF Reference. See the Section 9. See the extended description of the Data key in “View Params Dictionary” on page 93. The RM provides the facility of specifying a change in render mode for each node.] The Instances array and additional Data entries are applicable only to 3D nodes within a rich media context . ExtensionLevel 3) A render mode dictionary that specifies the render mode and related properties for this node.5.) ● PRC. Add the following commentary following the paragraph that begins with “The M entry specifies…” on page 830 of the PDF Reference.3 3D Views (Node Dictionaries) 58 TABLE 9. The render mode dictionary is identical to that used by the 3D view dictionary. If omitted.1 “3D Annotations” of the PDF Reference for further information. the render mode of the 3D artwork is used. Interpretation of this entry depends upon the 3D format specified in the Subtype entry in Table 9. this entry is constructed from fields stored in the PRC stream.6. The RM entry to the 3D node dictionary is applicable both for the 3D node structure within a rich media context (see Section 9. The content of Data is passed to and from the Flash run time in a rich media context. see the documentation module “Naming PRC entities for outside PDF referencing” in the PRC Format (see Bibliography). If the Subtype of the corresponding 3D Stream is U3D. and if that is not present.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. ExtensionLevel 3) An indirect object reference to a RichMediaInstance dictionary (see “RichMediaInstance Dictionary” on page 88) that is also referenced by an entry in the Instances array.5.5. this entry corresponds to the field Node block name.35. For information on deriving names from PRC fields.3. ExtensionLevel 3) A text string or stream that contains state data to be passed to the instance when the view is triggered. the render mode specified in the 3D view is used.7.1 RichMedia Annotations on page 76) and within the existing 3D annotations structure. render mode could be specified globally or per view.5. specified in the Universal 3D File Format (See Bibliography.

3D measurements can either be simple 3D markups used to add information to the geometric data shown in a view. in which case they have all the associated functionality of a comment. For viewing purposes. the application may have information from external sources that allows it to determine the units of the data being imported. users can add 3D measurement data to an instance of a 3D artwork. When a 3D measurement is promoted to a comment. This measurement data is stored in a 3D measurement/markup dictionary. it is visible only when that view is selected or active. where each dictionary represents an instance of a 3D measurement to be displayed in the context of this view.4 of the PDF Reference. the mapping states that “m model data units = n real units”. the measurements associated with that view are made visible and previously displayed measurements become invisible. For the creation time and user override units. A 3D measurement can be promoted or demoted to or from comment status. The value of this entry is an array of 3D measurement/markup dictionaries.] The association between 3D measurements and 3D view is realized through the MA entry in a 3D view dictionary (“TABLE 9. and the third defines how the distances are presented. User override units: Units defined by the user after the annotation was created Display units: Units that the user would like used when displaying distances for all newly created measurements.5.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9.] ● ● The 3D Units Dictionary The data associated with a 3D artwork annotation may be defined in an arbitrary 3D coordinate system. a projection annotation (“Projection Annotations” on page 39) is created to manage the comment and its appearance in the comments list. For . In addition to defining the units. [See “The 3D Units Dictionary” on page 59 for more information. which stores the units data for this 3D annotation. A 3DU entry in TABLE 9. An indirect reference to this projection annotation is placed in the 3D measurement dictionary.5. a scaling operation is defined that maps one set of units to another. (3D coordinate systems are discussed in Section 9. see “3D Measurement/Markup Dictionary” on page 62.39 Entries in a 3D view dictionary” on page 57). and each 3D view can contain zero or more 3D measurement dictionaries.6 Persistence of 3D Measurements and Markups Beginning with extension level 3. [See “3D Measurements and Projection Annotations” on page 75. These sets of optional units should be defined: ● ● ● Creation time units: Units known at the time the 3D artwork annotation is created. For more information about 3D measurement dictionaries.5. page 55. There are three key aspects to defining persistent 3D measurements: ● A mechanism to define the units associated with the geometric data being measured.5. the application defines a camera to map these coordinates onto a view surface.) For measurement purposes.6 Persistence of 3D Measurements and Markups 59 Add the next section after Section 9. 9. When a 3D annotation is created. has as its value a 3D units dictionary. The first two definitions assign physical meaning to measured distances. 3D measurements are associated with 3D views. After a measurement is associated with view.5. As different views are displayed.33 Additional entries specific to a 3D annotation. distances are computed in this arbitrary coordinate system and assigned physical meaning by entries in the 3D units dictionary. Later the user may want to either override that definition or control what units data is displayed in. or have an associated comment.

If omitted. A text string specifying a label for displaying the units represented by this dictionary in a user interface. ExtensionLevel 3) The display units n scale value. UU shall exist. DU shall exist. ExtensionLevel 3) The creation time units n scale value. if included. A text string specifying a label for displaying the units represented by this dictionary in a user interface. if included. (Optional.0.5. (Optional. (Optional. if included. ExtensionLevel 3) The creation time units value. UU shall exist. (Optional. TU shall exist. if included. The entries in the 3D units dictionary establish these mappings for each set of units (creation time. DSn defaults to 1. ExtensionLevel 3) The display units m scale value. TSn number TU text string USm number USn number UU text string DSm number DSn number DU text string . user override. TSm defaults to 1.0. if included. ExtensionLevel 3) The creation time units m scale value.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. If omitted. TU shall exist. If omitted. USn defaults to 1. the m and n scale values will be 1. such as meters or inches. If omitted. The 3D Units dictionary is referenced in TABLE 9. ExtensionLevel 3) The user defined units n scale value. ExtensionLevel 3) The user defined units m scale value. ExtensionLevel 3) The user override units value. TABLE 9. USm defaults to 1. A text string specifying a label for displaying the units represented by this dictionary in a user interface. In most cases. ExtensionLevel 3) The display units value. if included.0. and display units). (Optional.0. (Optional. If omitted. It is recommended that the label use a universally recognized abbreviation. TSn defaults to 1. If omitted.6 Persistence of 3D Measurements and Markups 60 the display units.33 Additional entries specific to a 3D annotation as the value of the 3DU entry. (Optional. the mapping states that “m model units = n display units”. It is recommended that the label use a universally recognized abbreviation. (Optional. DSm defaults to 1. DU shall exist.0.0 because most data is defined in some well-known units system.0.33a Entries in a 3D units dictionary KEY TSm TYPE number VALUE (Optional. It is recommended that the label use a universally recognized abbreviation.

Adobe Acrobat SDK
Adobe® Supplement to the ISO 32000

Multimedia Features (Chapter 9 in PDF Reference)
9.5.6 Persistence of 3D Measurements and Markups 61

The following algorithm is used to map model space distances for display in 3D measurements for each of the three sets of units. The following are default values:
n = 1.0 m = 1.0 Units = "Model Units" // a number // a number // a text string

In the algorithm that follows, an entry is defined if it is included in the 3D Units dictionary. Creation time units – The following is the process creation time units definition: If TU is defined, then Units = TU If TSm is defined, then m = TSm If TSn is defined, then n = TSn Note: If either TSm or TSn is defined, TU should be included in the 3D Units dictionary; if TU is not defined in this case, the unit specification is undefined and is ignored. User override units – The following is the process user override units definition: If UU is defined, then Units = UU If USm is defined, then m = USm If USn is defined, then n = USn Note: If either USm or USn is defined, UU should be included in the 3D Units dictionary; if UU is not defined in this case, the unit specification is undefined and is ignored. Display units – The following is the display units definition: If DU is defined, then Units = DU If DSm is defined, then m = m * DSm If DSn is defined, then n = n * DSn Note: If either DSm or DSn is defined, DU should be included in the 3D Units dictionary; if DU is not defined in this case, the unit specification is undefined and is ignored. Finally, if X is a model space distance and Y is the displayed value, the functional relationship between X and Y is given by the equation Y Units = (m/n) * X.

Adobe Acrobat SDK
Adobe® Supplement to the ISO 32000

Multimedia Features (Chapter 9 in PDF Reference)
9.5.6 Persistence of 3D Measurements and Markups 62

3D Measurement/Markup Dictionary
The MA entry of TABLE 9.39 Entries in a 3D view dictionary contains an array of 3D measurement dictionaries, where each dictionary represents an instance of a 3D measurement to be displayed in the context of this view. Each 3D measurement dictionary describes the type of the 3D measurement through the Subtype entry, as well as provides a name for the measurement as it may appear in the user interface of a conforming reader. The entries of the 3D Measurement/Markup dictionary are described in the table that follows. TABLE 9.39a Entries in a 3D measurement/markup dictionary common to all markup subtypes KEY
Type

TYPE name

VALUE (Optional; ExtensionLevel 3) The type of PDF object that this dictionary describes; if present, it shall be 3DMeasure for a 3D measurement dictionary. (Required; ExtensionLevel 3) A name specifying the measurement type for this measurement:

Subtype

name

LD3 – A linear dimension measurement is used to denote the distance between two arbitrary points on a 3D model. See “3D Linear Dimension Measurement” on page 63 for a listing of additional entries in this dictionary. PD3 – A perpendicular dimension measurement is used to denote the

perpendicular distance between two geometric entities (normally two lines or a point and a line). See “3D Perpendicular Dimension Measurement” on page 65 for a listing of additional entries in this dictionary.

AD3 – An angular dimension measurement is used to denote the angle between two linear entities. See “3D Angular Dimension Measurement” on page 67 for a listing of additional entries in this dictionary. RD3 – A radial dimension measurement is used to define the radius or diameter of a circular 3D entity. See “3D Radial Dimension” on page 71 for a listing of additional entries in this dictionary. 3DC – A 3D comment note lets users connect a comment to a specific piece of geometry in the 3D model. See “3D Comment Note” on page 74 for a listing of additional entries in this dictionary.

TRL

text string

(Optional; ExtensionLevel 3) A name string that may be associated with a measurement markup. If omitted, a conforming interactive viewer may create one. Conforming viewers that do not provide a user interface for such elements should ignore this field.

The TRL field contains the current name for the measurement markup. Each measurement markup is assigned a name (“Measurement 1”, “3D Comment 22”, …and so on) when it is created. These names may be shown by an interactive conforming reader so that users can see what measurements are associated with what views. Users can override the initially defined names at any point.

Adobe Acrobat SDK
Adobe® Supplement to the ISO 32000

Multimedia Features (Chapter 9 in PDF Reference)
9.5.6 Persistence of 3D Measurements and Markups 63

3D Linear Dimension Measurement
A 3D linear measurement is a markup showing the distance between two arbitrary points on a 3D model. Here is an example.

FIGURE 9.18 As shown, a 3D linear measurement consists of two filled circles, called anchor points, one at each of the two positions being measured, and a line with an arrowhead on each end connecting the two anchor points (referred to as the measure line). This line is then labeled with a value representing the distance between the two anchor points. In addition to the entries in “TABLE 9.39a Entries in a 3D measurement/markup dictionary” on page 62, the following entries are defined for a 3D measurement dictionary with a Subtype value of LD3 for 3D linear measurement. TABLE 9.39b Additional entries in a 3D measurement/markup dictionary for a 3D linear dimension measurement KEY
AP

TYPE array array

VALUE (Required; ExtensionLevel 3) A three-element array of numbers specifying the 3D annotation plane on which the measurement markup will lie. (Required; ExtensionLevel 3) A three-element array of numbers specifying the model space position of the first anchor point in world space. It is assumed that this is a position on the 3D model associated with this view. (Optional; ExtensionLevel 3) The name of the part (or model tree node) associated with anchor point 1 (A1). The part name is used to verify that the part exists and is visible. If not, the measurement is not displayed. If omitted, no validation occurs. (Required; ExtensionLevel 3) A three-element array of numbers specifying the model space position of the second anchor point in world space. It is assumed that this is a position on the 3D model associated with this view. (Optional; ExtensionLevel 3) The name of the part (or model tree node) associated with anchor point 2 (A2). The part name is used to verify that the part exists and is visible. If not, the measurement is not displayed. If omitted, no validation occurs. (Required; ExtensionLevel 3) A three-element array of numbers specifying the text anchor point for the measurement value string.

A1

N1

text string

A2

array

N2

text string

TP

array

V number (Required. called the text Y direction. if P is not specified.6 Persistence of 3D Measurements and Markups 64 TABLE 9. ExtensionLevel 3) A three-element array of numbers specifying the up direction vector.0 that represent the RGB color of the measurement markup. S dictionary FIGURE 9. shown for the measurement value (V). The default value is the array [1 1 1]. This value is converted to a text string and displayed as part of the measurement text string. The lower left corner of the text box is positioned at the text anchor point (TP). ExtensionLevel 3) The number of decimal digits. See “3D Measurements and Projection Annotations” on page 75. Note that measurement text is zoom invariant. that represents the units for the measurement. for the text string presenting the measurement value string. called the units string. ExtensionLevel 3) A numeric value representing a measurement value. If omitted. (Required. ExtensionLevel 3) A number representing the measurement text string height defined in points in the default user space. (Optional. The default is 12 points.5. ExtensionLevel 3) An array of three numbers in the range 0.19 depicts some of the parameters for a 3D linear measurement. (Optional. which represents the precision.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. no string is appended.39b Additional entries in a 3D measurement/markup dictionary for a 3D linear dimension measurement KEY TY TYPE array VALUE (Required. FIGURE 9. TS number C array (Optional. (Optional. ExtensionLevel 3) A comment reference is an indirect reference to a projection annotation that may be associated with this 3D measurement. The default is 3. ExtensionLevel 3) A string defined by the user that is appended to the end of the measurement value string. representing the color white.0 to 1. U text string integer P UT text string (Optional.19 . ExtensionLevel 3) A string. The value text is drawn on the annotation plane (AP) where the horizontal text path is defined by the vector from A1 to A2 with the text up direction defined by the vector TY.

a perpendicular measurement markup consists of two filled circles at the anchor points. There is also a labeled line with arrowheads on both sides (referred to as the measure line) indicating that the distance shown is the perpendicular distance between the two parallel lines. (Required. This process is viewer dependent.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. If not. The viewer should convert the numeric value to a string and combine it with the units string and user text as appropriate. ExtensionLevel 3) A three-element array of numbers specifying the model space position of the first anchor point in world space. If the text position TP is outside the area between A1 and A2. a units string (U). 3D Perpendicular Dimension Measurement A perpendicular measurement is used to denote the perpendicular distance between two geometric entities (normally two lines or a point and a line) as illustrated here.5. There are three parts to the text string displayed with the measurement. no validation occurs. an extension line collinear to the measure line connecting TP to the closest anchor point is generated. the measurement is not displayed. If omitted. a numeric value (V ). FIGURE 9. TABLE 9. The display of the numeric value field number is also controlled by the precision value (P). which indicates how many digits to display to the right of the decimal point. A1 N1 text string . The part name is used to verify that the part exists and is visible. (Optional.6 Persistence of 3D Measurements and Markups 65 The actual Y-axis is formed by taking the cross product of AP and (A2 . and an optional user string (UT ).39c Additional entries in a 3D measurement/markup dictionary for a 3D perpendicular dimension measurement KEY AP TYPE array array VALUE (Required. ExtensionLevel 3) A three-element array of numbers specifying the 3D annotation plane on which the measurement markup will lie. In addition to the entries in “TABLE 9. the following entries are defined for a 3D measurement dictionary with a Subtype value of PD3 for 3D perpendicular measurement.A1) the vector TY is used only to determine the orientation of this Y-axis.20 In these figures. It is assumed that this is a position on the 3D model associated with this view.39a Entries in a 3D measurement/markup dictionary” on page 62. ExtensionLevel 3) The name of the part (or model tree node) associated with anchor point 1 (A1). two parallel extension lines (referred to as leader lines) starting at the anchor points and extending away from the anchor points.

(Required. representing the color white. N2 text string D1 array TP array array TY TS number C array (Optional. representing the RGB color of the measurement markup.6 Persistence of 3D Measurements and Markups 66 TABLE 9. U text string integer P .39c Additional entries in a 3D measurement/markup dictionary for a 3D perpendicular dimension measurement KEY A2 TYPE array VALUE (Required. (Required.5.0. The default value is the array [1 1 1]. ExtensionLevel 3) A three-element array of numbers specifying the direction vector for leader lines associated with the anchor points (A1 and A2). no validation occurs. Note that measurement text is zoom invariant. If not. for the text string presenting the measurement value string. called the text Y direction. (Optional. ExtensionLevel 3) An array of three numbers in the range 0.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. ExtensionLevel 3) A three-element array of numbers specifying the up direction vector. If omitted. ExtensionLevel 3) A three-element array of numbers specifying the model space position of the second anchor point in world space. ExtensionLevel 3) A numeric value representing a measurement value. shown for the measurement value (V). ExtensionLevel 3) A string. The default is 12 points. ExtensionLevel 3) A three-element array of numbers specifying the text anchor point for the measurement value string. called the units string. representing the units for the measurement. The part name is used to verify that the part exists and is visible. This value is converted to a text string and displayed as part of the measurement text string. It is assumed that this is a position on the 3D model associated with this view. (Optional. ExtensionLevel 3) The name of the part (or model tree node) associated with anchor point 2 (A2).0 to 1. which represents the precision. (Required. ExtensionLevel 3) A number representing the measurement text string height defined in points in the default user space. V number (Required. the measurement is not displayed. if P is not specified. (Required. (Optional. ExtensionLevel 3) The number of decimal digits. The default is 3.

FIGURE 9.6 Persistence of 3D Measurements and Markups 67 TABLE 9. This process is viewer dependent. The viewer should convert the numeric value to a string and combine it with the units string and user text as appropriate. an extension line collinear to the measure line connecting TP to the closest anchor point is generated. as shown here. ExtensionLevel 3) A comment reference is an indirect reference to a projection annotation that may be associated with this 3D measurement. a units string (U). The lower-left corner of the text box is positioned at the text anchor point (TP).21 shows the measure markup and parameters. (Optional. S dictionary The following figure illustrates the parameters associated with the perpendicular dimension. no string is appended. If omitted. and an optional user string (UT ). the text anchor point (TP) also controls the lengths of the leader lines and the placement of the measure line.39c Additional entries in a 3D measurement/markup dictionary for a 3D perpendicular dimension measurement KEY UT TYPE text string VALUE (Optional. which indicates how many digits to display to the right of the decimal point. The text's up direction is defined as the cross product of the annotation plane normal and the text X-axis. The text will flow in the direction defined by a vector from A1 to A2. If the text position TP is outside the area between A1 and A2.21 FIGURE 9. The display of the numeric value field number is also controlled by the precision value (P).Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. the intersection of the leader lines and the measure line is easily computed. in the direction defined by the TY parameter. See “3D Measurements and Projection Annotations” on page 75. 3D Angular Dimension Measurement An angular measurement is used to denote the angle between two linear entities. There are three parts to the text string displayed with the measurement: a numeric value (V ). ExtensionLevel 3) A string defined by the user that is appended to the end of the measurement value string. In addition to controlling text position. The text layout is defined in a similar manner as for linear dimensions. Because the leader lines are parallel and the measure line must be perpendicular to both leader lines. All the markup items are drawn on the annotation plane (as defined by AP).5. . and the text's X-axis is aligned with the measure line.

connects the two extension lines.39a Entries in a 3D measurement/markup dictionary” on page 62. TABLE 9. with an arrowhead at each end. (Optional. A1 D1 array N1 text string A2 array D2 array . (Required.22 An angular measurement markup consists of two anchor points.6 Persistence of 3D Measurements and Markups 68 FIGURE 9. no validation occurs. ExtensionLevel 3) A three-element array of numbers specifying the direction vector for the leader line associated with the second anchor point (A2). FIGURE 9.39d Additional entries in a 3D measurement/markup dictionary for a 3D angular dimension measurement KEY AP TYPE array array VALUE (Required. ExtensionLevel 3) A three-element array of numbers specifying the direction vector for the leader line associated with the first anchor point (A1). the following entries are defined for a 3D measurement dictionary with a Subtype value of AD3 for 3D angular measurement.22. (Required. ExtensionLevel 3) A three-element array of numbers specifying the 3D annotation plane on which the measurement markup lies. The part name is used to verify that the part exists and is visible. ExtensionLevel 3) The name of the part (or model tree node) associated with anchor point 1 (A1).5. ExtensionLevel 3) A three-element array of numbers specifying the model space position of the first anchor point in world space.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. In addition to the entries in “TABLE 9. It is assumed that this is a position on the 3D model associated with this view. making it clear which angle is being measured. the measurement is not displayed. one located on each of the two linear entities whose angle is being measured. Connected to each anchor point is an extension line that is collinear with the edge it measures. (Required. If not. A labeled arc. It is assumed that this is a position on the 3D model associated with this view. (Required. If omitted. ExtensionLevel 3) A three-element array of numbers specifying the model space position of the second anchor point in world space.

ExtensionLevel 3) A numeric value representing a measurement value.0 to 1. representing the RGB color of the measurement markup.39d Additional entries in a 3D measurement/markup dictionary for a 3D angular dimension measurement KEY N2 TYPE text string VALUE (Optional. (Optional. for the text string presenting the measurement value string. ExtensionLevel 3) A comment reference is an indirect reference to a projection annotation that may be associated with this 3D measurement. The default is true. no validation occurs. no string is appended. If omitted. P integer UT text string (Optional. (Required. The part name is used to verify that the part exists and is visible. DR boolean S dictionary (Optional. If DR is true. If not. ExtensionLevel 3) A three-element array of numbers specifying the text anchor point for the measurement value string. ExtensionLevel 3) An array of three numbers in the range 0. Note that measurement text is zoom invariant. (Optional. (Required. (Optional. The default is 12 points. if P is not specified.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. angular measurements are shown in degrees. ExtensionLevel 3) The number of decimal digits. representing the color white. shown for the measurement value (V). This value is converted to a text string and displayed as part of the measurement text string.0. ExtensionLevel 3) A flag that indicates whether degrees or radians are shown in angular measurements. TP array array TX TY array TS number C array (Optional. ExtensionLevel 3) A number representing the measurement text string height defined in points in the default user space. ExtensionLevel 3) The name of the part (or model tree node) associated with anchor point 2 (A2). V number (Required. called the text Y direction. the measurement is not displayed. .5. ExtensionLevel 3) A three-element array of numbers specifying the horizontal direction vector for the text string presenting the measurement value string. The default is 3. (Required. ExtensionLevel 3) A string defined by the user that is appended to the end of measurement value string.6 Persistence of 3D Measurements and Markups 69 TABLE 9. which represents the precision. ExtensionLevel 3) A three-element array of numbers specifying the up direction vector. If omitted. See “3D Measurements and Projection Annotations” on page 75. The default value is the array [1 1 1].

There are some special cases: ● ● Parallel direction vectors (D1 and D2) are invalid. a degrees or radians string (U). The angular measurement markup is generated by first computing the center point of the angle.5. FIGURE 9. This process is viewer dependent. The angle arc center is at the center point cp (and its radius is ||TP . The display of the numeric value field number is also controlled by the precision value (P). which is the intersection of the angle arc and the extension line. cp in this figure. the placement of the angle arc. There are three parts to the text string displayed with the measurement: a numeric value (V ). If the text position TP is outside the cone of the angle. The lower-left corner of the text box is positioned at the text anchor point (TP). The markup text is displayed (based on the text orientation parameters) with the lower-left corner of the text string starting at the text position (TP). The measurement value is interpreted as either being in degrees or radians as defined by the (DR) value. The text layout is defined in a similar manner as for other dimensions.23) and is the angle between the leader direction vectors (D1 and D2). The extension lines are drawn from the anchor point to a point at a distance ||TP-cp|| from the center point cp along the associated direction vector. and the length and direction of the extension lines. The text's up direction is defined as the cross product of the annotation plane normal and the text X-axis.23 The angle is defined by the measurement value V (30 in the FIGURE 9. and an optional user string (UT ).Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. The text position (TP) controls the position of the measurement text. and no markup is generated. which indicates how many digits to display to the right of the decimal point. and the text's X-axis is defined by the vector TX. . in the direction defined by the TY parameter.6 Persistence of 3D Measurements and Markups 70 The key geometric parameters for an angular dimension are shown here. Note that the vector TX is expected to be orthogonal with the annotation plane normal. an extension line is added to connect the text with the angle arc.cp||) and is drawn between the two extensions lines. The viewer should convert the numeric value to a string and combine it with the degrees or radians string and user text as appropriate. and the appropriate label string is created.

as in the figure on the right. the measure value is preceded by an “R” in the measure string.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. The part name is used to verify that the part exists and is visible. in world space. called the circle center point. (Optional.39a Entries in a 3D measurement/markup dictionary” on page 62. In addition to the entries in “TABLE 9. ExtensionLevel 3) A three-element array of numbers specifying the 3D annotation plane on which the measurement markup lies. FIGURE 9. ExtensionLevel 3) A three-element array of numbers specifying the model space position of the second anchor point.6 Persistence of 3D Measurements and Markups 71 3D Radial Dimension The radial measurement is used to define the radius or diameter of a circular 3D entity.39e Additional entries in a 3D measurement/markup dictionary for a 3D radial dimension measurement KEY AP TYPE array array VALUE (Required.24 As shown on the left. which is a point on the arc. the following entries are defined for a 3D measurement dictionary with a Subtype value of RD3 for 3D radial measurement. the measure value is preceded by a Greek phi symbol (  ). If the arrow is positioned such that it is off the underlying arc. the basic markup for a radial dimension consists of an arrow pointing to a circle or arc that is connected to a leader line and text label that defines the radius or diameter. If omitted. It is assumed that this is a position on the 3D model associated with this view. an extension arc is generated that clarifies which arc is being measured. no validation occurs. For diameter values.5. in world space. (Required. If not. TABLE 9. The following figure illustrates two examples of a radial dimension. ExtensionLevel 3) A three-element array of numbers specifying the model space position of the first anchor point. ExtensionLevel 3) The name of the part (or model tree node) associated with anchor point 2 (A2). A1 A2 array N2 text string . (Required. the measurement is not displayed. It is assumed that this is a position on the 3D model associated with this view. For radius measurements.

(Required. ExtensionLevel 3) A number representing the measurement text string height defined in points in the default user space. See FIGURE 9. ExtensionLevel 3) A three-element array of numbers that defines the start of the arc being measured. representing the RGB color of the measurement markup. if P is not specified. See FIGURE 9. (Optional. no string is appended. ExtensionLevel 3) A numeric value representing a measurement value.5. ExtensionLevel 3) A three-element array of numbers specifying the text anchor point for the measurement value string. C array (Optional. The default is 60 points.0 to 1. ExtensionLevel 3) A three-element array of numbers specifying the up direction vector for the text string presenting the measurement value string. shown for the measurement value (V). The default to 3. U text string integer P UT text string (Optional.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. This entry is required if the geometry being measured is an arc. representing the color white. The default value is the array [1 1 1]. A4 array TP array array TX TY array EL number TS number (Optional. ExtensionLevel 3) A string defined by the user that is appended to the end of measurement value string. If omitted. V number (Required. ExtensionLevel 3) A string representing the units for the measurement. ExtensionLevel 3) A three-element array of numbers that defines the end of the arc being measured. (Required. This entry is required if the geometry being measured is an arc.6 Persistence of 3D Measurements and Markups 72 TABLE 9.26 for a visual representation of A3. (Required for arcs only. (Optional. . (Required. This value is converted to a text string and displayed as part of the measurement text string.0. ExtensionLevel 3) The length of the extension line in points. The default is 12 points. ExtensionLevel 3) A three-element array of numbers specifying the horizontal direction vector for the text string presenting the measurement value string. ExtensionLevel 3) The number of decimal digits. which represents the precision. Note that measurement text is zoom invariant.39e Additional entries in a 3D measurement/markup dictionary for a 3D radial dimension measurement KEY A3 TYPE array VALUE (Required for arcs only. ExtensionLevel 3) An array of three numbers in the range 0.26 for a visual representation of A4. (Required.

25 The circle being measured is defined by two points lying on the annotation plane. or arc. as opposed to a diameter value. in the direction defined by the TY parameter.26. the measurement value associated with a radial measurement represents a radius. the measurement value represents a radius. a circle center A1. . FIGURE 9.39e Additional entries in a 3D measurement/markup dictionary for a 3D radial dimension measurement KEY SC TYPE boolean VALUE (Optional. ExtensionLevel 3) A flag that indicates whether the underlying circle. The text's up direction is defined as the cross product of the annotation plane normal and the text X-axis. The arrow line is drawn from the text position (TP) to the intersection point between the circle and a line from text position to the circle center. S dictionary (Optional. The extension line will be drawn from the text position (TP) in the direction of the text string's X-axis (TX). and the extension line. R boolean (Optional. The parameters for defining the radial measurement for a circle are shown here. ExtensionLevel 3) A flag that indicates whether the measurement value is for a radius or a diameter. and a point on the circle A2. If true. The default is false. The parameters for defining a radial dimension for an arc are very similar. The default is true.5. ExtensionLevel 3) A comment reference is an indirect reference to a projection annotation that may be associated with this 3D measurement. the arrow line orientation. the text position (TP) controls the text string position. is shown or not. Note that the vector TX is expected to be orthogonal with the annotation plane normal. If true. The left center of measure value string will begin at the end of the extension line. as shown in FIGURE 9. the underlying circle associated with a radial dimension is displayed.6 Persistence of 3D Measurements and Markups 73 TABLE 9. The length of the extension line is defined by the EL parameter. See “3D Measurements and Projection Annotations” on page 75.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. not to show the circle. For radial measurement. Note: The circle or arc is redrawn in the markup color (C).

the following entries are defined for a 3D measurement dictionary with a Subtype value of 3DC for 3D comment note.26.39f Additional entries in a 3D measurement/markup dictionary for a 3D comment note KEY A1 TYPE array VALUE (Required. N1 text string .5. There are three parts to the text string displayed with the measurement: a numeric value (V ). which indicates how many digits to display to the right of the decimal point. This process is viewer dependent. and an optional user string (UT ). no validation occurs. (Optional. the text position can be defined such that an extension arc. shown in red in FIGURE 9. The text box is rendered so that the text is always facing the user. ExtensionLevel 3) The name of the part (or model tree node) associated with anchor point 1 (A1). the measurement is not displayed. If not. a units string (U). It is assumed that this is a position on the 3D model associated with this view. Commenting functionality is specified by creating a projection annotation that represents the 3D measurement/markup within the commenting system. ExtensionLevel 3) A three-element array of numbers specifying the model space position of the first anchor point in world space. The markup consists of a leader line that connects the model to a text box placed in the 3D scene.26 The key difference for an arc is that there are two addition points defining the start (A3) and end (A4) position for the arc. TABLE 9. See “3D Measurements and Projection Annotations” on page 75 for additional details. In addition to the entries in “TABLE 9. Additionally for an arc. The display of the numeric value field number is also controlled by the precision value (P).Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9.6 Persistence of 3D Measurements and Markups 74 FIGURE 9. If omitted.39a Entries in a 3D measurement/markup dictionary” on page 62. The viewer should convert the numeric value to a string and combine it with the units string and user text as appropriate. shall be generated. with an arrowhead on either end. 3D Comment Note 3D comment notes let users connect a comment to a specific piece of geometry in the 3D model. The part name is used to verify that the part exists and is visible.

(Optional. (Optional. ExtensionLevel 3) An array of three numbers in the range 0. 3D Measurements and Projection Annotations Associations between a 3D measurement and a projection annotation are created by defining an indirect reference to a dictionary in both the projection annotation and the 3D measurement.0. the y value is the number of rows of text. The default is 12 points. ExtensionLevel 3) A two-element integer array defining the x and y size of the text box to contain the user text string (UT). page 131. UT text string dictionary (Optional. ExtensionLevel 3) A three-element array of numbers specifying the text anchor point for the measurement value string.5. ExtensionLevel 3) The string displayed as the contents of the 3D comment note. S The first anchor point (A1) defines the connection to the model. though a monospaced font is recommended.39f Additional entries in a 3D measurement/markup dictionary for a 3D comment note KEY TP TYPE array array VALUE (Required. the ExData entry (an external data dictionary) is defined and used to manage the association between the 3D measurement and the comment. ExtensionLevel 3) A comment reference is an indirect reference to a projection annotation that may be associated with this 3D measurement. Note that measurement text is zoom invariant.0 to 1.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. The user string field contains the text to be fitted into the text box.39g Entries in the external data dictionary of . it may be truncated. representing the color white. See implementation note E-10. TB TS number C array (Optional.6 Persistence of 3D Measurements and Markups 75 TABLE 9. The conforming reader may also choose any font in which to render the content. (Optional. If the entire string does not fit. Projection annotation: When the projection annotation (see “Projection Annotations” on page 39) is created. representing the Device RGB color of the measurement markup. The default value is the array [1 1 1]. See “3D Measurements and Projection Annotations” on page 75. The conforming reader is free to flow the text in the text box as appropriate. The x value is defined as a number of characters shown in the x direction (the top row). TABLE 9. The model space text position TP field defines placement of the corner of the text box that lies closest to anchor point 1 (A1) in the current view. ExtensionLevel 3) The text size – a number representing the measurement text string height defined in points in the default user space.

The RichMediaSettings dictionary is unique to each annotation. including Flash video and compatible variations on the H. It improves upon the existing 3D annotation structure to support multiple multimedia file assets.49 shows the additional annotation entries specific to this type of annotation. There is support for generalized linking of a Flash application state to a comment or view. 9. ExtensionLevel 3) The type of external data that this dictionary describes. shall be 3DM for an association to a 3D measurement. Flash applications. ExtensionLevel 3) The type of PDF object that this dictionary describes. shall be ExData for an external data dictionary.6 Rich Media Extension level 3 introduces rich media PDF constructs that support playing a SWF file and provide enhanced rich media.6 Rich Media 76 a projection annotation describes the entries in the external data dictionary of the projection annotation that are used for referencing a 3D measurement. but the RichMediaContent dictionary can be shared across rich-media annotations. audio.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9.) Table 9. and other multimedia can be attached to a PDF with expanded functionality. video. ExtensionLevel 3) An indirect reference to a 3D measurement dictionary for which this projection annotation is a comment. See “Projection Annotations” on page 39. TABLE 9.5 of the PDF Reference. which enables video commenting. With rich media annotation. (Required.6. (See implementation note E-12 on page 131. Subtype name M3DREF dictionary Add the Section 9. .1 RichMedia Annotations The annotation subtype RichMedia shares many low-level structural similarities with the 3D Artwork defined in Section 9. At the top level. actions can be linked to video chapter points. 9.39g Entries in the external data dictionary of a projection annotation KEY Type TYPE name VALUE (Required. 3D measurement: The value of the S entry in the 3D measurement dictionary is an indirect reference to a projection annotation dictionary of the associated comment. The new constructs allow a two-way scripting bridge between Flash and a conforming application. if present. The rich media annotation can contain any of the entries of an annotation dictionary. (Required. the rich media annotation has two primary custom structures.6 on Rich Media content.264 format. Finally.

ExtensionLevel 3) A RichMediaContent dictionary that stores the rich media artwork and information as to how it should be configured and viewed. Inactive: (the default initial state) The annotation displays the normal appearance of the annotation. on page 86. Typically. the first configuration is loaded. Active: The annotation displays a rendering of the artwork.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. . beginning with the RichMediaSettings dictionary and its subcomponents.1 RichMedia Annotations 77 TABLE 9. See “RichMediaContent dictionary” on page 86.) The subsequent sections describe the structural components of a rich media annotation.50 Entries in a RichMediaSettings dictionary” on page 78.5. the normal appearance is a 2D bitmap portraying a rendering of the default view of the artwork within the RichMedia annotation. RichMedia annotations can be in one of two states. This rendering is specified by the annotation’s RichMediaSettings entry. (See “TABLE 9. Default value: If no RichMediaSettings dictionary is present. The name shall be RichMedia for a rich media annotation. (Optional. followed by the RichMediaContent dictionary.49 Additional entries specific to a RichMedia annotation KEY Subtype TYPE name VALUE (Required. See the “Extended Example” on page 94 for a detailed and comprehensive example of a rich media annotation. ExtensionLevel 3) A RichMediaSettings dictionary that stores conditions and responses that determine when the annotation should be activated and deactivated and the initial state of artwork in those states. As with 3D annotations defined in Section 9. and its subcomponents. RichMediaSettings dictionary RichMediaContent dictionary (Required. sixth edition.1 of the PDF Reference. See “RichMediaSettings Dictionary” on page 78.6. ExtensionLevel 3) The type of annotation that the dictionary describes.

6. each script in the array is executed in order in a common environment per annotation by the rich media run time JavaScript interpreter. ExtensionLevel 3) The type of PDF object that this dictionary describes. .50 Entries in a RichMediaSettings dictionary KEY Type TYPE name VALUE (Optional. such as activation and deactivation of the annotation. default script behavior. shall be RichMediaSettings for a RichMediaSettings dictionary. default script behavior.51 Entries in a RichMediaContent dictionary” on page 86) that acts as the default view for the annotation. and contains two dictionaries. The RichMediaSettings dictionary stores the conditions and responses that occur in response to certain events.50 gives the details of the content of this dictionary. Table 9.50b) that specifies the condition and type of unloading (restart or pause) that occurs during deactivation. (Optional. ExtensionLevel 3) A RichMediaActivation dictionary (see Table 9. The activation dictionary includes a script array. Table 9. (Optional. If not specified.5. and animation style when the annotation is activated. Activation dictionary Deactivation dictionary RichMediaActivation Dictionary The RichMediaActivation dictionary specifies the style of presentation. default view information. If present. TABLE 9. and animation style when the annotation is activated.50a) that specifies the style of presentation. There is an optional reference to a view in the scene’s Views array (see “TABLE 9. Each element contains an indirect object reference to file specification objects that are also referenced by the Assets name tree of the RichMediaContent dictionary (See “RichMediaContent dictionary” on page 86.50a details the contents of the dictionary.1 of the PDF Reference.) When the annotation is activated. default view information. ExtensionLevel 3) A RichMediaDeactivation dictionary (see Table 9.1 RichMedia Annotations 78 RichMediaSettings Dictionary The RichMediaSettings dictionary has a purpose similar to that of the 3DA dictionary with the 3D Annotation described in Section 9.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9.

. TABLE 9.6. (See “TABLE 9.50a Entries in a RichMediaActivation dictionary KEY Type TYPE name VALUE (Optional. View dictionary Configuration dictionary (Optional. Animation dictionary (Optional. default values are used for all camera and display parameters. (Optional. ExtensionLevel 3) A name that specifies the circumstances under which the annotation should be activated. The following values are valid: ● Condition name XA. ExtensionLevel 3) An indirect object reference to a 3D view dictionary that shall also be referenced by the Views array within the annotation’s RichMediaContent dictionary. the annotation is activated as soon as any part of the ● ● page that contains the annotation becomes visible. (See “RichMediaContent dictionary” on page 86. If present.5. PO. (See “TABLE 9.) (Optional. the annotation is activated as soon as the page that contains the annotation receives focus as the current page. Only one page is the current page although several are visible.50c Entries in a RichMediaAnimation dictionary” on page 81.51 Entries in a RichMediaContent dictionary” on page 86. shall be RichMediaActivation for an activation dictionary.1 RichMedia Annotations 79 the first view in the views array is used. default values for the components of a 3D view dictionary (see Section 9. ExtensionLevel 3) The type of PDF object that this dictionary describes.51 Entries in a RichMediaContent dictionary” on page 86. Default value: XA.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. One example is in a multiple-page presentation. PV.) Default value: The first element within the Configurations array specified in the RichMediaContent dictionary. (See “TABLE 9. If there are no views specified.) If a Views array does not exist.) Default value: The first element in the Views array of the annotation specified in the RichMediaContent dictionary. the annotation is explicitly activated by a user action or script. ExtensionLevel 3) A RichMediaAnimation dictionary that describes the preferred method that conforming readers should use to drive keyframe animations present in this artwork.3 of the PDF Reference) are used. ExtensionLevel 3) An indirect object reference to a RichMediaConfiguration dictionary that shall also be referenced by the Configurations array in the RichMediaContent dictionary.

50c. .50b Entries in a RichMediaDeactivation dictionary KEY Type TYPE name VALUE (Optional. PI. It can also specify that keyframe animations be played repeatedly. the annotation is explicitly deactivated by a user action or script.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9.6. ExtensionLevel 3) A RichMediaPresentation dictionary that contains information as to how the annotation and user interface elements will be visually laid out and drawn. page 78) can specify a RichMediaAnimation dictionary. Scripts array RichMediaDeactivation Dictionary The second component of the RichMediaSettings dictionary is the RichMediaDeactivation dictionary. each of which describe a JavaScript file that shall be present in the Assets name tree of the RichMediaContent dictionary. ExtensionLevel 3) A name specifying the circumstances under which the annotation should be deactivated. ExtensionLevel 3) The type of PDF object that this dictionary describes. the annotation is deactivated as soon as the entire page that contains the annotation is no longer visible. The Animation entry of the RichMediaActivation dictionary (Table 9. The following values are valid: ● Condition name XD. See Table 5 for a detailed description. no script is executed. Default value: If the array has no elements. RichMediaAnimation Dictionary A RichMediaAnimation dictionary specifies the preferred method that conforming readers should use to apply timeline scaling to keyframe animations. the annotation is deactivated as soon as the page that contains the annotation loses focus as the current page. PC. (Optional.1 RichMedia Annotations 80 TABLE 9. TABLE 9. which specifies the condition that causes deactivation of the annotation.50a Entries in a RichMediaActivation dictionary KEY Presentation TYPE dictionary VALUE (Optional. If present. ExtensionLevel 3) An array of indirect object references to file specification dictionaries. ● ● Default value: XD. (Optional. shall be RichMediaDeactivation for a RichMediaDeactivation dictionary.

and Oscillating. Default value: 1 Example: A RichMediaSettings dictionary 20 0 obj % RichMediaSettings dictionary << /Type /RichMediaSettings /Activation << /Type /RichMediaActivation % RichMediaActivation Dictionary /Condition /XA /Configuration 14 0 R % Reference to element in Configurations array /View 19 0 R % Reference to element in Views array /Animation % RichMediaAnimation dictionary << /Type /RichMediaAnimation /Subtype /Linear /Speed 1 /PlayCount -1 >> /Presentation 21 0 R . the type shall be RichMediaAnimation for an animation dictionary. A negative integer indicates that the animation is infinitely repeated.6. This value is ignored for an animation subtype of type None. Valid values are None. Default value: -1 Speed number (Optional.50c Entries in a RichMediaAnimation dictionary KEY Type TYPE name VALUE (Optional. See Table 9. PDF 1. ExtensionLevel 3) The type of PDF object that this dictionary describes. This value is ignored for an animation subtype of type None.1 RichMedia Annotations 81 A keyframe animation can be provided as part of Flash or 3D model content. TABLE 9. Keyframe animation is an interactive feature that is highly dependent on the behavior and controls provided by the conforming reader.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. ExtensionLevel 3) The animation style described by this dictionary. sixth edition. or effectively speeds up the animation. If present. Default value: None Subtype name PlayCount integer (Optional.37 of the PDF Reference. for descriptions of these animation styles. If an animation style is encountered other than those described. Table 9. ExtensionLevel 3) An integer specifying the play count for this animation style.50c shows the entries in a RichMediaAnimation dictionary. (Optional. This allows authors to change the desired speed of animations without re-authoring the content. Linear. an animation style of None is used.7. ExtensionLevel 3) A positive number specifying the speed to be used when running the animation. A value greater than one shortens the time it takes to play the animation. A nonnegative integer represents the number of times the animation is played.

The value can be Embedded or Windowed.1 RichMedia Annotations 82 /Scripts [ 32 0 R 33 0 R ] % References to scripts in Resources name tree >> /Deactivation % RichMediaDeactivation dictionary << /Type /RichMediaDeactivation /Condition /XD >> >> endobj RichMediaPresentation Dictionary The RichMediaPresentation dictionary contains information about how the annotation and user interface elements are to be visually laid out and drawn. and it will only take effect if the RichMediaConfiguration subtype is 3D.5. shall be RichMediaPresentation for a presentation dictionary. ExtensionLevel 3) The style of presentation of the rich media.51a Entries in a RichMediaConfiguration dictionary” on page 88. the default dimensions and position of the window may be given. See “RichMediaWindow Dictionary” on page 84 for a detailed description. A conforming reader shall support the state Embedded. (Optional. The visibility of the Toolbar is specified. If present.50d contains a description of each element.6. Default value: Embedded. . sixth edition. If a Windowed state is chosen.50d Entries in a RichMediaPresentation dictionary KEY Type TYPE name VALUE (Optional. ExtensionLevel 3) A RichMediaWindow Dictionary that describes the size and position of the floating user interface window when the value for Style is set to Windowed. (See “TABLE 9.1. Style name Window dictionary (Optional.) User interface items such as the navigation pane can be displayed or hidden by default. “3D Annotations” of the PDF Reference. The navigation pane is a user interface item used to display the hierarchical relationship of entities within the artwork. (See Section 9. TABLE 9.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. Table 9.) The Style of the annotation can be presented Embedded within the PDF page or separately Windowed. ExtensionLevel 3) The type of PDF object that this dictionary describes.

) . If false. ExtensionLevel 3) A flag that indicates the default behavior of an interactive toolbar associated with this annotation. If false. ExtensionLevel 3) A flag that indicates the default behavior of the navigation pane user interface element. the rich media artwork is composited over the page content using an alpha channel. an explicit context-menu keyboard key or the combination of a mouse click and a keyboard modifier key.50d Entries in a RichMediaPresentation dictionary KEY Transparent TYPE boolean VALUE (Optional. Default value: false Note: A context click is usually generated by a mouse right-click although it may be invoked by other means. Default value: true for content of Subtype 3D.0). The toolbar should be positioned in proximity to the annotation. ExtensionLevel 3) A flag that indicates whether a context click on the rich media annotation is passed to the media player run time or is handled by the conforming reader.) Default value: false NavigationPane boolean (Optional. If true. PassContextClick boolean (Optional. This can include. page 131. the conforming reader’s context menu is not visible. the rich media artwork is drawn over an opaque background prior to composition over the page content. (See also implementation note E-13. a toolbar is not displayed by default. and false otherwise. a toolbar is displayed when the annotation is activated and given focus. If false. the navigation pane is not displayed by default. but is not limited to. the navigation pane is visible when the content is initially activated.6. ExtensionLevel 3) A flag that indicates whether the page content is displayed through the transparent areas of the rich media content (where the alpha value is less than 1. If true. If false. If true. the conforming reader handles the context click.1 RichMedia Annotations 83 TABLE 9. and the user sees the context menu and any custom items generated by the media player run time.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. If true. Default value: false Toolbar boolean (Optional.

Adobe Acrobat SDK
Adobe® Supplement to the ISO 32000

Multimedia Features (Chapter 9 in PDF Reference)
9.6.1 RichMedia Annotations 84

RichMediaWindow Dictionary
The RichMediaWindow dictionary stores the dimensions and position of the floating window presented to the user. It is used only if Style (RichMediaPresentation dictionary, page 82) is set to Windowed. The window described is a non-printing user interface element. A conforming reader constrains the window extent to be within the presentation area of the reader. All coordinates are expressed in default user space units although do not rotate or scale the window to match the orientation and magnification of the page. The expected behavior is similar to when the flags NoZoom and NoRotate are set to true. (See Section 8.4.2, “Annotation Flags” in PDF Reference, sixth edition.) Table 9.50e details the contents of this dictionary. TABLE 9.50e Entries in a RichMediaWindow dictionary KEY
Type

TYPE name

VALUE (Optional; ExtensionLevel 3) The type of PDF object that this dictionary describes. If present, shall be RichMediaWindow for a RichMediaWindow dictionary. (Optional; ExtensionLevel 3) A dictionary with keys Default, Max, and Min describing values for the width of the Window in default user space units. Default values: Default is 288, Max is 576, and Min is 72

Width

dictionary

Height

dictionary

(Optional; ExtensionLevel 3) A dictionary with keys Default, Max, and Min describing values for the width of the Window in default user space units. Default values: Default is 216, Max is 432, and Min is 72

Position

dictionary

(Optional; ExtensionLevel 3) A RichMediaPosition dictionary describing the position of the RichMediaWindow. See Table 9.50e for a detailed description.

The position of the window in the reader presentation area is described by the RichMediaPosition dictionary. The position of the window remains fixed, regardless of the page translation. Table 9.50f details the contents of this dictionary. TABLE 9.50f Entries in a RichMediaPosition dictionary KEY
Type

TYPE name

VALUE (Optional; ExtensionLevel 3) The type of PDF object that this dictionary describes. If present, it shall be RichMediaPosition for a RichMediaPosition dictionary. (Optional; ExtensionLevel 3) Describes the horizontal alignment. Valid values are Near, Center, and Far. Default value: Far

HAlign

name

Adobe Acrobat SDK
Adobe® Supplement to the ISO 32000

Multimedia Features (Chapter 9 in PDF Reference)
9.6.1 RichMedia Annotations 85

TABLE 9.50f Entries in a RichMediaPosition dictionary KEY
VAlign

TYPE name

VALUE (Optional; ExtensionLevel 3) Describes the vertical alignment. Valid values are Near, Center, and Far. Default value: Near

HOffset

number

(Optional; ExtensionLevel 3) The offset from the alignment point specified by the HAlign key. A positive value for HOffset, when HAlign is either Near or Center, offsets the position towards the Far direction. A positive value for HOffset, when HAlign is Far, offsets the position towards the Near direction. Default value: 18

VOffset

number

(Optional; ExtensionLevel 3) The offset from the alignment point specified by the VAlign key. A positive value for VOffset, when VAlign is either Near or Center, offsets the position towards the Far direction. A positive value for VOffset, when VAlign is Far, offsets the position towards the Near direction. Default value: 18

The descriptions of the values of the HAlign and VAlign entries depend on the reading order. For left-to-right reading languages, as defined by the value of the Lang entry in the document's Catalog, the descriptions follow.
HAlign: Near represents the left edge of the window, and Far represents the right edge of the

window.
VAlign: Near represents the top edge of the window, and Far represents the bottom edge of the

window. For right-to-left reading languages, the above descriptions for HAlign are reversed.

Example: A RichMediaPresentation Dictionary
24 0 obj << /Type /RichMediaPresentation /Toolbar /false /NavigationPane /false /PassContextClick /false /Style /Windowed /Window 25 0 R >> endobj 25 0 obj << /Type /RichMediaWindow /Height << /Default 216 /Max 432 /Min 72 % RichMediaPresentation dictionary

% RichMediaWindow dictionary

Adobe Acrobat SDK
Adobe® Supplement to the ISO 32000

Multimedia Features (Chapter 9 in PDF Reference)
9.6.1 RichMedia Annotations 86

>> /Width << /Default 288 /Max 576 /Min 72 >> /Position << /Type /RichMediaPosition /HAlign /Far /VAlign /Near /HOffset 18 /VOffset 18 >> >> endobj

% RichMediaPosition dictionary

In the above example, the toolbar or the navigation pane are not displayed on initial activation of the annotation. Context click events are handled by the conforming reader and not passed to the annotation handler. The annotation appears as a separate window with an initial width of four inches and an initial height of three inches and will be aligned 0.25 inches off the top right (in left to right reading languages) corner of the document area.

RichMediaContent dictionary
The RichMediaContent dictionary contains content that is present within the annotation as referenced by the RichMediaSettings dictionary. (See “TABLE 9.50 Entries in a RichMediaSettings dictionary” on page 78.) Table 9.51 details the elements of the RichMediaContent dictionary. TABLE 9.51 Entries in a RichMediaContent dictionary KEY
Type

TYPE name

VALUE (Optional; ExtensionLevel 3) The type of PDF object that this dictionary describes. If present, it shall be RichMediaContent for a RichMediaContent dictionary. (Optional; ExtensionLevel 3) A name tree of embedded file specification dictionaries as detailed in Section 3.10.2 of the PDF Reference, sixth edition. (Optional; ExtensionLevel 3) An array where each element is an indirect object reference to a RichMediaConfiguration dictionary. (Optional; ExtensionLevel 3) An array where each element is an indirect object reference to a 3D view dictionary. See “View Dictionary” on page 92 for the details of the entries of this dictionary. Default value: If no views are specified, default values are used for the components of a view dictionary, including rendering/lighting modes, background color, and camera data.

Assets

name tree

Configurations array

Views

array

swf) 31 0 R ] >> endobj 30 0 obj << /Type /Filespec /F (3D. The string shall not contain any embedded NULL characters. ● The restrictions listed above are inherited from the Universal Container Format (UCF) specification. The number of characters in the string shall be between 1 and 255 inclusive.u3d) /UF (3D. U+0022 QUOTATION MARK ("). The structure of these name trees is compatible with the Resources entry (“TABLE 8.). The string shall not contain any of these six characters: U+003A COLON (:).1 RichMedia Annotations 87 The Assets name tree The Assets entry takes a name tree of embedded file specification dictionaries. U+003E GREATER-THAN SIGN (>).u3d) 30 0 R (Flash.u3d… % Assets name tree % File specification dictionary for 3D file % Stream containing the 3D file % File specification dictionary for SWF file % Stream containing the Flash file % Embedded file stream for 3D file % 3D. (See the Bibliography.6a Entries in a collection colors dictionary” on page 31) as used by portable collections.6. and U+007C VERTICAL LINE (|). The text string that represents the file name in the name tree shall match the values stored for both the F and UF keys.) Example: Assets name tree 29 0 obj << /Names [ (3D. The last character shall not be a U+002E FULL STOP (.u3d) /EF <</F 40 0 R >> >> endobj 31 0 obj << /Type /Filespec /F (Flash.u3d . which shall be the same value.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. U+003C LESS-THAN SIGN (<). U+002A ASTERISK (*).swf) /UF (Flash.swf) /EF << /F 41 0 R >> >> endobj 40 0 obj << /Type /EmbeddedFile /Length … /Filter … >> stream …Data for 3D. The file name is encoded as a relative URI and has the following naming restrictions: ● ● ● ● The string shall be a PDF text string.

Flash.51a Entries in a RichMediaConfiguration dictionary KEY Type TYPE name VALUE (Optional. . Valid values are 3D. For example.1 RichMedia Annotations 88 endstream endobj RichMediaConfiguration Dictionary The RichMediaConfiguration dictionary describes a set of instances that are loaded for a given scene configuration. Sound. the run time determines the scene type by referring to the type of asset file specified by the first element in the Instances array. referenced by the Instances entry of the RichMediaConfiguration dictionary (“RichMediaConfiguration Dictionary” on page 88). as described in Table 9. RichMediaInstance Dictionary The RichMediaInstance dictionary. which better informs the choices when presenting content-specific user interfaces during the authoring or editing process. Subtype name Name Instances text tree array (Optional. TABLE 9.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. Setting the Subtype suggests the author’s intended use of the assets.51b. Table 9. it shall be RichMediaConfiguration for a RichMediaConfiguration dictionary. the annotation is intended for video playback and thus should have a subtype of Video. ExtensionLevel 3) An array of indirect object references to RichMediaInstance dictionaries. (See “TABLE 9. If present.) A RichMediaConfiguration may be an aggregate of several RichMediaInstance dictionaries with different values for subtype.51b Entries in a RichMediaInstance dictionary”.51a details the elements of the RichMediaConfiguration dictionary. ExtensionLevel 3) The type of PDF object that this dictionary describes. ExtensionLevel 3) A name specifying the primary content type for the configuration. Though the primary instance in the configuration may be a SWF file. describes a single instance of an asset with settings to populate the artwork of an annotation. a FLV video file may require a SWF file to view it. (Optional. (Optional. Default value: If no value is specified.6. and Video. ExtensionLevel 3) A unique name for the configuration. The Subtype entry helps to describe the behavior for the collection of those RichMediaInstance dictionaries. The configuration to be loaded when an annotation is activated is referenced by the Configuration key in the RichMediaActivation dictionary specified in the RichMediaSettings dictionary.

Sound. ExtensionLevel 3) A RichMediaParams dictionary as described in “TABLE 9. If present. (Optional.6. ExtensionLevel 3) A name specifying the content type for the instance.51b Entries in a RichMediaInstance dictionary KEY Type TYPE name VALUE (Optional. Flash. Subtype name Params dictionary Asset dictionary Example: RichMediaInstance dictionaries 15 0 obj [ 16 0 obj 17 0 obj ] endobj 16 0 obj << /Type /RichMediaInstance /Subtype /3D /Asset 30 0 R >> endobj 17 0 obj << /Type /RichMediaInstance /Subtype /Flash /Asset 31 0 R /Params 18 0 R >> endobj % RichMediaInstances array % RichMediaInstance dictionary % Reference to 3D filespec in Assets % RichMediaInstance dictionary % Reference to Flash filespec in Assets . Valid values are 3D.1 RichMedia Annotations 89 TABLE 9. ExtensionLevel 3) The type of PDF object that this dictionary describes. (Required. (Required.51c Entries in a RichMediaParams dictionary” on page 90. ExtensionLevel 3) A dictionary that shall be an indirect object reference to a file specification dictionary that is also referenced in the Assets name tree specified in the RichMediaContent dictionary of the annotation. The subtype shall match the asset file type of the instance. This entry is valid only for subtype Flash. it shall be RichMediaInstance for a RichMediaInstance dictionary.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. and Video.

ExtensionLevel 3) An array of CuePoint dictionaries containing points in time within a Flash animation. It is to be stored and loaded by the scripting run time. Default value: No data is sent to the Flash Player. it shall be RichMediaParams for a RichMediaParams dictionary. Foreground. For the format specifics. ExtensionLevel 3) A text string or stream containing formatted name value pairs passed to the Flash Player context when activated. Default value: None BindingMaterialName text string array (Required if Binding value is Material. The descriptions for these values are given in Table 9.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. ExtensionLevel 3) Stores the material name that content is to be bound to.51c. see the document titled Using FlashVars to pass variables to a SWF. as described in Table 9. Default value: undefined .1 RichMedia Annotations 90 RichMediaParams Dictionary Contains parameters related to an active Flash subtype in a RichMediaInstance dictionary. TABLE 9. A RichMediaParams dictionary is not used by content subtypes other than Flash. Default values: an empty array CuePoints Settings text string or stream A text string/stream used to store settings information associated with a Flash RichMediaInstance. See the discussion of the Settings entry that follows for more information. If present.51d.51c Entries in a RichMediaParams dictionary KEY Type TYPE name VALUE (Optional. FlashVars text string or stream Binding name (Optional.6. listed in the Bibliography. See “CuePoint Dictionary” on page 91 for a detailed description. Background. ExtensionLevel 3) The type of PDF object that this dictionary describes. (Optional. page 88. (Optional. ExtensionLevel 3) Values can be None. or Material.

CuePoint Dictionary A video file can contain cue points that are encoded in a video stream or may be created by an associated ActionScript within the Flash content. the Flash appears to be playing upon this object as if conforming to the surface of the object. For a given RichMedia annotation.51d contains descriptions of the values of the Binding key of Table 9. The CuePoint dictionary. If that material is applied to geometry within a 3D scene. In this command.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. there can be one active RichMediaInstance that has a RichMediaParams dictionary Binding value of Background. settings ).51d Definitions of the Binding name values KEY None Foreground DESCRIPTION The Flash content is unbound and is not visible at playback time. contains a state that relates the cue points to an action that may be passed to the conforming application or may be used to change the appearance. where the value of Settings is passed as the first and only argument.1 RichMedia Annotations 91 Table 9. as described in Table 9. the Flash content is rendered in order from back to front.51c) in a RichMediaParams dictionary is used to store and load settings information specific to the content referenced by the resource in the same RichMediaInstance dictionary. The value of the Settings entry is passed by the ActionScript ExternalInterface command multimedia_loadSettingsString. If more than one RichMediaInstance has a RichMediaParams dictionary Binding value of Foreground. Background Material The Settings entry (as described in Table 9.51c. TABLE 9. . The Flash content is bound to a material that is part of 3D content.6. If more than one is specified. This value is honored only when the conforming reader has the rights to edit the document.51e.call( "multimedia_saveSettingsString". Cue points in the Flash content are matched to the cue points declared in the PDF file by the values specified by the Name or Time keys. each instance composited over prior instances using its alpha channel. The Flash content is bound to the background and is rendered behind any 3D model content or Flash foreground elements in the active annotation. settings is the argument and is the new string value to be written to the Settings entry. The Flash content is bound to the foreground and is rendered in front of the 3D model and background Flash content in the active annotation. the last RichMediaInstance specified for the background is used. The Settings string is updated when the Flash content sends the following ActionScript command to the player: ExternalInterface. and results in the document being dirtied.

sixth edition.6. (See Section 8.51e Entries in a CuePoint dictionary KEY Type TYPE name name VALUE (Optional. ExtensionLevel 3) The time value of the cue point in milliseconds to match against the cue point within Flash content and for display purposes.) Time A dictionary Example: The RichMediaParams Dictionary 18 0 obj % RichMediaParams dictionary << /Type /RichMediaParams /Binding /Foreground /FlashVars (name=John+Smith&address=1+Main+St. a navigation cue point is used to indicate the location of the chapter.&city=Springfield) /CuePoints [ << /Type /CuePoint /Name (Cue Point 1) /Subtype /Navigation /Time 5100 >> << /Name (Cue Point 2) /Subtype /Event /Time 4020 /A 19 0 R >> ] >> endobj View Dictionary View dictionaries specify a unique view of the artwork that can be used when the annotation is activated or selected. An Event is a generic cue point of no specific significance other than a corresponding action is triggered.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 d Multimedia Features (Chapter 9 in PDF Reference) 9. ExtensionLevel 3) Values can be Navigation or Event. A chapter stop may be encoded so that when the user requests to go to or skip a chapter.1 RichMedia Annotations 92 TABLE 9. If present. ExtensionLevel 3) The type of PDF object that this dictionary describes.1 of the PDF Reference. meaning that the Flash content reached the matching cue point during its playback. (Required. (Required. A View dictionary entry in a rich media annotation contains a superset of the information . Subtype Name text string number (Required. ExtensionLevel 3) An action dictionary defining the action that is executed if this cue point is triggered. as described here: A Navigation cue point is an event encoded in a Flash movie (FLV). it shall be CuePoint for a CuePoint dictionary. ExtensionLevel 3) The name of the cue point to match against the cue point within Flash content and for display purposes. (Optional.5.

View Params Dictionary The View Params dictionary provides a reference to a RichMediaInstance dictionary within the Instances array. ExtensionLevel 3) A dictionary that shall be an indirect object reference to a RichMediaInstance dictionary that is also present in the Instances array of the annotation.3 of the PDF Reference.51g Entries in a View Params dictionary KEY Instance TYPE dictionary VALUE (Required. Because the snapshot image is integrated by the player with other elements.51g) in a View Params dictionary is used to store and load opaque data specific to the Instance referenced in the same dictionary when a View is activated. “Images”) to be displayed when the view is invoked.1 RichMedia Annotations 93 present in a 3D view (3DV ) dictionary as specified in Section 9. if it is present and can be interpreted as a string. such as user interface controls for video playback.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. See TABLE 9.51f Additional entries to a 3D view dictionary KEY Snapshot TYPE stream VALUE (Optional. After the event is handled. usually during a comment or drawing markup. Default value: No image is used.8. is stored as the value for Data. the image it describes is displayed in place of the current artwork. (Required. Data text string or stream The Data entry (as described in Table 9. The mechanism by which the content of the Data entry is retrieved from the content instance depends on the content type: Flash content: An ActionScript ExternalInterface call is made to the function multimedia_getState with no arguments. When the View is created.51g Entries in a View Params dictionary for a detailed description. The return value.5. TABLE 9. This system allows content-specific state information to be stored when a view is created. and additional Data that is passed to the instance.51f describes the entries in addition to those present within a 3D view dictionary. the value for the data property. ExtensionLevel 3) An array containing View Params dictionaries. . Saving State Data. if it is present and can be interpreted as a string. This data may be formatted to serve the individual purpose of the content being referenced.6. the currently active rich media content is displayed. the run time iterates through all active instances for the current configuration and queries them for state data. TABLE 9. is stored as the value for Data. Default value: An empty array If the Snapshot entry exists. ExtensionLevel 3) A text string or stream containing state data to be passed to the instance when the view is triggered. 3D content: A JavaScript StateEvent is invoked with the type property set to the value save. ExtensionLevel 3) A stream that contains an image XObject (see Section 4. the color space of the image may be modified. Table 9. Params array (Optional.

See implementation note E-11. State Data for Commenting on Video. The mechanism by which the content of the Data entry is restored depends on the content type: Flash content: An ActionScript ExternalInterface call is made to the function multimedia_setState.0 692 450 ] /Resources << /XObject << /Im0 11 0 R >> /ProcSet [ /PDF /ImageC ] . the run time iterates through each View Params dictionary and loads the state data for each Instance referenced. Loading State Data.swf ) resource to enable playback of the video content.1 RichMedia Annotations 94 This is honored only when the conforming reader has the usage rights to edit the document.6. where currentTimeInSeconds is the current time the video playhead is set at: '<stateData><movieInfo time="currentTimeInSeconds"/></stateData>' Sending a multimedia_setState ExternalInterface command to the video player Flash instance with the above string as an argument sets the current time to match the value for currentTimeInSeconds.0 0. When the View is activated. 9 0 obj << /Type /Annot /Subtype /RichMedia /NM (RichMedia001) /AP << /N 10 0 R >> /F 68 /P 5 0 R /Rect [ 50 50 742 500 ] /Border [ 0 0 0 ] /BS << /Type /Border /W 0 /S /S >> /RichMediaContent 12 0 R /RichMediaSettings 22 0 R >> endobj % RichMedia annotation % % % % % % % Annotation name Appearance dictionary Annotation flags Parent Rectangle Border Border Style dictionary % Width (0 points) % Border style (Solid) 10 0 obj % Appearance dictionary << /Length 39 /Type /XObject /BBox [ 0. That file needs to support saving and loading state data in order to enable commenting on Video. The format of the state data when a multimedia_getState ExternalInterface command is invoked is as follows.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. It results in the document being dirtied. where the first argument is the value stored for Data. page 131. 3D content: A JavaScript StateEvent is invoked with the type property set to the value load and the data property set to the value stored for Data. RichMedia annotations that support video playback have a Flash (. Extended Example The following is a quasi complete example of a rich media annotation.

0 /CA 1..0 >> >> >> /Subtype /Form /Matrix [ 1 0 0 1 0 0 ] >> stream q /GS0 gs 692 0 0 450 0 0 cm /Im0 Do Q endstream endobj 11 0 obj << /Length . /Width ...Poster Image Stream...Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9.. endobj 12 0 obj << /Type /RichMediaContent /Configurations 13 0 R /Views 15 0 R /Assets 29 0 R >> endobj 13 0 obj [ 14 0 R ] endobj % RichMediaContent dictionary % RichMediaConfigurations array 14 0 obj % RichMediaConfiguration dictionary << /Type /RichMediaConfiguration /Name (Configuration01) /Instances 15 0 R >> endobj 15 0 obj [ 16 0 obj 17 0 obj ] endobj 16 0 obj << /Type /RichMediaInstance /Subtype /3D /Asset 30 0 R % RichMediaInstances array % RichMediaInstance dictionary % Reference to 3D filespec in Resources .1 RichMedia Annotations 95 /ExtGState <</GS0 << /Type /ExtGState /ca 1. /BitsPerComponent 8 /ColorSpace /DeviceRGB /Subtype /Image >> stream ....6. /Height ..

6.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9.&city=Springfield) /CuePoints [ << /Type /CuePoint /Name (Cue Point 1) /Subtype /Nav /Time 5100 >> << /Type /CuePoint /Name (Cue Point 2) /Subtype /Event /Time 4020 /A 19 0 R >> ] >> endobj 19 0 obj % JavaScript action dictionary << /Type /Action /S /JavaScript /JS (app.1 RichMedia Annotations 96 >> endobj 17 0 obj << /Type /RichMediaInstance /Subtype /Flash /Asset 31 0 R /Params 18 0 R >> endobj % RichMediaInstance dictionary 18 0 obj % Params dictionary << /Type /RichMediaParams /Binding /Foreground /FlashVars (name=John+Smith&address=1+Main+St.) /Next 20 0 R >> endobj 20 0 obj << /Type /Action /S /RichMediaExecute /TA 9 0 R /CMD << /A (Argument String) /C (CommandName) >> >> endobj 21 0 obj [ 22 0 R ] endobj % RichMediaExecute action % Views array .alert\("Cue Point Reached"\).

.0 1..Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9.) >> >> endobj 23 0 obj % RichMediaSettings Dictionary << /Type /RichMediaSettings /Activation << /Type /RichMediaActivation /Condition /WhenClicked /Configuration 14 0 R % Reference to element in Configurations array /View 22 0 R % Reference to element in Views array /Animation % RichMediaAnimation dictionary << /Type /RichMediaAnimation /Subtype /Linear /Speed 1 /PlayCount -1 >> /Presentation 24 0 R /Scripts % Reference to JavaScript filespec in Resources [ 34 0 R 35 0 R ] >> /Deactivation << /Type /RichMediaDeactivation /Condition /XD >> >> endobj 25 0 obj << /Type /RichMediaWindow /Height << /Default 216 /Max 432 /Min 72 >> /Width << /Default 288 /Max 576 /Min 72 >> % RichMediaWindow dictionary .0 0.State Data for 3D Instance.0 >> /BG <</Subtype /SC /C [ .1 RichMedia Annotations 97 22 0 obj % 3DView dictionary << /Type /3DView /IN (12a345b6-7c89-0d1e-fa2b-cde3f45a6b78) /XN (Default View) /CO 10.5 .0 0.0 0 ] << /Instance 16 0 R /Data (.5 .6.0 0.5 ] >> /C2W [ -1..0 -10.0 /MS /M /NR true /RM << /Type /3DRenderMode /Subtype /Solid >> /P << /Subtype /P /PS /Min /FOV 30..0 0.0 0.0 0.0 1.0 0.

flv) 33 0 R (Script.u3d) /EF <</F 40 0 R >> >> endobj 31 0 obj << /Type /Filespec /F (Flash.js) /UF (Script.u3d) /UF (3D.swf) 31 0 R (Controls. for JavaScript file % Stream containing the JavaScript file % File specification dict. for JavaScript file % Stream containing the JavaScript file % Embedded file stream for 3D file .js) /UF (Navigation.6.js) /EF << /F 45 0 R >> >> endobj 40 0 obj % RichMediaAssets name tree % File specification dictionary for 3D file % Stream containing the 3D file % File specification dictionary for Flash file % Stream containing the Flash file % File specification dict.js) 34 0 R (Navigation.u3d) 30 0 R (Player.1 RichMedia Annotations 98 /Position << /Type/RichMediaPosition % RichMediaPosition dictionary /HAlign /Far /VAlign /Near /HOffset 18 /VOffset 18 >> >> endobj 29 0 obj << /Names [ (3D.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9.js) /EF << /F 44 0 R >> >> endobj 35 0 obj << /Type /Filespec /F (Navigation.swf) 32 0 R (Video.swf) /EF << /F 41 0 R >> >> endobj 34 0 obj << /Type /Filespec /F (Script.js) 35 0 R ] >> endobj 30 0 obj << /Type /Filespec /F (3D.swf) /UF (Flash.

1 RichMedia Annotations 99 << /Type /EmbeddedFile /Length . >> stream .Data for Script.. >> stream .u3d... /Filter ..swf % Embedded file stream for JavaScript file % Script.6.. /Filter ... /Filter . >> stream ...Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Multimedia Features (Chapter 9 in PDF Reference) 9. endstream endobj 41 0 obj << /Type /EmbeddedFile /Length .js.. endstream endobj .... ... endstream % 3D.js endobj 45 0 obj % Embedded file stream for JavaScript file << /Type /EmbeddedFile % Navigation.. endstream endobj 44 0 obj << /Type /EmbeddedFile /Length .....Data for Flash.Data for Navigation...u3d % Embedded file stream for Flash file % Flash...... /Filter .swf.Data for 3D. >> stream ..js /Length ...js.....

7) The subtype of the artifact. The latter document is the version of the PDF specification that has been ratified by the ISO.7 Reference.7 and in ISO 32000 (Document management . The order in which the text strings appear in the array is application-dependent.17 Property list entries for artifacts KEY Subtype SUBTYPE name DESCRIPTION (Optional.PDF 1. and placement and formatting of those values. applications that support Bates Numbering add private data to the PDF document that specifies starting values for Bates Numbering. ExtensionLevel 3 adds BatesN to the set of valid values. Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3 throughout this document.Document Interchange (Chapter 10 in PDF Reference) This section describes extensions to the PDF specification contained in the PDF Reference. each of which contains a concatenation of the Bates Numbering parts. PDF 1. For convenience.7. add the new value BatesN to the list of values supported by Subtype and add the new Contents dictionary entry. the phrase BaseVersion 1. Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. version 1.1 Tagged PDF and Page Content Real Content and Artifacts On page 886. Contents text string or array of text string (Optional. If this artifact applies to a page that contains multiple Bates Numbers. Valid values are Header.Portable document format . This entry applies only when the Type entry has a value of Pagination. sixth edition. Note: Typically. provided they comply with the naming conventions described in Appendix E. Additional values can be defined for this entry.7 Tagged PDF 10. the Contents value is a Bates Numbering string.7). Unchanged content appears in gray. which applies when Subtype has a value of BatesN. These documents differ as described in About the ISO Draft of the PDF 1. the Contents value is an array of text strings. The intent of Bates Numbering values provided in this artifact content is to override Bates Numbering values in the private data. 10. If this artifact applies to a page that contains a single Bates Number. as shown in Table 10.7. TABLE 10. and Watermark.17 that follows. ExtensionLevel 3) The artifact content. Footer. 100 .

● Pagination artifacts. and Bates Numbering.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Document Interchange (Chapter 10 in PDF Reference) 10. Unchanged content appears in gray. . Ancillary page features such as running heads.1 Tagged PDF and Page Content 101 Replace the bullet that begins “Pagination artifacts” with the following bullet. folios (page numbers).7. Bates Numbering is a method of indexing legal documents for easy identification and retrieval.

adobe. Adobe Extension Level 1. The latter document is the version of the PDF specification that has been ratified by the ISO. available at <www.Bibliography This section describes extensions to the PDF specification contained in the PDF Reference. Adobe Systems Incorporated.com/go/acrobat_developer> Acrobat Navigator File Format.2 Note:Beginning with XFA 2. Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3 throughout this document. available at <http://www.7. version 1.7 and in ISO 32000 (Document management .com/go/navigator_developer> Universal Container Format (UCF). the Config Specification.adobe. version 2. version 2.adobe.4 Adobe Adobe XML Architecture. version 2. Adobe XML Architecture specifications.2. These documents differ as described in About the ISO Draft of the PDF 1. XML Forms Data Format Specification. available at <http://www.5 Adobe XML Architecture. Adobe XML Architecture.com/go/flex_devcenter> Navigator Template Format. version 7298. available at <http://www.0 (Draft) Flex 2 Developer Guide.com/go/xfa_ref_24_bibliography>.0 Adobe XML Architecture. version 2.0 Adobe XML Architecture. XML Forms Architecture (XFA) Specification.PDF 1. For convenience. Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. available at <http://www. Geometry Compression Level 2 Tesselation Compression Level 2 Add the new entry shown below. version 2.adobe.adobe.com/go/acrobat_developer> 102 . sixth edition.com/go/acrobat_developer> PRC specification: The following documents collectively provide the PRC file format specification.7 Reference.Portable document format .com/go/acrobat3d_developer: ● ● ● Adobe PRC Format Specification. available at <http://www.7). Unchanged text appears in gray. the XDP Specification. XML Forms Architecture (XFA) Specification. the phrase BaseVersion 1. version 2.adobe. Resources from Adobe Systems Incorporated Acrobat ActionScript API Reference. the XFA specification includes the Template Specification. and all other XML specifications unique to the XML Forms Architecture (XFA). Template Specification. Forms Architecture (XFA) Specification.adobe. XML Forms Architecture (XFA) Specification. Adobe XML Architecture. These documents are available at www. XML Data Package (XDP) Specification. version 2.6 Adobe XML Architecture.

A Universally Unique Identifier (UUID) URN Namespace Open Geopatial Consortium Documents ● OpenGIS© Implementation Specification: Coordinate Transformation Services. Add the following bulleted references to the list of Federal Information Processing Standards Publications: Federal Information Processing Standards Publications: ● FIPS PUB 140-2: Security Requirements For Cryptographic Modules <http://csrc.org.7. Universal 3D File Format. available at <http://www.org. Universal 3D File Format.ecma-international. ECMA-363. 1st Edition. sixth edition.org> Unicode Consortium publications: . ISO/IEC 15438 Information technology – Automatic identification and data capture techniques – QR Code 2005 bar code symbology specification. ISO/IEC 18004 ● ● Add these bulleted references to the list of RFCs: Internet Engineering Task Force (IETF) Requests for Comments (RFCs). version 1. SASLprep: Stringprep Profile for User Names and Passwords RFC 4122. ISO/IEC 16022 Information technology –Automatic identification and data capture techniques – PDF417 bar code symbology specification. Universal 3D File Format. This change reflects a correction documented in the Errata for the PDF Reference.adobe. Standard ECMA-363.ecma-international.rfc-editor. Internationalized Resource Identifiers (IRIs) RFC 4013.gov/publications/fips/fips140-2/fips1402.nist. 1st Edition.com/go/tn_16417> Other Resources Replace the following Ecma reference.>.org>: ● ● ● ● ● RFC 3454. Replace this Ecma reference with this: Ecma International. The following standards are available through < http://www. This document is available at www. The following standards are available through <www.opengeospatial.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Bibliography Other Resources 103 Using FlashVars to pass variables to a SWF.iso. TechNote tn_16417. ● ● ECMA-363. Preparation of Internationalized Strings (“stringprep”) RFC 3986. Uniform Resource Identifier (URI): Generic Syntax RFC 3987. 3rd Edition.pdf> Add the following bullet to the ISO listing of standards: International Organization for Standardization (ISO). document 01-009 <http://www. Ecma International. The following RFCs are available through < http://www.org/>: ● Information technology – Automatic identification and data capture techniques – Data Matrix bar code symbology specification.

Unicode Technical Standard #35 Locale Data Markup Language (LDML) .Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Bibliography Other Resources 104 ● UTS 35.

Part II: Reference Errors and Implementation Notes 105 .

Implementation Notes to the PDF Reference. See that document for the context of each note. “Extensions to the PDF Specification”.5 for Acrobat 6.3 for Acrobat 4. LiveCycle ES 8. are significantly modified. 3. the phrase BaseVersion 1. /A#B).4 for Acrobat 5. PDF 1.1.6 (Acrobat 8.4 Name Objects 3. Two of the notes.2 ) and all the information contained in this document concerning additions to the PDF language.2 Comments 2. Adobe Extension Level 2: XFA 2. Acrobat viewers do not preserve comments when saving a file. notes 77 and 156.2 Introduction to PDF 1. LiveCycle ES). as documented in Part I. PDF 1. For convenience. the number sign became an escape 106 . sixth edition: These notes appear in Appendix H. LiveCycle. PDF 1. In PDF 1. PDF 1.1.6 for Acrobat 7. There are two parts to the implementation notes: Implementation Notes to the PDF Reference.2.2.2 for Acrobat 3.0.0. the addition of PRC for 3D data. version 1. SAP P3B) Adobe Extension Level 1: PRC and XFA 2. The extensions are described in the Adobe Supplement to ISO 32000 (this document). Note: This guide uses italics to identify information not intended for inclusion in the PDF specification. ● ● 3.1.0. the number sign character (#) could be used as part of a name (for example.0.0. the native file formats for Acrobat products are extensions relative to a base version of PDF. and the specifications did not specifically prohibit embedded spaces (although Adobe producer applications did not provide a way to write names containing them).7 (SAP P3C) Adobe Extension Level 3: XFA 2. For base version 1.Implementation Notes This chapter provides notes on the implementation of Acrobat 9. 1.0.7 for Acrobat 8.8 (Acrobat 9.7. of this guide. sixth edition. Beginning with Acrobat 8. sixth edition These notes originally appeared in the PDF Reference. The implementation notes for the Adobe extensions begin on page 130. In PDF 1. Implementation Notes to Adobe Extensions to ISO 32000: These notes remark on Acrobat’s implementation of the extensions to the PDF language. “Compatibility and Implementation Notes” of PDF Reference.1. and PDF 1. The native file formats of Acrobat products are PDF 1.0.5 and PDF 1.0. Adobe ExtensionLevel 3 is shortened to ExtensionLevel 3 throughout this document. The notes are listed in the order of the sections to which they refer in the main text. the following is a list of each Adobe extension level and the applications (shown in parentheses) supported by that extension level.7 Features This note applies to the first paragraph in this section.7. ● ● ISO 32000: XFA 2.7 (Acrobat 8. 1.7.

2) RunLengthDecode ABBREVIATION AHx A85 LZW Fl (uppercase F. they should not be used as filter names in any stream object. since the number sign is not followed by two hexadecimal digits. 3. 4. DecodeParms takes precedence.3 Filters 9. if the string (Adobe Green) were used as a key in a dictionary. This means that the name /A#B is no longer valid. Thus. In Acrobat 4. 5. an indirect object reference to a name is not accepted. Abbreviations for standard filter names STANDARD FILTER NAME ASCIIHexDecode ASCII85Decode LZWDecode FlateDecode (PDF 1. For example.2. Acrobat viewers accept the abbreviated filter names shown in table titled “Abbreviations for standard filter names” in addition to the standard ones. If both DP and DecodeParms entries are present. which depends on the operating system and the local language. the Acrobat Distiller application uses the # convention as necessary. preceding two hexadecimal digits.2. A name object with this value must be written as /A#23B. In cases where a PostScript name must be preserved or where a string is permitted in PostScript but not in PDF. a 3-character name A-space-B can now be written as /A#20B (since 20 is the hexadecimal code for the space character). “Inline Images”). this encoding may be something like Shift-JIS or Big Five. since 23 is the hexadecimal code for the character #. When an Acrobat viewer generates PostScript. For Asian languages. it is necessary to distinguish between names encoded this way and ones encoded as UTF-8.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. 3. a name object being treated as text is typically interpreted in a host platform encoding.0 and earlier versions. These abbreviated names are intended for use only in the context of inline images (see Section 4. 3. Consequently. sixth edition 107 character. UTF-8 encoding is very stylized and its use can usually be recognized. it inverts the convention by writing a string where permitted or a name otherwise.9 Indirect Objects 8.7 Stream Objects The following note is associated with the description of the DecodeParms key in Table 3.6. 7. Acrobat viewers require that the name object used as a key in a dictionary entry be a direct object.4. Distiller would use the name /Adobe#20Green and the viewer would generate (Adobe Green). Fortunately. A name that does not conform to UTF-8 encoding rules can instead be interpreted according to host platform encoding.8. lowercase L) RL . Acrobat viewers accept the name DP as an abbreviation for the DecodeParms key in any stream dictionary.

Adobe Acrobat SDK
Adobe® Supplement to the ISO 32000

Implementation Notes
Implementation Notes to the PDF Reference, sixth edition 108

Abbreviations for standard filter names STANDARD FILTER NAME
CCITTFaxDecode DCTDecode

ABBREVIATION
CCF DCT

10. If an unrecognized filter is encountered, Acrobat viewers report the context in which the filter was found. If errors occur while a page is being displayed, only the first error is reported. The subsequent behavior depends on the context, as described in table titled “Acrobat behavior with unknown filter“. Acrobat operations that process pages, such as the Find command and the Create Thumbnails command, stop as soon as an error occurs.
If an unrecognized filter is encountered, Acrobat viewers report the context in which the filter was found. If errors occur while a page is being displayed, only the first error is reported. The subsequent behavior depends on the context, as described in the table titled “Acrobat behavior with unknown filter”. Acrobat operations that process pages, such as the Find command and the Create Thumbnails command, stop as soon as an error occurs.

Acrobat behavior with unknown filter CONTEXT Content stream
Indexed color space

BEHAVIOR Page processing stops. The image does not appear, but page processing continues. The image does not appear, but page processing continues. An error is reported and no more thumbnail images are displayed, but the thumbnails can be deleted and created again. The form does not appear, but page processing continues. The glyph does not appear, but page processing continues. The text position is adjusted based on the glyph width. The viewer behaves as if the font is not embedded.

Inline image Thumbnail image

Form XObject Type 3 glyph description Embedded font

3.3.7 DCTDecode Filter
11. Acrobat 4.0 and later viewers do not support the combination of the DCTDecode filter with any other filter if the encoded data uses the progressive format. If a version of the Acrobat viewer earlier than 4.0 encounters DCTDecode data encoded in progressive format, an error occurs that is handled according to the table “Acrobat behavior with unknown filter” on page 108.

3.4 File Structure
12. Acrobat viewers do not enforce the restriction on line length.

3.4.1 File Header
13. Acrobat viewers require only that the header appear somewhere within the first 1024 bytes of the file. 14. Acrobat viewers also accept a header of the form
%!PS-Adobe-N.n PDF-M.m

Adobe Acrobat SDK
Adobe® Supplement to the ISO 32000

Implementation Notes
Implementation Notes to the PDF Reference, sixth edition 109

3.4.3 Cross-Reference Table
15. Acrobat viewers do not enforce the restriction on object numbers existing in more than one subsection; they use the entry in the first subsection where the object number is encountered. However, overlap is explicitly prohibited in cross-reference streams in PDF 1.5. 16. Acrobat 6.0 and later do not use the free list to recycle object numbers; new objects are assigned new numbers. 17. Acrobat viewers do not raise an error in cases where there are gaps in the sequence of object numbers between cross-reference subsections. The missing object numbers are treated as free objects.

3.4.4 File Trailer
18. Acrobat viewers require only that the %%EOF marker appear somewhere within the last 1024 bytes of the file.

3.4.6 Object Streams
19. When creating or saving PDF files, Acrobat 6.0 limits the number of objects in individual object streams to 100 for linearized files and 200 for non-linearized files.

3.4.7 Cross-Reference Streams (Cross-Reference Stream Dictionary)
20. FlateDecode is the only filter supported by Acrobat 6.0 and later viewers for cross-reference streams. These viewers also support unencoded cross-reference streams.

3.4.7 Cross-Reference Streams (Compatibility with PDF 1.4)
21. Byte addresses can be as large as needed to address an arbitrarily large PDF file, regardless of the implementation limit for PDF integers in general.

3.5 Encryption
22. An option to use an unpublished algorithm was needed because of an export requirement of the U.S. Department of Commerce. This requirement no longer exists. Acrobat 7.0 does not use this algorithm to encrypt documents, although it can decrypt files that are encrypted with the algorithm. 23. Acrobat viewers will fail to open a document encrypted with a V value defined in a version of PDF that the viewer does not understand. 24. Security handlers are responsible for protecting the value of EFF from tampering if needed. Acrobat security handlers do not provide this protection.

3.5.2 Standard Security Handler (Standard Encryption Dictionary)
25. Acrobat viewers implement this limited mode of printing as “Print As Image,” except on UNIX systems, where this feature is not available.

Adobe Acrobat SDK
Adobe® Supplement to the ISO 32000

Implementation Notes
Implementation Notes to the PDF Reference, sixth edition 110

3.5.2 Standard Security Handler (Encryption Key Algorithm)
26. The first element of the ID array generally remains the same for a given document. However, in some situations, Acrobat may regenerate the ID array if a new generation of a document is created. Security handlers are encouraged not to rely on the ID in the encryption key computation.

3.5.2 Standard Security Handler (Password Algorithms)
27. In Acrobat 2.0 and 2.1 viewers, the standard security handler uses the empty string if there is no owner password in step 1 of Algorithm 3.3.

3.5.4 Crypt Filters
28. In Acrobat 6.0, crypt filter usage is limited to allowing document-level metadata streams to be left as plaintext in an otherwise encrypted document. In Acrobat 7.0, crypt filter usage also includes the ability to encrypt embedded files while leaving the remainder of the document as plaintext. 29. In Acrobat 6.0 and later, when strings and streams in an encrypted document are edited, those streams and strings are encrypted with the StmF and StrF filters, respectively. In Acrobat 7.0, if the EFF entry in the encryption dictionary is set, embedded files are encrypted with the crypt filter specified by the EFF entry. In both Acrobat 6.0 and 7.0, if the security handler indicates that document-level metadata is to be in plaintext, the metadata will not be encrypted. It is up to individual security handlers to store their own flags that indicate whether document-level metadata should be in plaintext. 30. Acrobat viewers do not support the ability for third-party security handlers to specify None as a value for CFM. 31. In the file specification dictionary (see Section 3.10.2, “File Specification Dictionaries”), related files (RF) must use the same crypt filter as the embedded file (EF). 32. The value of the EncryptMetadata entry is set by the security handler rather than the Acrobat.

3.6.1 Document Catalog
33. .Acrobat 5.0 and Acrobat 6.0 avoid adding a Version entry to the document catalog and do so only if necessary. Once they have added this entry, they behave in this way:

Acrobat 5.0 never removes the Version entry. For documents containing a Version entry, Acrobat 5.0 attempts to ensure that the version specified in the header matches the version specified in the Version entry; if this is not possible, it at least ensures that the latter is later than (and therefore overrides) the version specified in the header. Acrobat 6.0 removes the Version entry when doing a full (non-incremental) save of the document.

34. In PDF 1.2, an additional entry in the document catalog, named AA, was defined but was never implemented. The AA entry that is newly introduced in PDF 1.4 is entirely different from the one that was contemplated for PDF 1.2.

3.6.2 Page Tree (Page Objects)
35. In PDF 1.2, an additional entry in the page object, named Hid, was defined but was never implemented. Beginning with PDF 1.3, this entry is obsolete and should be ignored. 36. Acrobat 5.0 and later viewers do not accept a Contents array containing no elements.

1 Content Streams 39. When printing. Since Type 2 functions are not defined in PDF 1.2.9. Acrobat 3.” if it encounters a function of this type. additional-actions dictionaries were inheritable. Example: Acrobat does not correctly interpret a file specification.0 and later accept a file specification whose Type entry is either Filespec or F.In Acrobat 5.2) reports an error.2 Type 2 (Exponential Interpolation) Functions 41. In PDF 1.3. In a document containing articles.3 Type 3 (Stitching) Functions 42. Acrobat 6. “Invalid Function Resource.9.4 Type 4 (PostScript Calculator) Functions 43. file specifications accessed through EmbeddedFiles have a Type entry whose value is F instead of the correct Filespec. if the first page that has an article bead does not have a B entry. Acrobat performs only linear interpolation. Acrobat viewers report an error the first time they find an unknown operator or an operator with too few operands. regardless of the value of the Order entry. Acrobat viewers rebuild the B array for all pages of the document.0 (whose native file format is PDF 1. 38.10. Since Type 4 functions are not defined in PDF 1. 3. 3. 44.2 File Specification Dictionaries 45.2 or earlier versions. Acrobat uses single-precision floating-point numbers for all real-number operations in a type 4 function. “Invalid Function Resource. Acrobat ignores the file specification EF entry when that file specification is referenced from the XObject F entry.9.2) reports an error. Acrobat does not correctly interpret such file specifications. 3. Acrobat 3.1 Type 0 (Sampled) Functions 40.9.7. 3. Since Type 3 functions are not defined in PDF 1. but continue processing the content stream.2) reports an Invalid Function Resource error if it encounters a function of this type. No further errors are reported. 13 0 obj << /Type /XObject /Subtype /Image /F 12 0 R . In certain situations.0 (whose native file format is PDF 1.” if it encounters a function of this type.0 and greater do not correctly interpret file specifications referenced by the F entry in Form or Image XObjects. Specifically. Acrobat 3.0. . 46.2 or earlier versions. 3.2 or earlier versions. 3. sixth edition 111 37. beginning with PDF 1. they are not inheritable.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. The code that follows shows an example of an Image XObject F entry referencing a file specification that in turn references an embedded file. Acrobat 3.0 (whose native file format is PDF 1.

4. sixth edition 112 … >> stream endstream endobj 12 0 obj << /Type /Filespec /EF <</F 10 0 R>> >> endobj 10 0 obj << /Type /EmbeddedFile … >> stream … endstream endobj 4.5.0 do not display patterns on the screen. This method of representing multitones is used by Adobe Photoshop 5.2 and earlier versions are all implicitly unmasked images. . 4.5. 4. Acrobat exports Level 3 EPS files using this method.4 Image Dictionaries 52. which can then be placed in page layout applications such as Adobe PageMaker®. and can also export Level 1 EPS files that use the “Level 1 separation” conventions of Adobe Technical Note #5044. it displays an error specifying the name. A PDF consumer that does not recognize the Mask entry treats the image as unmasked without raising an error. All Acrobat viewers ignore the Name entry in an image dictionary.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference.7 External Objects 51. None is treated as a regular spot color name.5 Special Color Spaces (DeviceN Color Spaces) 48. Image XObjects in PDF 1.0. For all other uses of DeviceN. but reports no further errors thereafter.8. although they do print them to PostScript output devices. Acrobat viewers that encounter an XObject of an unknown type display an error specifying the type of XObject but report no further errors thereafter. Adobe In-Design. Acrobat viewers earlier than version 4.5. If an Acrobat viewer encounters an unknown color space family name.2 Color Space Families 47. Acrobat viewers support the special meaning of None only when a DeviceN color space is used as a base color for an indexed color space. Color Separation Conventions for PostScript Language Programs. 4. and QuarkXPress.6 Patterns 50.0. Beginning with version 4. 4. 53. These conventions are used to emit multitone images as calls to “customcolorimage” with overprinting.2 and subsequent versions when exporting EPS files.5 Special Color Spaces (Multitone Examples) 49.

they print the base image without the mask.1 Form Dictionaries 55. 5.0 and earlier viewers do not implement reference XObjects. If the font program is not embedded. In versions of Acrobat earlier than 3. and word search. .1 Type 1 Fonts 60. The font program with the altered glyph widths may or may not be embedded. which improves the consistency of the display and printing of the document. In Acrobat 4. printing. fauxing (font substitution). The Acrobat 4. If it is embedded.9. 61. followed by the strokes for all the glyphs. All Acrobat viewers ignore the Name entry in a form dictionary. but only when the amount of data in the mask is below a certain limit. Consumers of PDF files depend on these widths in many different contexts. It is important that the widths in the font dictionary match the actual glyph widths of the font program that was used to produce the document.8. Th.3. its widths should exactly match the widths in the font dictionary. Acrobat overrides the widths in the font program on the conforming reader’s system with the widths specified in the font dictionary.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. The proxy is always used for viewing and printing. the viewer displays the base image without the mask. Explicit masking and color key masking are features of PostScript LanguageLevel 3. 5.0 and earlier viewers. 5. This produces incorrect results if glyphs overlap.0 and later versions do not attempt to emulate the effect of masked images when printing to LanguageLevel 1 or LanguageLevel 2 output devices. is different from its default value of 100. In Acrobat 4. reflow. position adjustments specified by numbers in a TJ array are performed incorrectly if the horizontal scaling parameter. This addresses the situation in which the font program used by the conforming reader is different from the one used by the application that produced the document.9.05 and earlier versions. sixth edition 113 4. 59. All Acrobat viewers ignore the Name entry in a font dictionary. including viewing. the horizontal coordinate of the text position after the TJ operator paints a character glyph and moves by any specified offset must not be less than it was before the glyph was painted.0 viewer displays masked images.3 Reference XObjects 56. Acrobat 8.5 Text Rendering Mode 57. Above that. Acrobat 5.5 Masked Images 54.0.5.2 Text-Showing Operators 58. Acrobat 4. text-showing operators such as Tj first perform the fills for all the glyphs in the string being shown. 4. 4.0 and later viewers use the glyph widths stored in the font dictionary to override the widths of glyphs in the font program itself.2.

Bold TimesNewRoman. It would also be helpful if the tools could optionally check for consistency with the widths in font programs that are not embedded.0 and earlier viewers incorrectly allow substitution fonts. Arial).BoldItalic . Widths.Bold CourierNew.6. sixth edition 114 These operations may malfunction if arbitrary adjustments are made to the widths so that they do not represent the glyph widths intended by the PDF producer.Bold Arial.Italic Arial.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. when the original font programs are still available. ALTERNATIVES CourierCourierNew CourierNew.0 and earlier viewers may ignore attempts to override the standard fonts. to be specified without FirstChar. Note: This implementation note is also referred to in Section 5.3. Names of standard fonts STANDARD NAMES Courier Courier-Oblique Courier-Bold Courier-BoldOblique Helvetica Helvetica-Oblique Helvetica-Bold Helvetica-BoldOblique Times-Roman Times-Italic Times-Bold Times-BoldItalic Symbol ZapfDingbats Also.BoldItalic TimesNewRoman TimesNewRoman TimesNewRoman. Acrobat 3. The first column shows the proper one (for example. This is useful for checking a PDF file immediately after it is produced. “CIDFonts” (Glyph Metrics in CIDFonts). and FontDescriptor entries. Acrobat 4. Helvetica).BoldItalic Arial Arial.Italic CourierNew.5. LastChar. The table titled “Names of standard fonts” shows the complete list of font names that are accepted as the names of standard fonts.1 Type 1 Fonts (Standard Type 1 Fonts (Standard 14 Fonts)) 62. such as TimesNewRoman and ArialMT. It is recommended that diagnostic and preflight tools check the glyph widths in the font dictionary against those in an embedded font program and flag any inconsistencies. the second column shows the alternative if one exists (for example. 5.

0 and earlier viewers. or Adobe-Korea1 character collection can also be substituted.1 and later.4. otherwise. the names of resources in a Type 3 font’s resource dictionary must match those in the page object’s resource dictionary for all pages in which the font is referenced.0 contain only glyphs from the Adobe Japan1-4 character collection. Adobe-CNS1 Adobe-Japan1.8 Embedded Font Programs 69.4 CMaps 66. To make a document portable. 5.0. 6. In Acrobat 3. all font subsets whose BaseFont names differ only in their tags should have the same font descriptor values and should map character names to glyphs in the same way. Acrobat displays an error message (once per document) and substitutes any characters in the font with the bullet character. 5. 5. Acrobat 4. Any non-embedded font. Embedded CMap files.3 Font Subsets 63. it compares the PostScript code defining the spot function with that of the predefined spot functions shown in Table6.1. do not work properly in Acrobat 4.4 Type 3 Fonts 64. “Latin Character Set and Encodings”). However. Acrobat uses that function when printing the PDF document to a PostScript output device. If backward compatibility is not required.1.05. the value of the Encoding entry could also be the name of a predefined encoding or an encoding dictionary whose BaseEncoding entry is a predefined encoding.1. 65. 5. “Latin Character Set and Encodings”). Otherwise. If the code matches one of the predefined functions. sixth edition 115 Acrobat 5 and later viewers do not give special treatment to any font. If the code does not match any of the predefined spot .2 Spot Functions 70. Distiller puts the name of that function into the halftone dictionary.5. When Distiller encounters a call to the PostScript setscreen or sethalftone operator that includes a spot function. This substitution can be performed only for fonts that use the Adobe standard Latin character set (as defined in Section D. 67. This restriction is eliminated in Acrobat 4. Japanese fonts included with Acrobat 6. font substitution may be performed using multiple master Type 1 fonts.0 viewers. glyphs may be shown unpredictably. Documents that use fonts containing additional glyphs from the Adobe-Japan1-5 collection must embed those fonts to ensure proper display and printing.0 ignore the FontFile3 entry. will be processed in the same way. other than ToUnicode CMaps. regardless of name. For Acrobat 3. Acrobat creates a substitute font. For simple fonts. Type 0 fonts that use a CMap whose CIDSystemInfo dictionary defines the Adobe-GB1. If a font uses the Adobe standard Latin character set (as defined in Section D. For compatibility with Acrobat 2. fonts that cannot be substituted must be embedded.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference.5. 5.6.0 and earlier viewers do not implement this correctly. any valid names may be used.0 and 2.7 Font Descriptors 68.1. Acrobat viewers earlier than version 3.0. this has been corrected in Acrobat 4. In principle.

When producing PDF version 1.2.5.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. Acrobat generates a spot function that interpolates values from that function. is replaced by the following paragraphs. “Type 4 (PostScript Calculator) Functions”). Acrobat uses this function directly when printing the document. All images are painted opaquely. “Specifying Soft Masks” (Soft-Mask Dictionaries). PDF 1. All graphics objects are painted opaquely. when printing to a PostScript device. Beginning with PDF 1. Note: This implementation note is also referred to in Section 7.2 Specifying Blending Color Space and Blend Mode 72. Acrobat viewers up to version 3.0 always performs automatic stroke adjustment.4 Annotations 77. as published in the sixth edition of the PDF Reference.3 Specifying Shape and Opacity (Mask Shape and Opacity) 73. named AA.3. was defined but was never implemented. 6. soft mask. In PDF 1. and alpha source).3. In this case. Acrobat viewers report an error when a user activates an outline item whose destination is of an unknown type.0 ignore the PageLabels entry and label pages with decimal numbers starting at 1.4.5. “Specifying Soft Masks” (Soft-Mask Images). Distiller samples the specified spot function and generates a function for the halftone dictionary.2. regardless of the value of the SA entry in the graphics state parameter dictionary. PDF 1.5. 7.5.4.3 or earlier viewers ignore the SMask entry in an image dictionary. Constant Shape and Opacity) and 7. Note: This implementation note is also referred to in Sections 7. When drawing to the screen. 8. 75. 8. this entry is obsolete and should be ignored.5. Acrobat 6.3 or later. Distiller represents the spot function by using a Type 4 (PostScript calculator) function whenever possible (see Section 3.“Specifying Shape and Opacity” (Mask Shape and Opacity.4.3.4 Automatic Stroke Adjustment 71.9. alpha constant. The text of Note 77.1 Page Labels 76. an additional entry in the outline item dictionary. . 8.3 or earlier viewers ignore all transparency-related graphics state parameters (blend mode. sixth edition 116 functions.2 Document Outline 74.5. 7.

However. Acrobat 9 and later support Widget order. widgets are visited in the order in which they appear in the Annots array and then other annotation types are visited in structure order. Accessibility preference selected (default setting) The following bulleted items describe how the accessibility preference influences annotation tab order when the accessibility preference is selected: ● If the document is viewed with Acrobat 6 or later and is structured.5 or earlier have no Tabs entries.27). Note: Documents that conform to PDF version 1. Because the row. ● If the document omits a Tabs entry or when the document is viewed with Acrobat 5 or earlier. the Tabs entry affects tab order as follows: Widget order: When Tabs is set to W. Acrobat 6 and later support increasingly specific levels of tab order. Otherwise. Not structured: Widgets are visited in the order in which they appear in the Annots array. This behavior is viewer-specific because it is not specified by the PDF specification. and structured tab order settings behave exactly as specified in the PDF specification. . Acrobat tab order varies depending on the Acrobat version and on accessibility preference settings. they do not have a viewer-specific behavior.5 or earlier have no Tabs entries. All other tab orders: Annotations are visited as specified in the PDF specification supported by the particular version of Acrobat. Accessibility preference not selected The following bulleted items explains Acrobat behavior relative to annotation tab order when the accessibility preference is not selected. widgets are visited in the order in which they appear in the Annots array. and then other annotation types are visited in row order. the annotations are visited in structure order. Note: Documents that conform to PDF version 1. The Tab Order panel in that window has a check box titled “Use document structure for tab order when no explicit tab order is specified. the user experience of tabbing between annotations on a page (tab order) can be made explicit by means of the page object Tabs entry (see Table 3. column. Beginning in PDF 1. The Acrobat Preferences dialog box presents an Accessibility window.” Selecting that check box specifies accessibility preferences. the presence of structure (tagging) affects tab order as follows: Structured: Annotations are visited in structure order.5. when this entry is not defined. Regardless of the Acrobat accessibility preference setting. sixth edition 117 Interaction between accessibility preference and annotation tab order This note clarifies the viewer-specific behavior of different Acrobat versions relative to annotation tab order and the accessibility preference selection. the following applies to (a) all Acrobat versions when processing a PDF document that omits a Tabs entry or (b) Acrobat 5 or earlier when processing a PDF document regardless of a Tabs entry: ● ● If the document is structured (contains tagging). and then other annotation types are visited in row order.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference.

the ToggleNoView flag is applicable to mouse-over and selection events. Reordering of annotations For documents that have a Tabs entry. No Tabs entry or the Tabs entry value not recognized: Widgets are visited in the order in which they appear in the Annots array. and structure order settings. Annotations that should be hidden are shown. 79. Acrobat viewers support a maximum of ten elements in the dash array of the annotation dictionary’s Border entry. 8. Acrobat 3. widgets are visited in the order in which they appear in the Annots array. In Acrobat 6.2 Annotation Flags 83.0 ignores the Print flag for text and link annotations. widgets are visited in the order in which they appear in the Annots array. Acrobat 6.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. and then other annotation types are visited in row order. annotations that should be printed are not printed. column.0 and later reorder annotations in the Annots array to match the order described in “Interaction between accessibility preference and annotation tab order” on page 117.0. In Acrobat 6. All other tab orders (row. All versions of Acrobat through 6. ● For a document viewed with Acrobat 5 or earlier. 82. Widget order: When Tabs is set to W. Acrobat viewers update the annotation dictionary’s M entry only for text annotations. markup annotations support it as well. row. Acrobat 2. The tab order for widgets and other annotation types is then preserved when the document is opened by earlier viewers.1 viewers ignore the annotation dictionary’s AP and AS entries.0.4. 81. or 8. sixth edition 118 The document is viewed with Acrobat 9. . Tabs entry provided: Tab order is as specified by the Tabs entry.0 ignore an annotation’s Hidden and Print flags. 84.0 and 2. No Tabs entry: Widget annotations are ordered as they appear in the Annots array. followed by other annotation types ordered by rows. and then other annotation types are visited in row order. 80. 8. 7. and then other annotation types are visited in row order. These versions support only the column. Acrobat 5. the border is always drawn with square corners. Acrobat viewers earlier than version 3.4. 85.0 obeys the Locked flag only for widget annotations. and annotation): Annotations are visited as specified by the PDF specification. Acrobat viewers ignore the horizontal and vertical corner radii in the annotation dictionary’s Border entry. ● The document is viewed with Acrobat 6.0 ignore the AP entry when drawing the appearance of link annotations. structure.1 Annotation Dictionaries 78.

regardless of whether these are the first two points in the QuadPoints array. an alert appears giving the annotation type and reporting that a required plug-in is unavailable. if there are two such vertices) and the next vertex in a counterclockwise direction.5 Annotation Types (Polygon and Polyline Annotations) 91. 8. When a link annotation specifies a value of P for the H entry (highlighting mode). .4. 95. Such an annotation can be selected. 90.0 and later versions. 8. the text is oriented with respect to the vertex with the smallest y value (or the left most of those. “Appearance Streams”). moved.4. but if the user attempts to activate it. The PDF Reference fifth edition (PDF 1. Acrobat 7. If an Acrobat viewer encounters a border style it does not recognize.0 does not include a Desc entry in file specifications for file attachment annotations and ignores them if they are present. Acrobat viewers always use straight lines to connect the points along each path. ignoring any down appearance that is defined (see Section 8. Acrobat viewers display annotations whose types they do not recognize in closed form.4.17. Acrobat viewers display the link appearance with a beveled border.5 Annotation Types (Ink Annotations) 93. 8. 8.4 Appearance Streams 87. 8. the border style defaults to S (Solid).4.3 Border Styles This note is associated with the description of the S key in Table 8.5 Annotation Types (File Attachment Annotations) 94. or deleted.4. Acrobat 7.4.0 treats the annotation appearance as an isolated group. 86.4.0.4.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. with an icon containing a question mark. Acrobat viewers report an error when a user activates a link annotation whose destination is of an unknown type. This behavior is corrected in Acrobat 6. 8.4. Acrobat 5. 8.6) erroneously omitted the IT entry from the additional entries specific to a polygon or polyline annotation.5 Annotation Types (Link Annotations) 89. This entry specifies the intent of the annotation. (see Table 8. sixth edition 119 8.4.29).5 Annotation Types (Text Markup Annotations) 92. In Acrobat 4. regardless of whether a Group entry is present.0 and earlier viewers only support file attachment annotations whose referenced file is embedded in the PDF document.5 Annotation Types 88.

5 Annotation Types (Markup Annotations) 96.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. 8.0 and earlier viewers do not support the Mix entry. . 8. Acrobat 7. 8. beginning with PDF 1.2. If the appropriate plug-in extension (WebLink) is not present.3 Action Types (Sound Actions) 104. this is not supported. sixth edition 120 8.2.3.5. In PDF 1. The actions associated with these entries were never implemented.3 Action Types (URI Actions) 102.0. In PDF 1. the O and C events in a page object’s additional-actions dictionary are ignored if the document is not being displayed in a page-oriented layout mode. Acrobat 5.2. Acrobat 6. In Acrobat 3. In PDF 1. they are not inheritable.0. Acrobat viewers report the following error when a link annotation that uses a URI action is activated: “The plug-in required by this URI action is not available.” 8. The Acrobat viewer for the Windows platform uses the Windows function ShellExecute to launch an application.5 Annotation Types (Watermark Annotations) 97. these entries are obsolete and should be ignored.0 report an error when they encounter an action of type Movie. PDF 1. otherwise.3 Action Types (Movie Actions) 108. 107. 100. Acrobat viewers earlier than version 3. 103. 8. Watermark annotations are handled correctly only when Acrobat n-up printing is selected. the value of the Sound entry was allowed to be a file specification. Selecting n-up from within the printer driver does not produce correct results. but the same effect can be achieved by using an external stream. Although Acrobat 7.7 also supports this feature.5. the additional-actions dictionary could contain entries named NP (next page). and LP (last page). 106.0 officially supports PDF 1. PP (previous page).3.3. URI actions are resolved by the Acrobat WebLink plug-in extension.2 Trigger Events 98.0. The Win dictionary entries correspond to the parameters of ShellExecute.6.4.5. beginning with PDF 1.0 does not support the Synchronous entry. this entry is ignored.5. Acrobat viewers mute the sound if the value of Volume is negative.7 added the ability to apply markup annotations to 3D views.4. 99. Beginning with PDF 1. Beginning with Acrobat 4. additional-actions dictionaries were inheritable.3 Action Types (Launch Actions) 101. the actions associated with these events are executed if the document is in a page-oriented or single-column layout and are ignored if the document is in a multiple-column layout. 8. 105.5. FP (first page).

sixth edition 121 8. A font in the default resource dictionary (specified by the document’s DR entry. 114.” 112.39). DR. if the user explicitly saves the document before closing. see Table 8. the contents of the stream outside /Tx BMC.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference.3 Action Types (Named Actions) 111. Acrobat viewers earlier than version 3. 117. In PDF 1. was defined but was never implemented. Beginning in Acrobat 3. Acrobat 6. such as Encoding.5.6.. Acrobat 6. Acrobat viewers extend the list of named actions in Table 8. 8.0 report the following error when encountering an action of type Named: “The plug-in needed for this Named action is not available.6. 8.0 do not support Unicode encoding of field names. markup annotations can also make use of the resources in the DR dictionary.EMC are preserved.0. Beginning with PDF 1.5. In Acrobat. 8. Such objects are not actually resources and are not referenced from the appearance stream.0 report the following error when encountering an action of type Hide: “The plug-in needed for this Hide action is not available. However. In Acrobat viewers.61 to include most of the menu item names available in the viewer.0 and later support Unicode encoding of field names.0 recognizes only the stream value of the XFA entry. 8. partial field names cannot contain a period. Versions earlier than Acrobat 6.2 Field Dictionaries (Field Names) 116. Acrobat 6. If MK is not present. “Font Characteristics” on page 892 describes how this matching is done.1 Interactive Form Dictionary 113. . To select a font specified by attributes in a rich text string.5. Acrobat 6. as a convenience for keeping track of objects being used to construct form fields. Acrobat viewers regenerate the entire XObject appearance stream. the change in an annotation’s Hidden flag as a result of a hide action is temporary in that the user can subsequently close the document without being prompted to save changes and the effect of the hide action is lost. If the MK entry is present in the field’s widget annotation dictionary (see Table 8.0 follows this sequence. Acrobat viewers earlier than version 3. 8. 115.2 Field Dictionaries (Variable Text) 118.6. an additional entry in the field dictionary. 119. choosing the first appropriate font it finds: a. Acrobat viewers may insert additional entries in the DR resource dictionary.2 Field Dictionaries (Rich Text Strings) 120.” 110. this entry is obsolete and should be ignored..2.6.3 Action Types (Hide Actions) 109. such changes are saved and thus become permanent.67) whose font descriptor information matches the font specification in the rich text string.02 and later recognize both stream and array values.

PDFDocEncoding and the Unicode encoding are translated to a platform-specific encoding before interpretation by the JavaScript engine. On Mac OS.6.0. the current directory. 8. In Acrobat viewers. the System directory. In Acrobat 3.2 is not Unicode-compatible. and any directories listed in the PATH environment variable. All further updates to the version number will be made via the Version entry in the FDF catalog dictionary instead. ignoring the F and ID entries in the FDF dictionary of the FDF file. Acrobat searches in the Preferences folder and the Acrobat folder. 8. the FDF file header is permanently frozen at version 1.4 Form Actions (JavaScript Actions) 126.0 cannot accept any other version number because of a bug.6. In Acrobat 5.6.6. the Windows directory. If the designated FDF file is not found when the import-data action is performed. 8. On the Windows platform.6. ignoring generic font families.6. Conversely. Because JavaScript 1.4 “Form Actions (Import-Data Actions) 124. A font on the user’s system that matches the generic font family. The behavior of Acrobat has changed in the situation where a check box or radio button field have multiple children that have the same export value. A standard font (see implementation note 62) that most closely matches the other font specification properties and is appropriate for the current input locale. Acrobat viewers import the contents of the FDF file into the current document’s interactive form. d.4 Form Actions (Submit-Form Actions) 123. if specified. A matching font installed on the user’s system. 8. if the response is in any other format. . the RadiosInUnison flag allows the document author to choose between these behaviors. the behavior of radio buttons was changed to mimic HTML so that turning on a radio button always turned off its siblings regardless of export value. 8. Acrobat searches in the directory from which Acrobat was loaded.3 Field Types (Choice Fields) 122. c.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. 125.0. depending on the host platform. the URL must end in #FDF so that it can be recognized as such by the Acrobat software and handled properly. the URL should not end in #FDF.0. In Acrobat 6.0. if the response to a submit-form action uses Forms Data Format (FDF). When performing an import-data action. for example.6 Forms Data Format (FDF Header) 127.2.3 Field Dictionaries (Button Fields) 121. sixth edition 122 b. the Opt array must be homogenous: its elements must be either all text strings or all arrays. such buttons always turned off and on in unison. 8. Acrobat tries to locate the file in a few well-known locations. Acrobat viewers set the F entry to a relative file specification locating the FDF file with respect to the current PDF document file. In Acrobat 4. Because Acrobat viewers earlier than 5.

Acrobat 3. that any such existing scripts that generate new HTML forms in response need to be modified to generate FDF instead. 135. GBK. The only Encoding value supported by Acrobat 4.6. 134. and Acrobat 4. The ordinal number corresponds to the order in which the template is applied to a page. if an FDF file containing commonly used fields (such as name and address) is used to populate various types of forms. If any other value is specified.Template_0. Acrobat 5. is used. Acrobat fetches the specified form before importing the FDF file. Acrobat discards those fields. UHC. however. 138. if the first template used on the fifth page has the name Template and has the Rename flag set to true. for example.0 always took into account the line width used to draw the border.0 supports Shift-JIS.6. One possible use for exporting FDF with fields containing T entries but no V entries is to indicate to a server which fields are desired in the FDF files returned in response. the default. For example. 132. versions of Acrobat earlier than 6. 8. 136. fields defined in that template are renamed by prepending the character string P5. 133.0 is Shift-JIS. Acrobat sets the F entry in the FDF dictionary to a relative file specification giving the location of the FDF file relative to that of the file from which it was exported. 131. Acrobat renames fields by prepending a page number. PDFDocEncoding. a server accessing a database might use this information to decide whether to transmit all fields in a record or just some selected ones. For example. The Acrobat implementation of interactive forms displays the value of the Status entry. not all of which necessarily include all of the fields available in the FDF file.6 Forms Data Format (FDF Pages) 137. Acrobat does.96 on page 717.6 Forms Data Format (FDF Catalog) 128. if any. This feature can be useful.97 on page 719) allows the option of ignoring the line width. however. If an FDF file being imported contains fields whose fully qualified names are not in the form.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference.96 on page 717. with 0 being the first template specified for the page. . Adobe Extreme® printing systems require that the Rename flag be true. Note. Of all the possible entries shown in Table 8.6. As shown in Table 8. in an alert note when importing an FDF file.0. When scaling a button’s appearance to the bounds of an annotation. to their field names.6 Forms Data Format (FDF Fields) 130. 129. As noted in implementation note 133. the Acrobat implementation of interactive forms ignores fields in the imported FDF file that do not exist in the form. even when no border was being drawn. 8. The Acrobat implementation of forms allows the option of submitting the data in a submit-form action in HTML Form format for the benefit of existing server scripts written to process such forms. and an ordinal number to the field name. Beginning with Acrobat 6. If the FDF dictionary in an FDF file received as a result of a submit-form action contains an F entry specifying a form other than the one currently being displayed. sixth edition 123 8. a template name. and BigFive. import FDF files containing fields that have any of the described entries.0 exports only the V entry when generating FDF. the FB entry in the icon fit dictionary (see Table 8. the only required entry in the field dictionary is T. When exporting a form to an FDF file.0 and later versions export only the V and AP entries.

However.7.0 and 7.0 and greater conforming readers permit only those rights that are enabled by the entries in the dictionary.0 and 8.1 Transform Methods 141. any usage right that permits the document to be modified implicitly enables the FullSave right.0 and greater. In Acrobat 6.2 Signature Interoperability 146. and the FieldMDP transform parameters dictionary. it was a requirement that the signer’s signature be the first certificate in the PKCS#7 object. Note: This note is also attached to the description of the value of the Changes key in Table 8. even though this specification indicates otherwise. If the P entry in the UR transform parameters dictionary is true. Adobe Reader 7. the UR transform parameters dictionary. there is only an object signature) for FDF file signatures and usage rights signatures referenced from the UR entry of a permissions dictionary. In Adobe Reader 6. 140.0 mimic Reader 6. For all other rights. 142. Acrobat 7. Those dictionaries include the DocMDP transform parameters dictionary.0 and later do not provide the Changes entry.0 does not use DigestValue but compares the current and signed versions of the document.0 and greater.0.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference.0. but for maximum compatibility with earlier versions.0. FullSave must be explicitly enabled in order to save the document.0 removed this restriction.102. In Acrobat 7. the DigestMethod entry in the signature reference dictionary is required.7 Digital Signatures 139. 145. 8. Acrobat 7. Acrobat 6. Acrobat 6. 144.0 supports both UR and UR3. Adobe PDF generating applications that support PDF 1. 143. Acrobat 6. viewers permit saving the document as long as any rights that permit modifying the document are enabled. even though this specification indicates that entry is optional. it uses the UR3 dictionary if both are present. If the PDF document contains a UR3 dictionary. There is no byte range signature (that is. .0 always generate DigestValue when creating MDP signatures. sixth edition 124 8. 8. this practice should be followed.7. In versions earlier than Acrobat 6.0 requires a usage rights signature dictionary that is referenced from the UR entry of the permissions dictionary in order to validate the usage rights. (Signature rights permit saving as part of the signing process but not otherwise). Acrobat computes a byte range digest only when the signature dictionary is referenced from a signature field. Acrobat 6.0 behavior if the PDF document contains a UR dictionary but omits a UR3 dictionary. byte range digests are also computed for usage rights signatures referenced from the UR3 entry of a permissions dictionary.0 requires the presence of DigestValue in order to validate MDP signatures. the V entry in the various transform parameters dictionaries are required. In Acrobat 6. only rights specified by the Annots entry that permit the document to be modified implicitly enable the FullSave right. Acrobat 7.0. Acrobat 6.6 and greater generate UR only for backwards compatibility with Adobe Reader 6.

Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference.aiff .au . Acrobat viewers support only the DeviceRGB and DeviceGray color spaces for poster image XObjects.mp3 . For indexed color spaces with a base color space of DeviceRGB (see “Indexed Color Spaces” . Acrobat requires a PL entry to be present that specifies at least one player that can be used. sixth edition 125 8. The following media formats are recommended for use in authoring cross-platform PDF files intended for consumption by Acrobat 6.mov .mp4 .mp4 . Acrobat supports a maximum of two sound channels.1 Multimedia 148.6.0 officially supports PDF 1. Recommended media types COMMON EXTENSION COMMON MIME TYPE . PDF 1.3 Media Clip Objects (Media Clip Data) 149. 152. 9.3 Movies 151.mid . Acrobat viewers do not support the value of Aspect. 9.9 Document Requirements 147. Although Acrobat 7.1.0. If the CT entry is not present.7 added the ability to specify requirements the PDF consumer application must satisfy before it can process or display a PDF document.0.swf audio/aiff audio/basic video/avi audio/midi video/quicktime audio/x-mp3 audio/mp4 video/mp4 video/mpeg application/smil application/x-shockwave-flash DESCRIPTION Audio Interchange File Format NeXT/Sun™ Audio Format AVI (Audio/Video Interleaved) MIDI (Musical Instrument Digital Interface) QuickTime MPEG Audio Layer-3 MPEG-4 Audio MPEG-4 Video MPEG-2 Video Synchronized Multimedia Integration Language SWF File Format 9.mpeg .smil . 9.avi .5 also supports this document requirements feature.2 Sounds 150. Acrobat 7.

154. The PDF language contains no direct method of initiating an alternate presentation-defined slide show.7 did not honor the U3DPath entry of a 3D view dictionary.1. Although Acrobat 7. All resources must be either image XObjects (see Section 4. a QuickTime player (version 3 or later) must be installed. 9.0 and later ignores procedure sets.chiariglione. 153. (See Section 8. a slide show is invoked by a JavaScript call that is typically triggered by an interactive form element. “Image Dictionaries”) or embedded file streams (see Section 3. Acrobat 7. Embedded audio files must be of type . Acrobat 5. 10. ● Image XObjects used for slide shows must use the DCTDecode filter and a Device RGB color space.5 3D Artwork 157.7 supports text string values for this entry and deprecates the use of an array for its value. PDF 1. sixth edition 126 on page 262”).adobe. Acrobat viewers earlier than version 5.0 can handle this case properly.0.htm>). documented on Apple’s Developer Connection site at <http://developer.10. Embedded video must be QuickTime-compatible files of type .com/svg/>. 156. “Interactive Forms.1 Procedure Sets 159. “Embedded File Streams”).6. Instead. Acrobat viewers earlier than version 7. . To play video.0. ● ● 9.0 officially supports PDF 1.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference.wav (supported on Windows only.0.0 Specification defined by the W3C (see the Bibliography). Implementation notes on support of SVG by Adobe products are available at <http://www. Beginning with Acrobat 8. Color profile information must be specified in the image XObject dictionary as well as embedded within the stream. Acrobat 5. documented at <http://www. Acrobat 5. Acrobat viewers never allow any portion of a floating window to be offscreen. Acrobat no longer provides support for SVG slide shows. Acrobat 7.3.mov (MIME type video/quicktime.1 through 8.4. Also. Acrobat viewers treat a FWScale value of [999 1] as full screen. 158.avi (MIME type video/ms-video) or .7 also supports these new dictionaries.org/mpeg/index.7 introduced several new dictionaries for controlling the appearance and behavior of 3D artwork and for enabling markup annotations on 3D views. Acrobat 6.8.com>.0 support SVG slide shows (MIME content type image/svg+xml). Those versions of Acrobat support the Scalable Vector Graphics (SVG) 1.4 Alternate Presentations 155. it is necessary to specify hival as the number of colors.0 viewers.apple.0 respond to requests for unknown procedure sets by warning the user that a required procedure set is unavailable and canceling the printing operation.mp3 (MIME type audio/mpeg.0 viewers incorrectly treat hival as the number of colors rather than the number of colors . Acrobat viewers do not support authoring or rendering posters when the value of Poster is true.”) See the JavaScript for Acrobat API Reference (see the Bibliography) for information about starting and stopping a slide show using JavaScript. as well as the correct value of hival. MIME type audio/x-wav) or .1. for compatibility with 5.6.

9. In Acrobat 4. Adobe applications may pass the suggested information to the MD5 message digest algorithm to calculate file identifiers. In this case. the document has likely been saved by an application that is not aware of PDF 1. but the uniqueness of the identifier is not affected. 163. 10.4 or later should check for the existence of a metadata stream and synchronize the information in it with that in the document information dictionary. if the indirect reference to an image XObject is not removed from the O array when its reference count reaches 0. The Acrobat Web Capture plug-in treats external streams referenced within a PDF file as auxiliary data. two implementations of this algorithm might use different formats for the current time.2. applications that create PDF 1. Acrobat viewers display the document’s metadata in the Document Properties dialog box and impose a limit of 255 bytes on any string representing one of those values. the document modification date recorded in the document information dictionary is later than the metadata stream’s date stamp. all that matters is that the identifier is likely to be unique.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. the XObject is never garbage-collected during a save operation. so does the weak one. 10. however. The image set’s reference to the XObject may thus be considered a weak one that is relevant only for caching purposes.9. sixth edition 127 10.2 Metadata 160.2 Metadata Streams 161. 10. Although the ID entry is not required in a non-encrypted PDF. 10. information stored in the document information dictionary should be taken to override any semantically equivalent items in the metadata stream.2 Content Database (Digital Identifiers) 164. the metadata stream shall be taken as authoritative. 10. For example.4 Source Information (URL Alias Dictionaries) 166. Such streams are not used in generating the digital identifier. If. . It is recommended that other PDF conforming readers adopt this same implementation.3 Content Sets (Image Sets) 165.4 documents should include the metadata for a document in the document information dictionary as well as in the document’s metadata stream.4 metadata streams. when the last strong reference goes away. all Adobe applications that produce PDF files include this entry. The Adobe metadata framework provides a date stamp for metadata expressed in the framework. Applications that support PDF 1.0 and later versions. These strings can be shared among the chains and with other data structures. Note that the calculation of the file identifier need not be reproducible.3 File Identifiers 162. For backward compatibility. Acrobat adds this entry when saving a file if it is not already present.9. Acrobat viewers use an indirect object reference to a shared string for each URL in a URL alias dictionary. causing them to produce different file identifiers for the same file created at the same time. If this date stamp is equal to or later than the document modification date recorded in the document information dictionary.

Center the crop box on the medium. On the other hand. if the page is printed on a different size medium. Acrobat viewer and Distiller applications earlier than version 4. Select the media size and orientation according to the operating system’s Print Setup dialog. This problem has been corrected in later versions of Acrobat. The description above applies only in simple printing workflows that lack any other information about how PDF pages are to be imposed on the output medium. 172. TrimBox. producing predictable and dependable positioning of the page contents. (Acrobat has no direct control over this process.4 Output Intents 168.1 Page Boundaries 167. the crop box coincides with the edges of the medium. This occurs because the new. However.0 viewer prints a PDF file to a PostScript file or printer. saving a PDF file with the Optimize option selected causes a page’s trap networks to be incorrectly invalidated even if the contents of the page has not been changed. it is recommended that PDF files initially be created with the crop box the same as the media box (or equivalently. Acrobat 5.10. with the crop box omitted). Older viewers may fail to maintain the trap network annotation’s required position at the end of the Annots array. In Acrobat 4.0. 171. either in the PDF file (BleedBox.0 does not make direct use of the destination profile in the output intent dictionary. .10. optimized content stream generated for the page differs from the original content stream still referenced by the trap network annotation’s Version array. Acrobat viewers do not make use of the “to CIE” (AToB) information in an output intent’s ICC profile. other rules apply. the page may be repositioned or scaled in implementation-defined or user-specified ways. 10. Consequently. This ensures that if the page is printed on that size medium.0. it converts the OPI dictionary back to OPI comments. 174. or ArtBox) or in a separate job ticket (such as JDF or PJTF). 4. 3. 10. sixth edition 128 10. but third-party plug-in extensions might do so. In these circumstances. Acrobat 6. Optionally. if specified.10. rotating it if necessary to enable it to fit in both dimensions. 169. Although these options have varied from one Acrobat version to another. the default behavior is as follows: 1. When the Acrobat 3. Compute an effective crop box by clipping it with the media box and rotating the page according to the page object’s Rotate entry.6 Open Prepress Interface (OPI) 173.0 does make use of this profile.0 do not support OPI 2. the OPI information has no effect on the displayed image or form XObject. which depend on the details of the workflow.10. Acrobat provides various user-specified options for determining how the region specified by the crop box is to be imposed on the output medium during printing.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. In some workflows.5 Trapping Support (Trap Network Annotations) 170. scale the page up or down so that the crop box coincides with the edges of the medium in the more restrictive dimension.) 2. 10.0 Distiller application converts OPI comments into OPI dictionaries. Older viewers may fail to validate trap networks before printing. there is additional information. The Acrobat 3.

its value is taken to be 0. F.000 * 1 / 72). regardless of the value of OpenAction. Appendix C Implementation Limits 176. items 6 and 7 in the header section of the page offset hint table are set to 0. the size of the default user space unit may be set with the UserUnit entry of the page dictionary. Acrobat requires a white-space character to follow the left bracket ( [ ) character that begins the H array.000. “Hint Streams (Parts 5 and 10). Acrobat generates a value for the E parameter that incorrectly includes an object beyond the end of the first page as if it were part of the first page. Note: This implementation note is also referred to in Section F. In Acrobat. the minimum allowed page size is 3 by 3 units (approximately 0. which gives a maximum page dimension of 15.400 * 75.0 use the PostScript save and restore operators rather than gsave and grestore to implement q and Q.0.0 supports a maximum UserUnit value of 75.5. and set item 7 of each per-page hint table entry (Table F. F.0 (the default). Acrobat 7.8 Shared Objects (Part 8) 182. the maximum is 3240 by 3240 units (45 by 45 inches). In Acrobat versions 5. item 6 of the per-page entry effectively does not exist. the value of the F entry in an OPI dictionary must be a string.2.400 by 14.2.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to the PDF Reference. F. .6.6 First-Page Section (Part 6) 181. the size of the default user space unit is fixed at 1 / 72 inch. Acrobat always treats page 0 as the first page for linearization. In Acrobat viewers earlier than version 4. They also set item 9 equal to the value of item 5.” 180.000 inches (14. F.0 and later versions always set item 8 equal to 0. As a result. In Acrobat.0. item 5 in the header section of the shared objects hint table is unused and is always set to 0. sixth edition 129 175. the minimum allowed page size is 72 by 72 units in default user space (1 by 1 inch). Acrobat 4.000.400 units (200 by 200 inches).3. Acrobat does not currently support reading or writing files that have an overflow hint stream. the sequence of bytes constituting the content stream for a page is described as if the content stream were the first object in the page. 177.0 and later. the maximum is 14.04 by 0.1 Page Offset Hint Table 183. F. 184. The minimum UserUnit value is 1. That is. In Acrobat 3. Acrobat ignores all of these entries when reading the file. Beginning with PDF 1.6. even though it is not.2. and are subject to a nesting limit of 12 levels.2. Acrobat viewers earlier than 5. 179.3.2 Shared Object Hint Table 185.2 Linearization Parameter Dictionary (Part 2) 178.4) to be the same as item 2 of the per-page entry. In PDF versions earlier than PDF 1.04 inch). Acrobat does not generate shared object groups containing more than one object.

however. a navigator provides a custom view using a SWF file.5. For best results in Acrobat.0 stores data required by the welcome page and header in this way in the Resources entry of the collections dictionary. and private data. E-4. After being embedded and saved. Acrobat embeds the navigator in the portable collection. See also implementation note E-2.0. The custom navigator that Acrobat Pro embeds into the portable collection is a stand-alone file available on the local hard drive. 187. listed in the Bibliography. A navigator file collects into a single file. the navigator SWF file. all editions of Acrobat and Adobe Reader. 188. Acrobat writes unpredictable values for these items. Acrobat 9.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to Adobe Extensions to ISO 32000 130 186. and other resources required by the navigator. The navigator SWF file interacts with a host authoring or viewing application through Acrobat ActionScript API. the barcode plug-in was not available as a product feature until version 7. a NAV file. items 1 and 2 in the shared object hint table are not meaningful. Although PDF 1.0. beginning with version 9. Acrobat does not support more than one shared object in a group. The document Navigator Template Format.5 of Acrobat and Adobe Reader. localized strings. The navigator file format. can display a portable collection using the embedded custom navigator. such as images. E-3. . When an Acrobat user chooses a custom navigator while in authoring mode. is based on UCF. Implementation Notes to Adobe Extensions to ISO 32000 This section contains notes on the implementation by Acrobat of the Adobe extensions to the PDF language beyond that contained in ISO 32000.1 adds support for both XFA versions 2. the image referenced by the Icon entry may be any size.5 and 2. Acrobat 9.6. Support for Data Matrix and QR Code symbology was added in version 7. MD5 signatures are not implemented in Acrobat.) A navigator file contains an XML manifest. the image should be 42 x 42 pixels.0. the resources required by a navigator of a portable collection. describes the content and display of a header and welcome page of a portable collection.0 Pro has two standard navigators and several custom navigators. paper form barcodes could only encode PDF417 symbology.0. See the Acrobat ActionScript API Reference in the Bibliography. E-1. Authoring forms with barcodes has been available since version 6. In Acrobat 9. E-5. E-6. item 4 in a shared object group entry should always be 0. (See Uniform Container Format listed in the Bibliography. Acrobat 8. item 2 in a shared object group entry must be 0. See the Acrobat Navigator File Format in the Bibliography for information about the format for a navigator file. In a document consisting of only one page.7 supports two standard collection views (tile and details).0. In version 6. The implementation notes for Adobe extensions have a suffix of E-. E-2.

Acrobat does not honor the required flag when the LockDocument value is auto. the line width value defaults to zero. and if a matching appearance is not available. and DoNotSpellCheck.) Kids Entry: In Acrobat 9. E-10.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to Adobe Extensions to ISO 32000 131 E-7. interfere with the transparency model of the page.0 truncates the string (UT ). The AppearanceFilter is implemented as follows: If the AppearanceFilter is present. it defaults to the normal behavior where any appearance can be chosen. The behavior of Acrobat and the PPKLite signature handler is documented below for the LockDocument seed value.0 show invalidated signatures. the signer can choose whether to lock at the time of signing. Well Known Text strings can be used to fully specify an object.50d Entries in a RichMediaPresentation dictionary” on page 82) is set to true. and then opened in Acrobat 9. sixth edition. Documents signed with Acrobat 9.77 of the PDF Reference. These bit positions have the names ReadOnly.7. as determined by TB. E-11. 13. there is a limit of 255 on the array of indirect references to the barcode widget annotations that render the barcode. Rich Media Annotation artwork is always rendered above all page content and does not. is not large enough. One behavior discrepancy is that if the dictionary is not present.0. Acrobat 9. Multiline. (See Tables 8. Older viewers—earlier than 9.0—ignore and do not process the additional approval signature FieldMDP Lock state. or for custom coordinate systems not associated with EPSG codes. E-16.0 of the Adobe Reader software. Otherwise. E-9. PDF 1. E-8. To increase compatibility. with the same behavior as the value being set to false and the required flag not set. For EPSG codes that the Acrobat 9. it automatically chooses a matching appearance from the user interface. When the value for the key Transparent (as described in “TABLE 9. Each application and handler may choose how to honor the seed values. both Flash and 3D content are supported. The Acrobat implementation of barcode widget annotations sets the BG entry of the MK dictionary to[1.0 of the Adobe Reader software support only a subset of the Border Style dictionary (/BS). Consequently.0]to obtain a black background for the barcode widget annotation. E-15. If the text box. However. How seed values are interpreted is both application-specific and specific to the signature handler associated with the signature field. E-12.70 and 8. and then opened and modified in an older viewer (adding annotations). Acrobat processes the auto value as follows: If the document contains hidden fields. therefore. older viewers consider all fields locked when the document lock is applied using Acrobat 9. E-14. In the implementation for version 9. bits 1. Acrobat sets FieldMDP to lock all fields when the document is locked. including the line width and color values. the matching appearance is selected and the selection box disabled. Rich Media annotations in version 9.0 with locking. In Acrobat 9. adding annotations is still possible. A seed value of auto specifies that the implementation is application-specific. the signer is not allowed to lock the document. E-13. 3. If the AppearanceFilter is optional. and for AppearanceFilter in implementation note E-15. the Rich Media Annotation artwork is composited over already flattened page content using an alpha channel. the string length of WKT is limited to 1024 bytes. The Acrobat implementation of barcode form fields places several constraints on some of the entries in the field dictionary: Field Flags Entry: In the field dictionary of a barcode form field.0 implementation does not support. If the filter is required. and 23 of the Ff entry (field flags) are set.0. NoExport. .

IDs can be human-readable or a URN based on a machine-generated GUID. . only one copy is shown in the navigator list. if a WKT string is present. In addition to loading the navigator in the PDF file. in authoring mode. a portable collection authoring application— Acrobat Pro or Acrobat Pro Extended—loads the navigator with the highest version number when it finds more than one with the same ID and locale.0. If the PDF file's navigator is newer (higher version number). Acrobat.0 of Acrobat and Adobe Reader do not implement the value of A (annotation array order) of the Tabs entry of the page object. If an EPSG code is present. E-18. it shall be consistent with the WKT string.0. E-20. only it is shown. Acrobat Pro and Acrobat Pro Extended while in portable collection editing mode use the combination of ID. with the loaded navigator marked as new. E-19. usually shows the PDF file's navigator as well as all the loaded navigators. If one of the loaded navigators matches the PDF file's navigator (ID. For Acrobat 9. A Universally Unique Identifier (UUID) URN Namespace. This behavior allows the application to determine that the navigator embedded in a collection is the same as a navigator description stored on hard disk. Version 9. the EPSG code is used to specify the coordinate system. as long as they are likely to be unique. For version 9. If no WKT string is present. If the PDF file's navigator is older.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Implementation Notes Implementation Notes to Adobe Extensions to ISO 32000 132 E-17. both are shown. locale). version. and Version to uniquely identify a navigator. a PDF viewing application loads the navigator found in the PDF file. it is used to specify the coordinate system. GUIDs are defined in RFC4122. Locale. no matter what navigators are available. listed in the Bibliography.

72. 69. 74 A2 entry 63. 66. 69. 61 3D View dictionaries MA entry 57 Params entry 93 Snapshot entry 93 Type entry 93 3D view dictionaries MA entry 57 MS entry 57 3DMeasure object type 62 3DU entry 3D annotation dictionary 55 A A entry cue point dictionary 92 A tab order annotations 23. 74 N2 entry 63. 72 R entry 73 S entry 64. 65. 67. 72 UT entry 64. 68 D2 entry 68 DR entry 69 EL entry 72 N1 entry 63. 69. 69. 73. 75 D1 entry 66. 66. 68. 37 A Universally Unique Identifier (UUID) URN Namespace (Internet RFC 4122) 103 A1 entry 3D measurement/markup dictionary 63. 66. 68. 71 A3 entry 3D measurement/markup dictionary 72 A4 entry 3D measurement/markup dictionary 72 access flags 17 access permissions flags 17 accessibility preference not selected Acrobat 5 and earlier 118 Acrobat 6 118 Acrobat 7 118 Acrobat 8 118 Acrobat 9 118 accessibility preference selected 117 accessibility preference settings 117 ActionScript API for navigator accessing colors dictionary 30 accessing string table 37 Activation entry rich media settings dictionary 78 AES algorithm encrypting data 16 AESV2 decryption method crypt filters 16 AESV3 decryption method crypt filters 16 133 . 66. 59–61 DSm entry 60 DSn entry 60 DU entry 60 TSm entry 60 TSn entry 60 USm entry 60 USn entry 60 UU entry 60 3D units dictionary creation time units 59. 66. 69. 65. 69. 71 P entry 64. 72. 75 TX entry 69. 66. 71 C entry 64. 71 A3 entry 72 A4 entry 72 about 62 AP entry 63. 68.Index Number 3D activation dictionaries Style entry 56 Transparent entry 56 Window entry 56 3D annotation dictionaries 3DU entry 55 3D comment notes 74–75 3D content supported by Acrobat 9. 72 TY entry 64. 75 TRL entry 62 TS entry 64. 61 user override units 59. 59 A1 entry 63. 69. 66. 72 Type entry 62 U entry 64. 72 3D node dictionaries Data entry 58 Instance entry 58 N entry 58 RM entry 58 3D units dictionaries about 55. 66. 72. 65. 61 display units 59. 69. 71. 68. 72. 67.0 131 3D measurement/markup dictionaries 57. 68. 68. 75 SC entry 73 Subtype entry 62 TB entry 75 TP entry 63. 66. 65. 66. 69. 71. 74 A2 entry 3D measurement/markup dictionary 63. 75 V entry 64.

15. Tagged PDF artifact 100 coordinate systems geospatial (measurement properties) 48 rectilinear (measurement properties) 48 CreationDate entry folder dictionary 32 crypt filter dictionaries AuthEvent entry 16 CFM entry 16 crypt filters 13. 16 stream encryption 14 string encryption 15 cue point dictionaries 91–92 A entry 92 Name entry 92 Subtype entry 92 Time entry 92 Type entry 92 CuePoints entry rich media params dictionary 90 custom navigator C key in collection dictionary 29 custom navigators in Acrobat 9. 34 Split entry 30. 65. 31. 71 APIVersion entry navigator dictionary 35 AppearanceFilter 131 AppearanceFilter entry signature field seed value dictionary 44 artifacts. 33 collection split dictionaries about 30 Direction entry 31 Position entry 31 Colors entry collection dictionary 30. 72.0 Pro 130 Index 134 B Background entry collection colors dictionary 31 barcode form fields constraints on the field dictionary 131 barcode plug-in support 130 BaseVersion 23. 67–70 Animation entry rich media activation dictionary 79 annotation tab order 117 annotation types Projection 38 AP entry 3D measurement/markup dictionary 63. 33 CI entry folder dictionary 32. 75 Caption entry PaperMetaData generation parameters dictionary 46 CardBackground entry collection colors dictionary 31 CardBorder entry collection colors dictionary 31 case normalization in folder names for portable collections 33 Category entry navigator dictionary 35 CF entry encryption dictionary 14 CFM entry crypt filter dictionary 16 Child entry . 34 collection field dictionaries Subtype entry 30 collection item dictionary 32. 14.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 angular dimension measurement 62. 34 View entry 29. 34 Folders entry 30. 16 Identity 14. 33 collection colors dictionaries about 30 Background entry 31 CardBackground entry 31 CardBorder entry 31 PrimaryText entry 31 SecondaryText entry 31 collection dictionaries about 34 Colors entry 30. 25 Bates Numbering 101 Binding entry rich media params dictionary 90 BindingMaterialName entry rich media params dictionary 90 Border Style dictionary supported by Rich Media annotations 131 Bounds entry geospatial measure dictionary 50 C C entry 3D measurement/markup dictionary 64. 68. 66. 69. Tagged PDF pagination 101 Asset entry rich media instance dictionary 89 Assets entry rich media content dictionary 86 Assets name tree 87 AuthEvent entry crypt filter dictionary 16 folder dictionary 32. 34 Resources entry 29. 34 Navigator entry 29. 34 Condition entry rich media activation dictionary 79 rich media deactivation dictionary 80 Configuration entry rich media activation dictionary 79 Configurations entry rich media content dictionary 86 Contents entry.

33 CI entry 32. 68 D2 entry 3D measurement/markup dictionary 68 Data entry 3D node dictionary 58 view params dictionary 93 DCS entry geospatial measure dictionary 50. 18. 31. 51. 19 standard 16. projection annotation M3DREF entry 76 Subtype entry 76 Type entry 76 D D1 entry 3D measurement/markup dictionary 66. 34 E ECC entry PaperMetaData generation parameters dictionary 47 ECMA-363. 20. 20 R entry 16. ??–18 StmF entry 14 StrF entry 14 U entry 17. 33 Thumb entry 33 Type entry 32 Folder object type 32 Folders entry collection dictionary 30.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Index 135 encryption keys computing 17 and encryption revision number 14 length 13 encryption of data using the AES algorithm 16 EncryptMetadata entry encryption dictionary 18 Enforce entry viewer preferences dictionary 28 enforcing viewer preferences print scaling 28 EPSG entry geographic coordinate system dictionary 51. 19 OE entry 17. 21 file formats native to Acrobat products 106 file identifiers encryption 18 file names (UCF) 33 file specification dictionaries Thumb entry 26 file trailer dictionary ID entry 18 Filter entry encryption dictionary 19 Flash content supported by Acrobat 9. 16. 52 error correction coefficient (ECC) 47 ExData entry markup annotation dictionary 38 ExtensionLevel 25 Extensions entry document catalog 23 extensions to the PDF language beyond ISO 32000 130 external data dictionaries. 19 Perms entry 18. 33. 18. 34 ModDate entry 32 Name entry 32 Next entry 32. 19. 18. 20 V entry 13. 20 P entry 17. 19 Length entry 13. 19 O entry 17. 52 Deactivation entry rich media settings dictionary 78 Desc entry folder dictionary 32 navigator dictionary 35 dictionaries standard encryption 16 See encryption dictionary Direction entry collection split dictionary 31 DocOpen authorization event (crypt filters) 16 document catalog Extensions entry 23 DR entry 3D measurement/markup dictionary 69 DSm entry 3D units dictionary 60 DSn entry 3D units dictionary 60 DU entry 3D units dictionary 60 F Federal Information Processing Standards Publications 103 file encryption key 16. 37 encryption algorithms 14 key algorithm 16–19 encryption dictionary CF entry 14 EncryptMetadata entry 18 Filter entry 19 for standard security handler 16–18.0 131 FlashVars entry rich media params dictionary 90 folder dictionaries about 30 Child entry 32. Universal 3D file Format 103 EL entry 3D measurement/markup dictionary 72 EmbeddedFiles entry (name dictionary) 33. 14. 33 Parent entry 32. 18. 33 CreationDate entry 32 Desc entry 32 Free entry 33 ID entry 32. 52 EPSG reference code 51. 19 . 19 UE entry 17.

52 GCS entry 50. 34 navigator dictionary 35 Identity crypt filter 14. 71 name dictionary EmbeddedFiles entry 33. 52 GPTS entry 51 LPTS entry 51 PDU entry 50 GPTS entry geospatial measure dictionary 51 K Key Salt 19 L Length entry encryption dictionary 13. 19 linear dimension measurement 63–65 LoadType entry navigator dictionary 35 Locale entry navigator dictionary 36 LockDocument entry signature field seed value dictionary 44 locked fields and signatures older viewers 131 LPTS entry geospatial measure dictionary 51 H HAlign entry rich media position dictionary 84 Height entry PaperMetaData generation parameters dictionary 46 rich media window dictionary 84 HOffset entry rich media position dictionary 85 M M3DREF entry external data dictionary. 49 See geospatial measure dictionaries Measure entry image dictionary 27 type 1 form dictionary 27 metadata encryption of 18 unencrypted 18 ModDate entry folder dictionary 32 MS entry (3D view dictionary) 57 I Icon entry navigator dictionary 35 ID entry file trailer dictionary 18 folder dictionary 32. 33. 51. projection annotation 76 MA entry 3D View dictionary 57 MA entry (3D view dictionary) 57 markup annotation dictionaries ExData entry 38 MD5 message-digest algorithm hash function 18–19 measure dictionaries Subtype entry 48. 18. 52 WKT entry 51. 68.0 130 InitialFields entry navigator dictionary 36 Instance entry 3D node dictionary 58 view params dictionary 93 Instances entry rich media configuration dictionary 88 Internationalized Resource Identifiers (IRIs) 36 Internet RFCs (Requests for Comments) 3454 Preparation of Internationalized Strings (“stringprep”) 103 3986 Uniform Resource Identifier (URI): Generic Syntax 103 3987 Internationalized Resource Identifiers (IRIs) 103 N N entry 3D node dictionary 58 N1 entry 3D measurement/markup dictionary 63. 51. 16 image dictionaries Measure entry 27 PtData entry 27 image size in Acrobat 9. 51. 15. 52 geospatial measure dictionaries 49–51 Bounds entry 50 DCS entry 50. 66. 52 Type entry 51.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 folios 101 Free entry folder dictionary 33 Index 136 4013 SASLprep: Stringprep Profile for User Names and Passwords 103 4122 A Universally Unique Identifier (UUID) URN Namespace 103 G GCS entry geospatial measure dictionary 50. 37 XFAResources entry 23 Name entry cue point dictionary 92 . 65. 74 N2 entry 3D measurement/markup dictionary 63. 52 GEOGCS object type 51 geographic coordinate system dictionaries about 51 EPSG entry 51. 69.

34 navigator file format 130 navigator in the PDF file loading in Acrobat 9. 33 Index 137 page objects Tabs entry 23 pagination artifacts 101 PaperMetaData generation parameters dictionaries about 45 Caption entry 46 ECC entry 47 Height entry 46 Resolution entry 46 Symbology entry 46. 66. 18. 65–67 PlayCount entry rich media animation dictionary 81 PMD entry widget annotation dictionary 39 point data dictionaries 53–54 Names entry 54 Subtype entry 53 Type entry 53 XPTS entry 54 portable collections 26 Position entry collection split dictionary 31 rich media window dictionary 84 prefix registry 24 Preparation of Internationalized Strings (“stringprep”) (Internet RFC 3454) 103 Presentation entry rich media activation dictionary 80 PrimaryText entry collection colors dictionary 31 PrintScaling Enforce array 28 PROJCS object type 52 projected coordinate system dictionary 52 projection annotation 39. 18. 75 Projection annotation type 38 O O entry encryption dictionary 17.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 folder dictionary 32 navigator dictionary 34 rich media configuration dictionary 88 name trees name dictionary 33 Names entry point data dictionary 54 native file formats of Acrobat products 106 NavigationPane entry rich media presentation dictionary 83 navigator identifying in Acrobat Pro and Acrobat Pro Extended 132 navigator dictionaries APIVersion entry 35 Category entry 35 Desc entry 35 Icon entry 35 ID entry 35 InitialFields entry 36 LoadType entry 35 Locale entry 36 Name entry 34 Resources entry 36 Strings entry 36 SWF entry 34 Version entry 35 navigator dictionary Navigator entry in collection dictionary 29 Navigator entry collection dictionary 29. 72 encryption dictionary 17. 69.0 Pro 130 neatline 50 Next entry folder dictionary 32. 20 owner password 17 P P entry 3D measurement/markup dictionary 64. 19 . 47 Type entry 46 Version entry 46 Width entry 46 XSymHeight entry 47 XSymWidth entry 47 PaperMetaData object type 46 Params entry 3D View dictionary 93 rich media instance dictionary 89 Parent entry folder dictionary 32. 25 ExtensionLevel 25 PDU entry geospatial measure dictionary 50 Perms entry encryption dictionary 18. 33 PassContextClick entry rich media presentation dictionary 83 passwords owner 17 user 17 PDF extensions BaseVersion 23. 19 object types 3DMeasure 62 Folder 32 GEOGCS 51 PaperMetaData 46 PROJCS 52 PtData 53 OE entry encryption dictionary 17. 20 perpendicular dimension measurement 62.0 132 navigators about 34–37 custom in Acrobat 9.

34 navigator dictionary 36 rich media activation dictionaries 78–80 Animation entry 79 Condition entry 79 Configuration entry 79 Presentation entry 80 Scripts entry 80 Type entry 79 View entry 79 rich media animation dictionaries 80–82 PlayCount entry 81 Speed entry 81 Subtype entry 81 Type entry 81 rich media annotation dictionaries RichMediaContent entry 77 RichMediaSettings entry 77 Subtype entry 77 Rich Media annotations support of Border Style dictionary 131 rich media configuration dictionaries 88 Instances entry 88 Name entry 88 Subtype entry 88 Type entry 88 rich media content dictionaries 86–94 Assets entry 86 Configurations entry 86 Type entry 86 Views entry 86 rich media deactivation dictionaries 80 Condition entry 80 Type entry 80 rich media instance dictionaries 88–89 Asset entry 89 Params entry 89 Subtype entry 89 Type entry 89 rich media params dictionaries 90–91 Binding entry 90 BindingMaterialName entry 90 CuePoints entry 90 FlashVars entry 90 Settings entry 90 Type entry 90 S S entry 3D measurement/markup dictionary 64.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 PtData entry image dictionary 27 type 1 form dictionary 27 PtData object type 53 rich media position dictionaries HAlign entry 84 HOffset entry 85 Type entry 84 VAlign entry 85 VOffset entry 85 rich media presentation dictionaries 82–83 NavigationPane entry 83 PassContextClick entry 83 Style entry 82 Toolbar entry 83 Transparent entry 83 Type entry 82 Window entry 82 rich media settings dictionaries 78–86 Activation entry 78 Deactivation entry 78 Type entry 78 rich media window dictionaries 84–86 Height entry 84 Position entry 84 Type entry 84 Width entry 84 RichMediaContent entry rich media annotation dictionary 77 RichMediaSettings entry rich media annotation dictionary 77 RM entry 3D node dictionary 58 running heads 101 Index 138 R R entry 3D measurement/markup dictionary 73 encryption dictionary 16. 71–74 Resolution entry PaperMetaData generation parameters dictionary 46 Resources entry collection dictionary 29. 69. 19 radial dimension measurement 62. 67. 75 SASLprep: Stringprep Profile for User Names and Passwords (Internet RFC 4013) 103 SC entry 3D measurement/markup dictionary 73 Scripts entry rich media activation dictionary 80 SecondaryText entry collection colors dictionary 31 Security Requirements For Cryptographic Modules (FIPS PUB 140-2) 103 seed values interpreting 131 Settings entry rich media params dictionary 90 signature field seed value dictionaries AppearanceFilter entry 44 LockDocument entry 44 signatures and locked fields older viewers 131 slide shows initiating 126 Snapshot entry 3D View dictionary 93 Speed entry rich media animation dictionary 81 . 73.

19 V2 decryption method crypt filters 16 Validation Salt 19 . 75 TSm entry 3D units dictionary 60 TSn entry 3D units dictionary 60 TU entry 3D units dictionary 60 TU units dictionaries V V entry 3D measurement/markup dictionary 64. 75 Transparent entry 3D activation dictionary 56 rich media presentation dictionary 83 TRL entry 3D measurement/markup dictionary 62 TS entry 3D measurement/markup dictionary 64. Unicode Technical Standard #35 Locale Data Markup Language (LDML) 104 UU entry 3D units dictionary 60 T tab order for annotations 117 Tabs entry (page object) 23 TB entry 3D measurement/markup dictionary 75 Thumb entry file specification dictionary 26 folder dictionary 33 Time entry cue point dictionary 92 Toolbar entry rich media presentation dictionary 83 TP entry 3D measurement/markup dictionary 63. 66.1 126 SWF entry navigator dictionary 34 Symbology entry PaperMetaData generation parameters dictionary 46. projection annotation 76 folder dictionary 32 geographic coordinate system dictionary 51. 66. 72. 16. 66. 52 PaperMetaData generation parameters dictionary 46 point data dictionary 53 rich media activation dictionary 79 rich media animation dictionary 81 rich media configuration dictionary 88 rich media content dictionary 86 rich media deactivation dictionary 80 rich media instance dictionary 89 rich media params dictionary 90 rich media position dictionary 84 rich media presentation dictionary 82 rich media settings dictionary 78 rich media window dictionary 84 U U entry 3D measurement/markup dictionary 64. 69. 69. 69. 67. 72 type 1 form dictionaries Measure entry 27 PtData entry 27 Type entry 3D measurement/markup dictionary 62 3D View dictionary 93 cue point dictionary 92 external data dictionary. 34 StdCF crypt filter name 16 StmF entry encryption dictionary 14 StrF entry encryption dictionary 14 Strings entry navigator dictionary 36 Style entry 3D activation dictionary 56 rich media presentation dictionary 82 Subtype entry 3D measurement/markup dictionary 62 collection field dictionary 30 cue point dictionary 92 external data dictionary. 66. 72 encryption dictionary 13. 20 Unicode Technical Standard #35 36 Uniform Resource Identifier (URI): Generic Syntax (Internet RFC 3986) 103 Universal Container Format (UCF) specification 87 Universal Container Format (UCF) specification 33 user password 17 USm entry 3D units dictionary 60 USn entry 3D units dictionary 60 UT entry 3D measurement/markup dictionary 64. 66. 72 TY entry 3D measurement/markup dictionary 64.Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 Split entry collection dictionary 30. 72. 49 point data dictionary 53 rich media animation dictionary 81 rich media annotation dictionary 77 rich media configuration dictionary 88 rich media instance dictionary 89 Subtype entry. Tagged PDF artifact 100 SVG slide shows not supported by Acrobat 8. 69. 72. 47 Index 139 TSm entry 60 TX entry 3D measurement/markup dictionary 69. 19 UE entry encryption dictionary 17. 69. 75 UTS 35. projection annotation 76 measure dictionary 48. 72 encryption dictionary 17. 14.

Adobe Acrobat SDK Adobe® Supplement to the ISO 32000 VAlign entry rich media position dictionary 85 Version entry navigator dictionary 35 PaperMetaData generation parameters dictionary 46 view dictionaries 92–94 View entry collection dictionary 29.0 131 X XFA versions newly supported by Acrobat 8.1 130 xfa:spec attribute 42 XFAResources entry name dictionary 23 XPTS entry point data dictionary 54 XSymHeight entry PaperMetaData generation parameters dictionary 47 XSymWidth entry PaperMetaData generation parameters dictionary 47 . 131 widget annotation dictionaries PMD entry 39 Width entry PaperMetaData generation parameters dictionary 46 rich media window dictionary 84 Window entry 3D activation dictionary 56 rich media presentation dictionary 82 WKT entry geographic coordinate system dictionary 51. 34 rich media activation dictionary 79 view params dictionaries 93–94 Data entry 93 Instance entry 93 viewer preferences enforcing print scaling 28 viewer preferences dictionary Enforce entry 28 Views entry rich media content dictionary 86 VOffset entry rich media position dictionary 85 Index 140 W W tab order annotations 23 Well Known Text (WKT) 52 Well Known Text strings 51. 52 WKT length restriction in Acrobat 9.

Sign up to vote on this title
UsefulNot useful