Saturday, October 27, 2007
The Adobe Portable Document Format (PDF) is the native file format of the Adobe® Acrobat® family of products. The goal of these products is to enable users to exchange and view electronic documents easily and reliably, independently of the environment in which they were created. PDF relies on the same imaging model as the PostScript® page description language to describe text and graphics in a device-independent and resolution-independent manner. To improve performance
for interactive viewing, PDF defines a more structured format than that used by most PostScript language programs. PDF also includes objects, such as annotations and hypertext links, that are not part of the page itself but are useful for interactive viewing and document interchange.
1.1About This Book
This book provides a description of the PDF file format and is intended primarily for developers of PDF producer applications that create PDF files directly. It also contains enough information to allow developers to write PDF consumer applications that read existing PDF files and interpret or modify their contents.
Although the PDF Reference is independent of any particular software implementation, some PDF features are best explained by describing the way they are processed by a typical application program. In such cases, this book uses the Acrobat family of PDF viewer applications as its model. (The prototypical viewer is the fully capable Acrobat product, not the limited Adobe Reader® product.) Appendix C discusses some implementation limits in the Acrobat viewer applications, even though these limits are not part of the file format itself. Appendix H provides compatibility and implementation notes that describe how Acrobat viewers behave when they encounter newer features they do not understand and specify areas in which the Acrobat products diverge from the specification presented in this book. Implementors of PDF producer and consumer applications can use this information as guidance.
This edition of the PDF Reference describes version 1.7 of PDF. (See implementation note 1 in Appendix H.) Throughout the book, information specific to particular versions of PDF is marked with indicators such as (PDF 1.3) or (PDF 1.4). Features so marked may be new or substantially redefined in that version. Features designated (PDF 1.0) have generally been superseded in later versions; unless otherwise stated, features identified as specific to other versions are understood to be available in later versions as well. (PDF consumer applications designed for a specific PDF version generally ignore newer features they do not recognize; implementation notes in Appendix H point out exceptions.)
Note: In this edition, the term consumer is generally used to refer to PDF processing applications; viewer is reserved for applications that implement features that interact with users. This distinction is not always clear, however, since non-interactive applications may process objects in PDF documents (such as annotations) that represent interactive features.
The rest of the book is organized as follows:
•Chapter 2, "Overview," briefly introduces the overall architecture of PDF and the design considerations behind it, compares it with the PostScript language, and describes the underlying imaging model that they share.
•Chapter 3, "Syntax," presents the syntax of PDF at the object, file, and document level. It sets the stage for subsequent chapters, which describe how that information is interpreted as page descriptions, interactive navigational aids, and application-level logical structure.
•Chapter 4, "Graphics," describes the graphics operators used to describe the appearance of pages in a PDF document.
•Chapter 5, "Text," discusses PDF’s special facilities for presenting text in the form of character shapes, or glyphs, defined by fonts.
•Chapter 6, "Rendering," considers how device-independent content descriptions are matched to the characteristics of a particular output device.
•Chapter 7, "Transparency," discusses the operation of the transparent imaging model, introduced in PDF 1.4, in which objects can be painted with varying degrees of opacity, allowing the previous contents of the page to show through.
•Chapter 8, "Interactive Features," describes those features of PDF that allow a user to interact with a document on the screen by using the mouse and keyboard.
•Chapter 9, "Multimedia Features," describes those features of PDF that support embedding and playing multimedia content, including video, music and 3D artwork.
•Chapter 10, "Document Interchange," shows how PDF documents can incorporate higher-level information that is useful for the interchange of documents among applications.
•Appendix A, "Operator Summary," lists all the operators used in describing the visual content of a PDF document.
•Appendix B, "Operators in Type 4 Functions," summarizes the PostScript operators that can be used in PostScript calculator functions, which contain code written in a small subset of the PostScript language.
•Appendix C, "Implementation Limits," describes typical size and quantity limits imposed by the Acrobat viewer applications.
•Appendix D, "Character Sets and Encodings," lists the character sets and encodings that are assumed to be predefined in any PDF consumer application.
•Appendix E, "PDF Name Registry," discusses a registry, maintained for developers by Adobe Systems, that contains private names and formats used by PDF producers or Acrobat plug-in extensions.
•Appendix F, "Linearized PDF," describes a special form of PDF file organization designed to work efficiently in network environments.
•Appendix G, "Example PDF Files," presents several examples showing the structure of actual PDF files, ranging from one containing a minimal one-page document to one showing how the structure of a PDF file evolves over the course of several revisions.
•Appendix H, "Compatibility and Implementation Notes," provides details on the behavior of Acrobat viewer applications and describes how consumer applications should handle PDF files containing features that they do not recognize.
•Appendix I, "Computation of Object Digests," describes in detail an algorithm for calculating an object digest (discussed in Section 8.7, "Digital Signatures").
full pdf introduction
PDF Reference, Sixth Edition, version 1.7 (PDF, 31.0M)