# Package org.apache.fop.pdf

Classes for handling the low-level creation of PDF documents.

See: Description

Interface Summary
PDFColorSpace: PDF Color space.
PDFEncryption: This interface defines the contract for classes implementing PDF encryption.
PDFImage: Interface for a PDF image.
PDFWritable: This interface is implemented by classes that can be serialized to a PDF file either by serializing the object or by writing a indirect reference to the actual object.
RefPDFFont
StreamCache: Interface used to store the bytes for a PDFStream.
StructureType: A structure type, as defined in Section 10.6.2 of the PDF Reference, fourth edition (PDF 1.5).

Class Summary
AbstractPDFFontStream: Base class for PDF font streams.
AbstractPDFStream: This is an abstract base class for PDF streams.
AlphaRasterImage: PDFImage implementation for alpha channel "images".
ASCII85Filter: PDF Filter for ASCII85.
ASCIIHexFilter: ASCII Hex filter for PDF streams.
BitmapImage: Bitmap image.
CCFFilter: CCF Filter class.
CMapBuilder: A cmap builder.
DCTFilter: DCT Filter class.
DestinationComparator: Comparator class to enable comparing (and hence sorting) of PDFDestination objects.
FlateFilter: A filter to deflate a stream.
InMemoryStreamCache: StreamCache implementation that uses temporary files rather than heap.
NullFilter: Null Filter class.
ObjectStream: An object stream, as described in section 3.4.6 of the PDF 1.5 Reference.
PDFAction: class representing an action object.
PDFAnnotList: class representing an object which is a list of annotations.
PDFArray: Class representing an array object.
PDFCFFStream: Special PDFStream for embeddable CFF fonts.
PDFCFFStreamType0C: PDFStream for embeddable OpenType CFF fonts.
PDFCharProcs: class representing a /CharProcs dictionary for Type3 fonts.
PDFCIDFont: Class representing a "character identifier" font (p 210 and onwards).
PDFCIDFontDescriptor: Class representing a font descriptor for CID fonts.
PDFCIDSystemInfo: class representing system information for "character identifier" fonts.
PDFCIELabColorSpace: This class represents a "CIE L*a*b*" color space.
PDFCMap: Class representing the CMap encodings.
PDFColor: PDF Color object.
PDFColorHandler: This class handles the registration of color spaces and the generation of PDF code to select the right colors given a `Color` instance.
PDFDestination: class representing a named destination
PDFDests: class representing an /Dests dictionary object
PDFDeviceColorSpace: Represents a device-specific color space.
PDFDictionary: Class representing a PDF dictionary object
PDFDocument: Class representing a PDF document.
PDFDPart
PDFDPartRoot
PDFEmbeddedFile: This class represents an embedded file stream.
PDFEmbeddedFiles: Class representing an /EmbeddedFiles dictionary object (name tree).
PDFEncoding: Class representing an /Encoding object.
PDFEncryptionJCE: An implementation of the Standard Security Handler.
PDFEncryptionManager: This class acts as a factory for PDF encryption support.
PDFEncryptionParams: This class holds the parameters for PDF encryption.
PDFFactory: This class provides method to create and register PDF objects.
PDFFileSpec: Class representing a /FileSpec object.
PDFFilter: PDF Filter class.
PDFFilterList: This class represents a list of PDF filters to be applied when serializing the output of a PDF object.
PDFFont: Class representing a /Font object.
PDFFontDescriptor: Class representing a font descriptor (/FontDescriptor object).
PDFFontNonBase14: A common ancestor for Type1, TrueType, MMType1 and Type3 fonts (all except base 14 fonts).
PDFFontTrueType: Class representing a TrueType font.
PDFFontType0: Class representing a Type0 font.
PDFFontType1: Class representing a Type1 or MMType1 font (not necessary for the base 14).
PDFFontType3: Class representing a Type3 font.
PDFFormXObject: PDF Form XObject A derivative of the PDFXObject, is a PDF Stream that has not only a dictionary but a stream of image data.
PDFFunction: class representing a PDF Function.
PDFGoTo: class representing a /GoTo object.
PDFGoToRemote: Class representing a /GoToR object.
PDFGState: Class representing a /ExtGState object.
PDFICCBasedColorSpace: Represents an ICCBased color space in PDF.
PDFICCStream: Special PDFStream for ICC profiles (color profiles).
PDFIdentifiedDictionary: Identified Dictionary.
PDFImageXObject: PDF XObject A derivative of the PDF Object, is a PDF Stream that has not only a dictionary but a stream of image data.
PDFInfo: class representing an /Info object
PDFInternalLink: class used to create a PDF internal link
PDFJavaScriptLaunchAction: PDF Action which executes some JavaScript code.
PDFLaunch: This class represents the /Launch action.
PDFLayer: Optional Content Group Dictionary, which we will call a 'layer'.
PDFLayer.Resolver
PDFLinearization
PDFLink: class representing an /Annot object of /Subtype /Link
PDFMetadata: Special PDFStream for Metadata.
PDFName: Class representing a PDF name object.
PDFNames: Class representing a PDF Names object
PDFNameTreeNode: Class representing a PDF name tree node.
PDFNavigator: Navigation Node Dictionary, which we call a 'navigator'.
PDFNavigator.Resolver
PDFNavigatorAction
PDFNull: Class representing a PDF name object.
PDFNumber: This class represents a simple number object.
PDFNumberTreeNode: Class representing a PDF number tree node.
PDFNumsArray: Class representing an "Nums" array object (for Number Trees).
PDFObject: generic PDF object.
PDFObjectNumber
PDFOutline: This represents a single Outline object in a PDF, including the root Outlines object.
PDFOutputIntent: Represents the OutputIntent dictionary.
PDFPage: Class representing a /Page object.
PDFPageLabels: Class representing a PDF /PageLabels dictionary.
PDFPages: class representing a /Pages object.
PDFPaintingState: This keeps information about the current painting state when writing to pdf.
PDFParentTree: Class representing a PDF /ParentTree.
PDFPathPaint: Base class for PDF painting operations.
PDFPattern: class representing a PDF Function.
PDFProfile: This class allows tracks the enabled PDF profiles (PDF/A and PDF/X) and provides methods to the libarary and its users to enable the generation of PDFs conforming to the enabled PDF profiles.
PDFRectangle: class representing a rectangle Rectangles are specified on page 183 of the PDF 1.3 spec.
PDFReference: Class representing a PDF object reference.
PDFResourceContext: The PDF resource context.
PDFResources: Class representing a /Resources object.
PDFRoot: Class representing a Root (/Catalog) object.
PDFSeparationColorSpace: This class represents a "Separation" color space.
PDFSetOCGStateAction
PDFSetOCGStateAction.Resolver
PDFShading: class representing a PDF Smooth Shading object.
PDFSignature
PDFSignParams
PDFStream: Class representing a PDF stream.
PDFStructElem: Class representing a PDF Structure Element.
PDFStructElem.Placeholder: Class representing a placeholder for a PDF Structure Element.
PDFStructTreeRoot: Class representing a PDF /StructTreeRoot dictionary.
PDFT1Stream: Special PDFStream for embedding Type 1 fonts.
PDFText: This class represents a simple number object.
PDFTextUtil: Utility class for generating PDF text objects.
PDFToUnicodeCMap: Class representing ToUnicode CMaps.
PDFTransitionAction
PDFTransitionAction.Resolver
PDFTTFStream: Special PDFStream for embeddable TrueType fonts.
PDFUri: class used to create a PDF Uri link
PDFWArray: Class representing a W array for CID fonts.
PDFXObject: Abstract base class of PDF XObjects.
StandardStructureAttributes: Standard attributes, as defined in section 10.7.5 of the PDF Reference, Fourth edition (PDF 1.5).
StandardStructureAttributes.Table
StandardStructureTypes: Standard structure types, as defined in section 10.7.4 of the PDF Reference, Fourth Edition (PDF 1.5).
StandardStructureTypes.Grouping
StandardStructureTypes.Illustration
StandardStructureTypes.InlineLevelStructure
StandardStructureTypes.List
StandardStructureTypes.Paragraphlike
StandardStructureTypes.RubyOrWarichu
StandardStructureTypes.Table
StreamCacheFactory: This class is serves as a factory from
StructureHierarchyMember: An element in the document's structure tree.
TempFileStreamCache: StreamCache implementation that uses temporary files rather than heap.
TransitionDictionary: Transition Dictionary This class is used to build a transition dictionary to specify the transition between pages.
VersionController: An abstraction that controls the mutability of the PDF version for a document.

Enum Summary
PDFAMode: Enum class for PDF/A modes.
PDFInfo.StandardKey: The standard keys in the Document Information Dictionary
PDFUAMode: Enum class for PDF/UA modes.
PDFVTMode
PDFXMode: Enum class for PDF/X modes.
StandardStructureAttributes.Table.Scope
Version: A version of PDF.

Exception Summary
PDFConformanceException: RuntimeException descendant indicating a conformance problem during PDF generation.
PDFFilterException: PDF Filter exception.
TransparencyDisallowedException: The PDF profile being used does not allow transparency.

## Package org.apache.fop.pdf Description

Classes for handling the low-level creation of PDF documents.

These classes were developed for FOP, but could be used by other applications wishing to produce PDF.