PdfSharp The Pdf-Sharp-String-Resources. Loads the message from the resource associated with the enum type and formats it using 'String.Format'. Because this function is intended to be used during error handling it never raises an exception. The type of the parameter identifies the resource and the name of the enum identifies the message in the resource. Parameters passed through 'String.Format'. The formatted message. Gets the localized message identified by the specified DomMsgID. Writes all messages defined by PSMsgID. Gets the resource manager for this module. A special stream deflating or compressing the bytes that are written to it. It uses a Deflater to perform actual deflating.
Authors of the original java version: Tom Tromey, Jochen Hoenicke
This buffer is used temporarily to retrieve the bytes from the deflater and write them to the underlying output stream. The deflater which is used to deflate the stream. Base stream the deflater depends on. Sets the current position of this stream to the given value. Not supported by this class! Any access Sets the length of this stream to the given value. Not supported by this class! Any access Read a byte from stream advancing position by one Any access Read a block of bytes from stream Any access Asynchronous reads are not supported a NotSupportedException is always thrown Any access Asynchronous writes arent supported, a NotSupportedException is always thrown Any access Deflates everything in the input buffers. This will call def.deflate() until all bytes from the input buffers are processed. Creates a new DeflaterOutputStream with a default Deflater and default buffer size. the output stream where deflated output should be written. Creates a new DeflaterOutputStream with the given Deflater and default buffer size. the output stream where deflated output should be written. the underlying deflater. Creates a new DeflaterOutputStream with the given Deflater and buffer size. The output stream where deflated output is written. The underlying deflater to use The buffer size to use when deflating bufsize is less than or equal to zero. baseOutputStream does not support writing deflater instance is null Flushes the stream by calling flush() on the deflater and then on the underlying stream. This ensures that all bytes are flushed. Finishes the stream by calling finish() on the deflater. Not all input is deflated Calls finish() and closes the underlying stream when is true. Writes a single byte to the compressed output stream. The byte value. Writes bytes from an array to the compressed stream. The byte array The offset into the byte array where to start. The number of bytes to write. Encrypt a single byte The encrypted value Encrypt a block of data Data to encrypt. NOTE the original contents of the buffer are lost Offset of first byte in buffer to encrypt Number of bytes in buffer to encrypt Initializes encryption keys based on given password Update encryption keys Get/set flag indicating ownership of underlying stream. When the flag is true will close the underlying stream also. Allows client to determine if an entry can be patched after its added Gets value indicating stream can be read from Gets a value indicating if seeking is supported for this stream This property always returns false Get value indicating if this stream supports writing Get current length of stream The current position within the stream. Always throws a NotSupportedException Any attempt to set position Get/set the password used for encryption. When null no encryption is performed Computes Adler32 checksum for a stream of data. An Adler32 checksum is not as reliable as a CRC32 checksum, but a lot faster to compute. The specification for Adler32 may be found in RFC 1950. ZLIB Compressed Data Format Specification version 3.3) From that document: "ADLER32 (Adler-32 checksum) This contains a checksum value of the uncompressed data (excluding any dictionary data) computed according to Adler-32 algorithm. This algorithm is a 32-bit extension and improvement of the Fletcher algorithm, used in the ITU-T X.224 / ISO 8073 standard. Adler-32 is composed of two sums accumulated per byte: s1 is the sum of all bytes, s2 is the sum of all s1 values. Both sums are done modulo 65521. s1 is initialized to 1, s2 to zero. The Adler-32 checksum is stored as s2*65536 + s1 in most- significant-byte first (network) order." "8.2. The Adler-32 algorithm The Adler-32 algorithm is much faster than the CRC32 algorithm yet still provides an extremely low probability of undetected errors. The modulo on unsigned long accumulators can be delayed for 5552 bytes, so the modulo operation time is negligible. If the bytes are a, b, c, the second sum is 3a + 2b + c + 3, and so is position and order sensitive, unlike the first sum, which is just a checksum. That 65521 is prime is important to avoid a possible large class of two-byte errors that leave the check unchanged. (The Fletcher checksum uses 255, which is not prime and which also makes the Fletcher check insensitive to single byte changes 0 - 255.) The sum s1 is initialized to 1 instead of zero to make the length of the sequence part of s2, so that the length does not have to be checked separately. (Any sequence of zeroes has a Fletcher checksum of zero.)" Interface to compute a data checksum used by checked input/output streams. A data checksum can be updated by one byte or with a byte array. After each update the value of the current checksum can be returned by calling getValue. The complete checksum object can also be reset so it can be used again with new data. Resets the data checksum as if no update was ever called. Adds one byte to the data checksum. the data value to add. The high byte of the int is ignored. Updates the data checksum with the bytes taken from the array. buffer an array of bytes Adds the byte array to the data checksum. the buffer which contains the data the offset in the buffer where the data starts the length of the data Returns the data checksum computed so far. largest prime smaller than 65536 Creates a new instance of the Adler32 class. The checksum starts off with a value of 1. Resets the Adler32 checksum to the initial value. Updates the checksum with the byte b. the data value to add. The high byte of the int is ignored. Updates the checksum with the bytes taken from the array. buffer an array of bytes Updates the checksum with the bytes taken from the array. an array of bytes the start of the data used for this update the number of bytes to use for this update Returns the Adler32 data checksum computed so far. Represents an indirect boolean value. This type is not used by PDFsharp. If it is imported from an external PDF file, the value is converted into a direct object. Base class of all composite PDF objects. The base class of all PDF objects and simple types. Creates a copy of this object. Implements the copy mechanism. Must be overridden in derived classes. When overridden in a derived class, appends a raw string representation of this object to the specified PdfWriter. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance from an existing object. Used for object type transformation. Creates a copy of this object. The clone does not belong to a document, i.e. its owner and its iref are null. Implements the copy mechanism. Must be overridden in derived classes. Sets the object and generation number Setting the object identifier makes this object an indirect object, i.e. the object gets a PdfReference entry in the PdfReferenceTable. When overridden in a derived class, prepares the object to get saved. Saves the stream position. 2nd Edition. The document that owns the cloned objects. The root object to be cloned. The clone of the root object The imported object table of the owner for the external document. The document that owns the cloned objects. The root object to be cloned. The clone of the root object Replace all indirect references to external objects by their cloned counterparts owned by the importer document. Gets the PdfDocument this object belongs to. Gets or sets the PdfDocument this object belongs to. Indicates whether the object is an indirect object. Gets the PdfInternals object of this document, that grants access to some internal structures which are not part of the public interface of PdfDocument. Gets the object identifier. Returns PdfObjectID.Empty for direct objects. Gets the object number. Gets the generation number. Gets the indirect reference of this object. If the value is null, this object is a direct object. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Returns "false" or "true". Writes the keyword «false» or «true». Gets the value of this instance as boolean value. Specifies the page layout to be used by a viewer when the document is opened. Display one page at a time. Display the pages in one column. Display the pages in two columns, with oddnumbered pages on the left. Display the pages in two columns, with oddnumbered pages on the right. (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the left. (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the right. Terminal symbols recognized by lexer. An encoder for raw strings. The raw encoding is simply the identity relation between charachters and bytes. PDFsharp internally works with raw encoded strings instead of byte arrays because strings are much more handy than byte arrays. Represents a composite font. Used for Unicode encoding. Represents a PDF font. Represents a PDF dictionary object. The elements of the dictionary. Initializes a new instance of the class. Initializes a new instance of the class. The document. Initializes a new instance from an existing dictionary. Used for object type transformation. Creates a copy of this dictionary. Direct values are deep copied. Indirect references are not modified. This function is useful for importing objects from external documents. The returned object is not yet complete. irefs refer to external objects and directed objects are cloned but their document property is null. A cloned dictionary or array needs a 'fix-up' to be a valid object. Returns an enumerator that iterates through a collection. Returns a string with the content of this object in a readable form. Useful for debugging purposes only. Writes a key/value pair of this dictionary. This function is intended to be overridden in derived classes. Writes the stream of this dictionary. This function is intended to be overridden in a derived class. Creates the stream of this dictionary and initializes it with the specified byte array. The function must not be called if the dictionary already has a stream. Gets the hashtable containing the elements of this dictionary. Gets or sets the PDF stream belonging to this dictionary. Returns null if the dictionary has no stream. To create the stream, call the CreateStream function. When overridden in a derived class, gets the KeysMeta of this dictionary type. Represents the interface to the elements of a PDF dictionary. Creates a shallow copy of this object. The clone is not owned by a dictionary anymore. Moves this instance to another dictionary during object type transformation. Converts the specified value to boolean. If the value not exists, the function returns false. If the value is not convertible, the function throws an InvalidCastException. Converts the specified value to boolean. If the value not exists, the function returns false. If the value is not convertible, the function throws an InvalidCastException. Sets the entry to a direct boolean value. Converts the specified value to integer. If the value not exists, the function returns 0. If the value is not convertible, the function throws an InvalidCastException. Converts the specified value to integer. If the value not exists, the function returns 0. If the value is not convertible, the function throws an InvalidCastException. Sets the entry to a direct integer value. Converts the specified value to double. If the value not exists, the function returns 0. If the value is not convertible, the function throws an InvalidCastException. Converts the specified value to double. If the value not exists, the function returns 0. If the value is not convertible, the function throws an InvalidCastException. Sets the entry to a direct double value. Converts the specified value to String. If the value not exists, the function returns the empty string. Converts the specified value to String. If the value not exists, the function returns the empty string. Sets the entry to a direct string value. Converts the specified value to a name. If the value not exists, the function returns the empty string. Sets the specified name value. If the value doesn't start with a slash, it is added automatically. Converts the specified value to PdfRectangle. If the value not exists, the function returns an empty rectangle. If the value is not convertible, the function throws an InvalidCastException. Converts the specified value to PdfRectangle. If the value not exists, the function returns an empty rectangle. If the value is not convertible, the function throws an InvalidCastException. Sets the entry to a direct rectangle value, represented by an array with four values. Converts the specified value to XMatrix. If the value not exists, the function returns an identity matrix. If the value is not convertible, the function throws an InvalidCastException. Converts the specified value to XMatrix. If the value not exists, the function returns an identity matrix. If the value is not convertible, the function throws an InvalidCastException. Sets the entry to a direct matrix value, represented by an array with six values. Converts the specified value to DateTime. If the value not exists, the function returns the specified default value. If the value is not convertible, the function throws an InvalidCastException. Sets the entry to a direct datetime value. Gets the value for the specified key. If the value does not exist, it is optionally created. Short cut for GetValue(key, VCF.None). Returns the type of the object to be created as value of the specified key. Sets the entry with the specified value. DON'T USE THIS FUNCTION - IT MAY BE REMOVED. Returns the indirect object if the value of the specified key is a PdfReference. Gets the PdfObject with the specified key, or null, if no such object exists. If the key refers to a reference, the referenced PdfObject is returned. Gets the PdfArray with the specified key, or null, if no such object exists. If the key refers to a reference, the referenced PdfDictionary is returned. Gets the PdfArray with the specified key, or null, if no such object exists. If the key refers to a reference, the referenced PdfArray is returned. Gets the PdfReference with the specified key, or null, if no such object exists. Sets the entry to the specified object. The object must not be an indirect object, otherwise an exception is raised. Sets the entry as a reference to the specified object. The object must be an indirect object, otherwise an exception is raised. Returns an object for the object. Removes the value with the specified key. Removes the value with the specified key. Determines whether the dictionary contains the specified name. Determines whether the dictionary contains the specified name. Determines whether the dictionary contains a specific value. Removes all elements from the dictionary. Adds the specified value to the dictionary. Adds an item to the dictionary. Gets the value associated with the specified key. Copies the elements of the dictionary to an array, starting at a particular index. Gets the dictionary that this elements object belongs to. Gets a value indicating whether the object is read-only. Gets or sets an entry in the dictionary. The specified key must be a valid PDF name starting with a slash '/'. This property provides full access to the elements of the PDF dictionary. Wrong use can lead to errors or corrupt PDF files. Gets or sets an entry in the dictionary identified by a PdfName object. Gets all keys currently in use in this dictionary as an array of PdfName objects. Get all keys currently in use in this dictionary as an array of string objects. Gets all values currently in use in this dictionary as an array of PdfItem objects. Return false. Return false. Gets the number of elements contained in the dictionary. The current implementation returns null. The PDF stream objects. The dictionary the stream belongs to. A .NET string can contain char(0) as a valid character. Clones this stream by creating a deep copy. Moves this instance to another dictionary during object type transformation. Tries to unfilter the bytes of the stream. If the stream is filtered and PDFsharp knows the filter algorithm, the stream content is replaced by its unfiltered value and the function returns true. Otherwise the content remains untouched and the function returns false. The function is useful for analyzing existing PDF files. Compresses the stream with the FlateDecode filter. If a filter is already defined, the function has no effect. Returns the stream content as a raw string. Converts a raw encoded string into a byte array. Gets the length of the stream, i.e. the actual number of bytes in the stream. Get or sets the bytes of the stream as they are, i.e. if one or more filters exists the bytes are not unfiltered. Gets the value of the stream unfiltered. The stream content is not modified by this operation. Common keys for all streams. Base class for all dictionary Keys classes. (Required) The number of bytes from the beginning of the line following the keyword stream to the last byte just before the keyword endstream. (There may be an additional EOL marker, preceding endstream, that is not included in the count and is not logically part of the stream data.) (Optional) The name of a filter to be applied in processing the stream data found between the keywords stream and endstream, or an array of such names. Multiple filters should be specified in the order in which they are to be applied. (Optional) A parameter dictionary or an array of such dictionaries, used by the filters specified by Filter. If there is only one filter and that filter has parameters, DecodeParms must be set to the filter’s parameter dictionary unless all the filter’s parameters have their default values, in which case the DecodeParms entry may be omitted. If there are multiple filters and any of the filters has parameters set to nondefault values, DecodeParms must be an array with one entry for each filter: either the parameter dictionary for that filter, or the null object if that filter has no parameters (or if all of its parameters have their default values). If none of the filters have parameters, or if all their parameters have default values, the DecodeParms entry may be omitted. (Optional; PDF 1.2) The file containing the stream data. If this entry is present, the bytes between stream and endstream are ignored, the filters are specified by FFilter rather than Filter, and the filter parameters are specified by FDecodeParms rather than DecodeParms. However, the Length entry should still specify the number of those bytes. (Usually, there are no bytes and Length is 0.) (Optional; PDF 1.2) The name of a filter to be applied in processing the data found in the stream’s external file, or an array of such names. The same rules apply as for Filter. (Optional; PDF 1.2) A parameter dictionary, or an array of such dictionaries, used by the filters specified by FFilter. The same rules apply as for DecodeParms. Optional; PDF 1.5) A non-negative integer representing the number of bytes in the decoded (defiltered) stream. It can be used to determine, for example, whether enough disk space is available to write a stream to a file. This value should be considered a hint only; for some stream filters, it may not be possible to determine this value precisely. Initializes a new instance of the class. Adds a tag of exactly six uppercase letters to the font name according to PDF Reference Section 5.5.3 'Font Subsets' Gets a value indicating whether this instance is symbol font. Gets or sets the CMapInfo. Gets or sets ToUnicodeMap. Predefined keys common to all font dictionaries. (Required) The type of PDF object that this dictionary describes; must be Font for a font dictionary. (Required) The type of font. (Required) The PostScript name of the font. (Required except for the standard 14 fonts; must be an indirect reference) A font descriptor describing the font’s metrics other than its glyph widths. Note: For the standard 14 fonts, the entries FirstChar, LastChar, Widths, and FontDescriptor must either all be present or all be absent. Ordinarily, they are absent; specifying them enables a standard font to be overridden. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Required) The type of PDF object that this dictionary describes; must be Font for a font dictionary. (Required) The type of font; must be Type0 for a Type 0 font. (Required) The PostScript name of the font. In principle, this is an arbitrary name, since there is no font program associated directly with a Type 0 font dictionary. The conventions described here ensure maximum compatibility with existing Acrobat products. If the descendant is a Type 0 CIDFont, this name should be the concatenation of the CIDFont’s BaseFont name, a hyphen, and the CMap name given in the Encoding entry (or the CMapName entry in the CMap). If the descendant is a Type 2 CIDFont, this name should be the same as the CIDFont’s BaseFont name. (Required) The name of a predefined CMap, or a stream containing a CMap that maps character codes to font numbers and CIDs. If the descendant is a Type 2 CIDFont whose associated TrueType font program is not embedded in the PDF file, the Encoding entry must be a predefined CMap name. (Required) A one-element array specifying the CIDFont dictionary that is the descendant of this Type 0 font. ((Optional) A stream containing a CMap file that maps character codes to Unicode values. Gets the KeysMeta for these keys. Some static helper functions for calculations. Degree to radiant factor. Half of pi. Get page size in point from specified PageSize. Defines a single color object used to fill shapes and draw text. Classes derived from this abstract base class define objects used to fill the interiors of paths. Converts from a System.Drawing.Brush. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Gets or sets the color of this brush. Represents an abstract drawing surface for PdfPages. Fills the entire drawing surface with the specified color. Draws a straight line. Draws a series of straight lines. Draws a Bézier spline. Draws a series of Bézier splines. Draws a cardinal spline. Draws an arc. Draws a rectangle. Draws a series of rectangles. Draws a rectangle with rounded corners. Draws an ellipse. Draws a polygon. Draws a pie. Draws a cardinal spline. Draws a graphical path. Draws a series of glyphs identified by the specified text and font. Draws an image. Saves the current graphics state without changing it. Restores the specified graphics state. Sets all values that influence the page transformation. Writes a comment to the output stream. Comments have no effect on the rendering of the output. Gets or sets the transformation matrix. Represents a drawing surface for PdfPages. The q/Q nesting level is 0. The q/Q nesting level is 1. The q/Q nesting level is 2. Gets the content created by this renderer. Strokes a single connection of two points. Strokes a series of connected points. Clones the current graphics state and push it on a stack. Sets the clip path empty. Only possible if graphic state level has the same value as it has when the first time SetClip was invoked. The nesting level of the PDF graphics state stack when the clip region was set to non empty. Because of the way PDF is made the clip region can only be reset at this level. Writes a comment to the PDF content stream. May be useful for debugging purposes. Appends one or up to five Bézier curves that interpolate the arc. Gets the quadrant (0 through 3) of the specified angle. If the angle lies on an edge (0, 90, 180, etc.) the result depends on the details how the angle is used. Appends a Bézier curve for an arc within a quadrant. Appends a Bézier curve for a cardinal spline through pt1 and pt2. Appends the content of a GraphicsPath object. Initializes the default view transformation, i.e. the transformation from the user page space to the PDF page space. Ends the content stream, i.e. ends the text mode and balances the graphic state stack. Begins the graphic mode (i.e. ends the text mode). Makes the specified pen and brush to the current graphics objects. Makes the specified pen to the current graphics object. Makes the specified brush to the current graphics object. Makes the specified font and brush to the current graphics objects. Makes the specified image to the current graphics object. Realizes the current transformation matrix, if necessary. Gets the resource name of the specified font within this page or form. Gets the resource name of the specified image within this page or form. Gets the resource name of the specified form within this page or form. Saves the current graphical state. Restores the previous graphical state. The current graphical state. The graphical state stack. The final transformation from the world space to the default page space. Gets the owning PdfDocument of this page or form. Gets the PdfResources of this page or form. Gets the size of this page or form. Specifies the type of the bar code. The standard 2 of 5 interleaved bar code. The standard 3 of 9 bar code. The OMR code. The data matrix code. Represents a PDF content stream operator description. Initializes a new instance of the class. The name. The enum value of the operator. The number of operands. The postscript equivalent, or null, if no such operation exists. The flags. The description from Adobe PDF Reference. The name of the operator. The enum value of the operator. The number of operands. -1 indicates a variable number of operands. The flags. The postscript equivalent, or null, if no such operation exists. The description from Adobe PDF Reference. Static class with all PDF op-codes. Operators from name. The name. Initializes the class. Array of all OpCodes. Specifies the group of operations the op-code belongs to. Some floating point utilities. Partially reflected from WPF, later equalized with original source code. Indicates whether the values are so close that they can be considered as equal. Indicates whether the values are so close that they can be considered as equal. Indicates whether the values are so close that they can be considered as equal. Indicates whether the values are so close that they can be considered as equal. Indicates whether the values are so close that they can be considered as equal. Indicates whether the values are so close that they can be considered as equal. Indicates whether value1 is greater than value2 and the values are not close to each other. Indicates whether value1 is greater than value2 or the values are close to each other. Indicates whether value1 is less than value2 and the values are not close to each other. Indicates whether value1 is less than value2 or the values are close to each other. Indicates whether the value is between 0 and 1 or close to 0 or 1. Indicates whether the value is not a number. Indicates whether at least one of the four rectangle values is not a number. Indicates whether the value is 1 or close to 1. Indicates whether the value is 0 or close to 0. Converts a double to integer. Represents an indirect reference to an existing font table in a font image. Used to create binary copies of an existing font table that is not modified. Base class for all OpenType fonts. Creates a deep copy of the current instance. When overridden in a derived class, prepares the font table to be compiled into its binary representation. When overridden in a derived class, converts the font into its binary representation. Calculates the checksum of a table represented by its bytes. Gets the font image the table belongs to. Prepares the font table to be compiled into its binary representation. Converts the font into its binary representation. This table contains information that describes the glyphs in the font in the TrueType outline format. Information regarding the rasterizer (scaler) refers to the TrueType rasterizer. Converts the bytes in a handy representation Gets the data of the specified glyph. Gets the size of the byte array that defines the glyph. Gets the offset of the specified glyph relative to the first byte of the font image. Adds for all composite glyphs the glyphs the composite one is made of. If the specified glyph is a composite glyph add the glyphs it is made of to the glyph table. Prepares the font table to be compiled into its binary representation. Converts the font into its binary representation. This is the DeflaterHuffman class. This class is not thread safe. This is inherent in the API, due to the split of deflate and setInput. Author of the original java version: Jochen Hoenicke Pending buffer to use Reverse the bits of a 16 bit value. Value to reverse bits Value with bits reversed Construct instance with pending buffer Pending buffer to use Reset internal state Write all trees to pending buffer Compress current buffer writing data to pending buffer Flush block to output with no compression Data to write Index of first byte to write Count of bytes to write True if this is the last block Flush block to output with compression Data to flush Index of first byte to flush Count of bytes to flush True if this is the last block Get value indicating if internal buffer is full true if buffer is full Add literal to buffer Value indicating internal buffer is full Add distance code and length to literal and distance trees Distance code Length Value indicating if internal buffer is full Not documented Not documented Not documented Not documented Not documented Not documented Resets the internal state of the tree Not documented Check that at least one frequency is non-zero No frequencies are non-zero Set static codes and length new codes length for new codes Build dynamic codes and lengths Not documented Get encoded length Encoded length, the sum of frequencies * lengths Not documented Write tree values Tree to write Identifies the state of the document The document was created from scratch. The document was created by opening an existing PDF file. The document is disposed. Represents a link annotation. Represents the base class of all annotations. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Removes an annotation from the document Gets or sets the annotation flags of this instance. Gets or sets the PdfAnnotations object that this annotation belongs to. Gets or sets the annotation rectangle, defining the location of the annotation on the page in default user space units. Gets or sets the text label to be displayed in the title bar of the annotation’s pop-up window when open and active. By convention, this entry identifies the user who added the annotation. Gets or sets text representing a short description of the subject being addressed by the annotation. Gets or sets the text to be displayed for the annotation or, if this type of annotation does not display text, an alternate description of the annotation’s contents in human-readable form. Gets or sets the color representing the components of the annotation. If the color has an alpha value other than 1, it is ignored. Use property Opacity to get or set the opacity of an annotation. Gets or sets the constant opacity value to be used in painting the annotation. This value applies to all visible elements of the annotation in its closed state (including its background and border) but not to the popup window that appears when the annotation is opened. Predefined keys of this dictionary. (Optional) The type of PDF object that this dictionary describes; if present, must be Annot for an annotation dictionary. (Required) The type of annotation that this dictionary describes. (Required) The annotation rectangle, defining the location of the annotation on the page in default user space units. (Optional) Text to be displayed for the annotation or, if this type of annotation does not display text, an alternate description of the annotation’s contents in human-readable form. In either case, this text is useful when extracting the document’s contents in support of accessibility to users with disabilities or for other purposes. (Optional; PDF 1.4) The annotation name, a text string uniquely identifying it among all the annotations on its page. (Optional; PDF 1.1) The date and time when the annotation was most recently modified. The preferred format is a date string, but viewer applications should be prepared to accept and display a string in any format. (Optional; PDF 1.1) A set of flags specifying various characteristics of the annotation. Default value: 0. (Optional; PDF 1.2) A border style dictionary specifying the characteristics of the annotation’s border. (Optional; PDF 1.2) An appearance dictionary specifying how the annotation is presented visually on the page. Individual annotation handlers may ignore this entry and provide their own appearances. (Required if the appearance dictionary AP contains one or more subdictionaries; PDF 1.2) The annotation’s appearance state, which selects the applicable appearance stream from an appearance subdictionary. (Optional) An array specifying the characteristics of the annotation’s border. The border is specified as a rounded rectangle. In PDF 1.0, the array consists of three numbers defining the horizontal corner radius, vertical corner radius, and border width, all in default user space units. If the corner radii are 0, the border has square (not rounded) corners; if the border width is 0, no border is drawn. In PDF 1.1, the array may have a fourth element, an optional dash array defining a pattern of dashes and gaps to be used in drawing the border. The dash array is specified in the same format as in the line dash pattern parameter of the graphics state. For example, a Border value of [0 0 1 [3 2]] specifies a border 1 unit wide, with square corners, drawn with 3-unit dashes alternating with 2-unit gaps. Note that no dash phase is specified; the phase is assumed to be 0. Note: In PDF 1.2 or later, this entry may be ignored in favor of the BS entry. (Optional; PDF 1.1) An array of three numbers in the range 0.0 to 1.0, representing the components of a color in the DeviceRGB color space. This color is used for the following purposes: • The background of the annotation’s icon when closed • The title bar of the annotation’s pop-up window • The border of a link annotation (Optional; PDF 1.1) An action to be performed when the annotation is activated. Note: This entry is not permitted in link annotations if a Dest entry is present. Also note that the A entry in movie annotations has a different meaning. (Optional; PDF 1.1) The text label to be displayed in the title bar of the annotation’s pop-up window when open and active. By convention, this entry identifies the user who added the annotation. (Optional; PDF 1.3) An indirect reference to a pop-up annotation for entering or editing the text associated with this annotation. (Optional; PDF 1.4) The constant opacity value to be used in painting the annotation. This value applies to all visible elements of the annotation in its closed state (including its background and border) but not to the popup window that appears when the annotation is opened. The specified value is not used if the annotation has an appearance stream; in that case, the appearance stream must specify any transparency. (However, if the viewer regenerates the annotation’s appearance stream, it may incorporate the CA value into the stream’s content.) The implicit blend mode is Normal. Default value: 1.0. (Optional; PDF 1.5) Text representing a short description of the subject being addressed by the annotation. Initializes a new instance of the class. Initializes a new instance of the class. Creates a link within the current document. The link area in default page coordinates. The one-based destination page number. Creates a link to the web. Creates a link to a file. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Optional; not permitted if an A entry is present) A destination to be displayed when the annotation is activated. (Optional; PDF 1.2) The annotation’s highlighting mode, the visual effect to be used when the mouse button is pressed or held down inside its active area: N (None) No highlighting. I (Invert) Invert the contents of the annotation rectangle. O (Outline) Invert the annotation’s border. P (Push) Display the annotation as if it were being pushed below the surface of the page. Default value: I. Note: In PDF 1.1, highlighting is always done by inverting colors inside the annotation rectangle. (Optional; PDF 1.3) A URI action formerly associated with this annotation. When Web Capture changes and annotation from a URI to a go-to action, it uses this entry to save the data from the original URI action so that it can be changed back in case the target page for the go-to action is subsequently deleted. Gets the KeysMeta for these keys. Represents a PDF page object. Specifies the predefined PDF actions. Go to next page. Go to previous page. Go to first page. Go to last page. Represents a pair of floating point x- and y-coordinates that defines a point in a two-dimensional plane. Initializes a new instance of the XPoint class with the specified coordinates. Initializes a new instance of the XPoint class with the specified point. Initializes a new instance of the XPoint class with the specified point. Determines whether two points are equal. Determines whether two points are not equal. Indicates whether the specified points are equal. Indicates whether this instance and a specified object are equal. Indicates whether this instance and a specified point are equal. Returns the hash code for this instance. Parses the point from a string. Parses an array of points from a string. Converts this XPoint to a System.Drawing.Point. Converts this XPoint to a human readable string. Converts this XPoint to a human readable string. Converts this XPoint to a human readable string. Implements ToString. Offsets the x and y value of this point. Adds a point and a vector. Adds a point and a size. Adds a point and a vector. Subtracts a vector from a point. Subtracts a vector from a point. Subtracts a point from a point. Subtracts a size from a point. Subtracts a point from a point. Multiplies a point with a matrix. Multiplies a point with a matrix. Multiplies a point with a scalar value. Multiplies a point with a scalar value. Divides a point by a scalar value. Performs an explicit conversion from XPoint to XSize. Performs an explicit conversion from XPoint to XVector. For convergence with WPF use new XPoint(), not XPoint.Empty Gets the x-coordinate of this XPoint. Gets the x-coordinate of this XPoint. Indicates whether this XPoint is empty. Collects information of a font. Gets the font name. Gets the ascent value. Gets the ascent value. Gets the descent value. Gets the average width. The average width. Gets the height of capital letters. Gets the leading value. Gets the maximum width of a character. Gets an internal value. Gets an internal value. Gets the height of a character. Specifies the unit of measure. Specifies a printer's point (1/72 inch) as the unit of measure. Specifies the inch (2.54 cm) as the unit of measure. Specifies the millimeter as the unit of measure. Specifies the centimeter as the unit of measure. Specifies a presentation point (1/96 inch) as the unit of measure. Specifies how the content of an existing PDF page and new content is combined. The new content is inserted behind the old content and any subsequent drawing in done above the existing graphic. The new content is inserted before the old content and any subsequent drawing in done beneath the existing graphic. The new content entirely replaces the old content and any subsequent drawing in done on a blank page. Internal base class for several bar code types. Represents the base class of all bar codes. Represents the base class of all codes. Initializes a new instance of the class. When implemented in a derived class, determines whether the specified string can be used as Text for this bar code type. The code string to check. True if the text can be used for the actual barcode. Calculates the distance between an old anchor point and a new anchor point. Gets or sets the size. Gets or sets the text the bar code shall represent. Always MiddleCenter. Gets or sets the drawing direction. Initializes a new instance of the class. Creates a bar code from the specified code type. Creates a bar code from the specified code type. Creates a bar code from the specified code type. Creates a bar code from the specified code type. When defined in a derived class renders the code. When overridden in a derived class gets or sets the wide narrow ratio. Gets or sets the location of the text next to the bar code. Gets or sets the length of the data that defines the bar code. Gets or sets the optional start character. Gets or sets the optional end character. Gets or sets a value indicating whether the turbo bit is to be drawn. (A turbo bit is something special to Kern (computer output processing) company (as far as I know)) Initializes a new instance of the class. Renders a thick or thin line for the bar code. Determines whether a thick or a thin line is about to be rendered. Renders a thick or thin gap for the bar code. Determines whether a thick or a thin gap is about to be rendered. Renders a thick bar before or behind the code. Gets the width of a thick or a thin line (or gap). CalcLineWidth must have been called before. Determines whether a thick line's with shall be returned. Gets or sets the ration between thick an thin lines. Must be between 2 and 3. Optimal and also default value is 2.6. Imlpementation of the Code 3 of 9 bar code. Initializes a new instance of Standard3of9. Initializes a new instance of Standard3of9. Initializes a new instance of Standard3of9. Initializes a new instance of Standard3of9. Returns an array of size 9 that represents the thick (true) and thin (false) lines and spaces representing the specified digit. The character to represent. Calculates the thick and thin line widths, taking into account the required rendering size. Checks the code to be convertible into an standard 3 of 9 bar code. The code to be checked. Renders the bar code. Represents the signature field. Represents the base class for all interactive field dictionaries. Initializes a new instance of PdfAcroField. Initializes a new instance of the class. Used for type transformation. Gets a child field by name. Gets the name of this field. Gets the field flags of this instance. Gets or sets the value of the field. Gets or sets a value indicating whether the field is read only. Gets the field with the specified name. Indicates whether the field has child fields. Gets the names of all descendants of this field. Gets the collection of fields within this field. Holds a collection of interactive fields. Represents a PDF array object. Initializes a new instance of the class. Initializes a new instance of the class. The document. Initializes a new instance of the class. The document. The items. Initializes a new instance from an existing dictionary. Used for object type transformation. The array. Creates a copy of this array. Direct elements are deep copied. Indirect references are not modified. Implements the copy mechanism. Returns an enumerator that iterates through a collection. Returns a string with the content of this object in a readable form. Useful for debugging purposes only. Gets the collection containing the elements of this object. Represents the elements of an PdfArray. Creates a shallow copy of this object. Moves this instance to another dictionary during object type transformation. Converts the specified value to boolean. If the value not exists, the function returns false. If the value is not convertible, the function throws an InvalidCastException. If the index is out of range, the function throws an ArgumentOutOfRangeException. Converts the specified value to integer. If the value not exists, the function returns 0. If the value is not convertible, the function throws an InvalidCastException. If the index is out of range, the function throws an ArgumentOutOfRangeException. Converts the specified value to double. If the value not exists, the function returns 0. If the value is not convertible, the function throws an InvalidCastException. If the index is out of range, the function throws an ArgumentOutOfRangeException. Converts the specified value to string. If the value not exists, the function returns the empty string. If the value is not convertible, the function throws an InvalidCastException. If the index is out of range, the function throws an ArgumentOutOfRangeException. Converts the specified value to a name. If the value not exists, the function returns the empty string. If the value is not convertible, the function throws an InvalidCastException. If the index is out of range, the function throws an ArgumentOutOfRangeException. Returns the indirect object if the value at the specified index is a PdfReference. Gets the PdfObject with the specified index, or null, if no such object exists. If the index refers to a reference, the referenced PdfObject is returned. Gets the PdfArray with the specified index, or null, if no such object exists. If the index refers to a reference, the referenced PdfArray is returned. Gets the PdfArray with the specified index, or null, if no such object exists. If the index refers to a reference, the referenced PdfArray is returned. Gets the PdfReference with the specified index, or null, if no such object exists. Removes the item at the specified index. Removes the first occurrence of a specific object from the array/>. Inserts the item the specified index. Determines whether the specified value is in the array. Removes all items from the array. Gets the index of the specified item. Appends the specified object to the array. Copies the elements of the array to the specified array. Returns an enumerator that iterates through the array. Gets all items of this array. Returns false. Gets or sets an item at the specified index. Returns false. Returns false. Gets the number of elements in the array. The current implementation return null. Create a derived type like PdfTextField or PdfCheckBox if possible. If the actual cannot be guessed by PDFsharp the function returns an instance of PdfGenericField. Gets the names of all fields in the collection. Gets an array of all descendant names. Gets a field from the collection. For your convenience an instance of a derived class like PdfTextField or PdfCheckBox is returned if PDFsharp can guess the actual type of the dictionary. If the actual type cannot be guessed by PDFsharp the function returns an instance of PdfGenericField. Gets the field with the specified name. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. (Required for terminal fields; inheritable) The type of field that this dictionary describes: Btn Button Tx Text Ch Choice Sig (PDF 1.3) Signature Note: This entry may be present in a nonterminal field (one whose descendants are themselves fields) in order to provide an inheritable FT value. However, a nonterminal field does not logically have a type of its own; it is merely a container for inheritable attributes that are intended for descendant terminal fields of any type. (Required if this field is the child of another in the field hierarchy; absent otherwise) The field that is the immediate parent of this one (the field, if any, whose Kids array includes this field). A field can have at most one parent; that is, it can be included in the Kids array of at most one other field. (Optional) An array of indirect references to the immediate children of this field. (Optional) The partial field name. (Optional; PDF 1.3) An alternate field name, to be used in place of the actual field name wherever the field must be identified in the user interface (such as in error or status messages referring to the field). This text is also useful when extracting the document’s contents in support of accessibility to disabled users or for other purposes. (Optional; PDF 1.3) The mapping name to be used when exporting interactive form field data from the document. (Optional; inheritable) A set of flags specifying various characteristics of the field. Default value: 0. (Optional; inheritable) The field’s value, whose format varies depending on the field type; see the descriptions of individual field types for further information. (Optional; inheritable) The default value to which the field reverts when a reset-form action is executed. The format of this value is the same as that of V. (Optional; PDF 1.2) An additional-actions dictionary defining the field’s behavior in response to various trigger events. This entry has exactly the same meaning as the AA entry in an annotation dictionary. (Required; inheritable) A resource dictionary containing default resources (such as fonts, patterns, or color spaces) to be used by the appearance stream. At a minimum, this dictionary must contain a Font entry specifying the resource name and font dictionary of the default font for displaying the field’s text. (Required; inheritable) The default appearance string, containing a sequence of valid page-content graphics or text state operators defining such properties as the field’s text size and color. (Optional; inheritable) A code specifying the form of quadding (justification) to be used in displaying the text: 0 Left-justified 1 Centered 2 Right-justified Default value: 0 (left-justified). Initializes a new instance of PdfSignatureField. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. (Optional) The type of PDF object that this dictionary describes; if present, must be Sig for a signature dictionary. (Required; inheritable) The name of the signature handler to be used for authenticating the field’s contents, such as Adobe.PPKLite, Entrust.PPKEF, CICI.SignIt, or VeriSign.PPKVS. (Optional) The name of a specific submethod of the specified handler. (Required) An array of pairs of integers (starting byte offset, length in bytes) describing the exact byte range for the digest calculation. Multiple discontinuous byte ranges may be used to describe a digest that does not include the signature token itself. (Required) The encrypted signature token. (Optional) The name of the person or authority signing the document. (Optional) The time of signing. Depending on the signature handler, this may be a normal unverified computer time or a time generated in a verifiable way from a secure time server. (Optional) The CPU host name or physical location of the signing. (Optional) The reason for the signing, such as (I agree…). Gets the KeysMeta for these keys. Represents a interactive form (or AcroForm), a collection of fields for gathering information interactively from the user. Initializes a new instance of AcroForm. Gets the fields collection of this form. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. (Required) An array of references to the document’s root fields (those with no ancestors in the field hierarchy). (Optional) A flag specifying whether to construct appearance streams and appearance dictionaries for all widget annotations in the document. Default value: false. (Optional; PDF 1.3) A set of flags specifying various document-level characteristics related to signature fields. Default value: 0. (Required if any fields in the document have additional-actions dictionaries containing a C entry; PDF 1.3) An array of indirect references to field dictionaries with calculation actions, defining the calculation order in which their values will be recalculated when the value of any field changes. (Optional) A document-wide default value for the DR attribute of variable text fields. (Optional) A document-wide default value for the DA attribute of variable text fields. (Optional) A document-wide default value for the Q attribute of variable text fields. Gets the KeysMeta for these keys. Base namespace of PDFsharp. Most classes are implemented in nested namespaces like e. g. PdfSharp.Pdf. Specifies the orientation of a page. The default page orientation. The width and height of the page are reversed. Contains the output from the Inflation process. We need to have a window so that we can refer backwards into the output stream to repeat stuff.
Author of the original java version: John Leuner
Write a byte to this output window value to write if window is full Append a byte pattern already in the window itself length of pattern to copy distance from end of window pattern occurs If the repeated data overflows the window Copy from input manipulator to internal window source of data length of data to copy the number of bytes copied Copy dictionary to window source dictionary offset of start in source dictionary length of dictionary If window isnt empty Get remaining unfilled space in window Number of bytes left in window Get bytes available for output in window Number of bytes filled Copy contents of window to output buffer to copy to offset to start at number of bytes to count The number of bytes copied If a window underflow occurs Reset by clearing window so GetAvailable returns 0 Hold information about the value of a key in a dictionary. This information is used to create and interpret this value. Initializes a new instance of KeyDescriptor from the specified attribute during a KeysMeta initializes itself using reflection. Returns the type of the object to be created as value for the described key. Gets or sets the PDF version starting with the availability of the described key. Contains meta information about all keys of a PDF dictionary. Exception thrown by PdfReader. Base class of all exceptions in the PDFsharp frame work. Initializes a new instance of the class. Initializes a new instance of the class. The exception message. Initializes a new instance of the class. The exception message. The inner exception. Initializes a new instance of the class. Initializes a new instance of the class. The message. Initializes a new instance of the class. The message. The inner exception. Represents a shading pattern dictionary. Represents a base class for dictionaries with a content stream. Implement IContentStream for use with a content writer. Initializes a new instance of the class. Initializes a new instance of the class. The document. Initializes a new instance from an existing dictionary. Used for object type transformation. Gets the resource name of the specified image within this dictionary. Implements the interface because the primary function is internal. Gets the resource name of the specified form within this dictionary. Implements the interface because the primary function is internal. Gets the resources dictionary of this dictionary. If no such dictionary exists, it is created. Implements the interface because the primary function is internal. Predefined keys of this dictionary. (Optional but strongly recommended; PDF 1.2) A dictionary specifying any resources (such as fonts and images) required by the form XObject. Initializes a new instance of the class. Setups the shading pattern from the specified brush. Gets the KeysMeta of this dictionary type. Common keys for all streams. (Optional) The type of PDF object that this dictionary describes; if present, must be Pattern for a pattern dictionary. (Required) A code identifying the type of pattern that this dictionary describes; must be 2 for a shading pattern. (Required) A shading object (see below) defining the shading pattern’s gradient fill. (Optional) An array of six numbers specifying the pattern matrix. Default value: the identity matrix [1 0 0 1 0 0]. (Optional) A graphics state parameter dictionary containing graphics state parameters to be put into effect temporarily while the shading pattern is painted. Any parameters that are not so specified are inherited from the graphics state that was in effect at the beginning of the content stream in which the pattern is defined as a resource. Gets the KeysMeta for these keys. Represents an external form object (e.g. an imported page). Base class for all PDF external objects. Initializes a new instance of the class. The document that owns the object. Predefined keys of this dictionary. Gets the resource name of the specified font data within this form XObject. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Optional) The type of PDF object that this dictionary describes; if present, must be XObject for a form XObject. (Required) The type of XObject that this dictionary describes; must be Form for a form XObject. (Optional) A code identifying the type of form XObject that this dictionary describes. The only valid value defined at the time of publication is 1. Default value: 1. (Required) An array of four numbers in the form coordinate system, giving the coordinates of the left, bottom, right, and top edges, respectively, of the form XObject’s bounding box. These boundaries are used to clip the form XObject and to determine its size for caching. (Optional) An array of six numbers specifying the form matrix, which maps form space into user space. Default value: the identity matrix [1 0 0 1 0 0]. (Optional but strongly recommended; PDF 1.2) A dictionary specifying any resources (such as fonts and images) required by the form XObject. (Optional; PDF 1.4) A group attributes dictionary indicating that the contents of the form XObject are to be treated as a group and specifying the attributes of that group (see Section 4.9.2, “Group XObjects”). Note: If a Ref entry (see below) is present, the group attributes also apply to the external page imported by that entry, which allows such an imported page to be treated as a group without further modification. Gets the KeysMeta for these keys. Holds all temporary information needed during rendering. Base class for all PDF content stream objects. Initializes a new instance of the class. Creates a new object that is a copy of the current instance. Creates a new object that is a copy of the current instance. Implements the copy mechanism. Must be overridden in derived classes. Represents a comment in a PDF content stream. Creates a new object that is a copy of the current instance. Implements the copy mechanism of this class. Returns a string that represents the current comment. Gets or sets the comment text. Represents a sequence of objects in a PDF content stream. Creates a new object that is a copy of the current instance. Implements the copy mechanism of this class. Adds the specified sequence. The sequence. Adds the specified value add the end of the sequence. Removes all elements from the sequence. Determines whether the specified value is in the sequence. Returns the index of the specified value in the sequence or -1, if no such value is in the sequence. Inserts the specified value in the sequence. Removes the specified value from the sequence. Removes the value at the specified index from the sequence. Copies the elements of the sequence to the specified array. Returns an enumerator that iterates through the sequence. Converts the sequence to a PDF content stream. Returns a string containing all elements of the sequence. Gets or sets a CObject at the specified index. Gets the number of elements contained in the sequence. Represents the base class for numerical objects in a PDF content stream. Creates a new object that is a copy of the current instance. Implements the copy mechanism of this class. Represents an integer value in a PDF content stream. Creates a new object that is a copy of the current instance. Implements the copy mechanism of this class. Returns a string that represents the current value. Gets or sets the value. Represents a real value in a PDF content stream. Creates a new object that is a copy of the current instance. Implements the copy mechanism of this class. Returns a string that represents the current value. Gets or sets the value. Represents a string value in a PDF content stream. Creates a new object that is a copy of the current instance. Implements the copy mechanism of this class. Returns a string that represents the current value. Gets or sets the value. Represents a name in a PDF content stream. Initializes a new instance of the class. Initializes a new instance of the class. The name. Creates a new object that is a copy of the current instance. Implements the copy mechanism of this class. Returns a string that represents the current value. Gets or sets the name. Names must start with a slash. Represents an array of objects in a PDF content stream. Creates a new object that is a copy of the current instance. Implements the copy mechanism of this class. Returns a string that represents the current value. Represents an operator a PDF content stream. Initializes a new instance of the class. Creates a new object that is a copy of the current instance. Implements the copy mechanism of this class. Returns a string that represents the current operator. Gets or sets the name of the operator The name. Gets or sets the operands. The operands. Gets the operator description for this instance. Provides access to the internal PDF object data structures. This class prevents the public interfaces from pollution with to much internal functions. Gets the object identifier. Returns PdfObjectID.Empty for direct objects. Gets the object number. Gets the generation number. Gets the name of the current type. Not a very useful property, but can be used for data binding. Specifies the flags of AcroForm fields. If set, the user may not change the value of the field. Any associated widget annotations will not interact with the user; that is, they will not respond to mouse clicks or change their appearance in response to mouse motions. This flag is useful for fields whose values are computed or imported from a database. If set, the field must have a value at the time it is exported by a submit-form action. If set, the field must not be exported by a submit-form action. If set, the field is a pushbutton that does not retain a permanent value. If set, the field is a set of radio buttons; if clear, the field is a checkbox. This flag is meaningful only if the Pushbutton flag is clear. (Radio buttons only) If set, exactly one radio button must be selected at all times; clicking the currently selected button has no effect. If clear, clicking the selected button deselects it, leaving no button selected. If set, the field may contain multiple lines of text; if clear, the field’s text is restricted to a single line. If set, the field is intended for entering a secure password that should not be echoed visibly to the screen. Characters typed from the keyboard should instead be echoed in some unreadable form, such as asterisks or bullet characters. To protect password confidentiality, viewer applications should never store the value of the text field in the PDF file if this flag is set. (PDF 1.4) If set, the text entered in the field represents the pathname of a file whose contents are to be submitted as the value of the field. (PDF 1.4) If set, the text entered in the field will not be spell-checked. (PDF 1.4) If set, the field will not scroll (horizontally for single-line fields, vertically for multiple-line fields) to accommodate more text than will fit within its annotation rectangle. Once the field is full, no further text will be accepted. If set, the field is a combo box; if clear, the field is a list box. If set, the combo box includes an editable text box as well as a drop list; if clear, it includes only a drop list. This flag is meaningful only if the Combo flag is set. If set, the field’s option items should be sorted alphabetically. This flag is intended for use by form authoring tools, not by PDF viewer applications; viewers should simply display the options in the order in which they occur in the Opt array. (PDF 1.4) If set, more than one of the field’s option items may be selected simultaneously; if clear, no more than one item at a time may be selected. (PDF 1.4) If set, the text entered in the field will not be spell-checked. This flag is meaningful only if the Combo and Edit flags are both set. Specifies how the document should be displayed by a viewer when opened. Left to right. Right to left (including vertical writing systems, such as Chinese, Japanese, and Korean) Helper functions for RGB and CMYK colors. Checks whether a color mode and a color match. Checks whether the color mode of a document and a color match. Determines whether two colors are equal referring to their CMYK color values. Represents a PDF resource object. Initializes a new instance of the class. The document. Adds the specified font to this resource dictionary and returns its local resource name. Adds the specified image to this resource dictionary and returns its local resource name. Adds the specified form object to this resource dictionary and returns its local resource name. Adds the specified graphics state to this resource dictionary and returns its local resource name. Adds the specified pattern to this resource dictionary and returns its local resource name. Adds the specified pattern to this resource dictionary and returns its local resource name. Adds the specified shading to this resource dictionary and returns its local resource name. Check whether a resource name is already used in the context of this resource dictionary. PDF4NET uses GUIDs as resource names, but I think this weapon is to heavy. All the names of imported resources. Maps all PDFsharp resources to their local resource names. Gets the fonts map. Gets the external objects map. Gets a new local name for this resource. Gets a new local name for this resource. Gets a new local name for this resource. Gets a new local name for this resource. Gets a new local name for this resource. Gets a new local name for this resource. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Optional) A dictionary that maps resource names to graphics state parameter dictionaries. (Optional) A dictionary that maps each resource name to either the name of a device-dependent color space or an array describing a color space. (Optional) A dictionary that maps each resource name to either the name of a device-dependent color space or an array describing a color space. (Optional; PDF 1.3) A dictionary that maps resource names to shading dictionaries. (Optional) A dictionary that maps resource names to external objects. (Optional) A dictionary that maps resource names to font dictionaries. (Optional) An array of predefined procedure set names. (Optional; PDF 1.2) A dictionary that maps resource names to property list dictionaries for marked content. Gets the KeysMeta for these keys. Contains information about a physical device like a display or a printer. Width, in millimeters, of the physical screen or device. Height, in millimeters, of the physical screen or device. Width, in pixels, of the screen or device. Height, in pixels, of the screen or device. Number of pixels per logical inch along the screen or device width. Number of pixels per logical inch along the screen or device height. Number of pixels per physical inch along the screen or device width. Number of pixels per physical inch along the screen or device height. The ratio of LogicalDpiX and PhysicalDpiX. The ratio of LogicalDpiY and PhysicalDpiY. Gets a DeviceInfo for the specifed device context. Represents a 3-by-3 matrix that represents an affine 2D transformation. Initializes a new instance of the XMatrix struct. Sets this matrix into an identity matrix. Fixes a bug that XMatrixTypes.Identity is not handled correctly in some cases. Gets an array of double values that represents the elements of this matrix. Multiplies two matrices. Multiplies two matrices. Appends the specified matrix to this matrix. Prepends the specified matrix to this matrix. Appends the specified matrix to this matrix. Prepends the specified matrix to this matrix. Multiplies this matrix with the specified matrix. Appends a translation of the specified offsets to this matrix. Appends a translation of the specified offsets to this matrix. Prepends a translation of the specified offsets to this matrix. Translates the matrix with the specified offsets. Appends the specified scale vector to this matrix. Appends the specified scale vector to this matrix. Prepends the specified scale vector to this matrix. Scales the matrix with the specified scalars. Scales the matrix with the specified scalar. Appends the specified scale vector to this matrix. Prepends the specified scale vector to this matrix. Scales the matrix with the specified scalar. Function is obsolete. Apppends the specified scale about the specified point of this matrix. Prepends the specified scale about the specified point of this matrix. Function is obsolete. Appends a rotation of the specified angle to this matrix. Prepends a rotation of the specified angle to this matrix. Rotates the matrix with the specified angle. Function is obsolete. Appends a rotation of the specified angle at the specified point to this matrix. Prepends a rotation of the specified angle at the specified point to this matrix. Rotates the matrix with the specified angle at the specified point. Appends a rotation of the specified angle at the specified point to this matrix. Prepends a rotation of the specified angle at the specified point to this matrix. Rotates the matrix with the specified angle at the specified point. Function is obsolete. Appends a skew of the specified degrees in the x and y dimensions to this matrix. Prepends a skew of the specified degrees in the x and y dimensions to this matrix. Shears the matrix with the specified scalars. Function is obsolete. Appends a skew of the specified degrees in the x and y dimensions to this matrix. Prepends a skew of the specified degrees in the x and y dimensions to this matrix. Transforms the specified point by this matrix and returns the result. Transforms the specified points by this matrix. Multiplies all points of the specified array with the this matrix. Multiplies all points of the specified array with the this matrix. Transforms the specified vector by this Matrix and returns the result. Transforms the specified vectors by this matrix. Multiplies all vectors of the specified array with the this matrix. The translation elements of this matrix (third row) are ignored. Inverts the matrix. Converts this matrix to a System.Drawing.Drawing2D.Matrix object. Obsolete, will be deleted. Explicitly converts a XMatrix to a Matrix. Implicitly converts a Matrix to an XMatrix. Determines whether the two matrices are equal. Determines whether the two matrices are not equal. Determines whether the two matrices are equal. Determines whether this matrix is equal to the specified object. Determines whether this matrix is equal to the specified matrix. Returns the hash code for this instance. Parses a matrix from a string. Converts this XMatrix to a human readable string. Converts this XMatrix to a human readable string. Converts this XMatrix to a human readable string. Sets the matrix. Gets a value that indicates whether this matrix is an identity matrix. Gets a value indicating whether this matrix instance is the identity matrix. Gets an array of double values that represents the elements of this matrix. Gets the determinant of this matrix. Gets a value that indicates whether this matrix is invertible. Gets or sets the value of the first row and first column of this matrix. Gets or sets the value of the first row and second column of this matrix. Gets or sets the value of the second row and first column of this matrix. Gets or sets the value of the second row and second column of this matrix. Gets or sets the value of the third row and first column of this matrix. Gets or sets the value of the third row and second column of this matrix. Internal matrix helper. Represents the internal state of an XGraphics object. Gets or sets the current transformation matrix. Represents a stack of XGraphicsState and XGraphicsContainer objects. Represents an image. Counts the consecutive one bits in an image line. The reader. The bits left. Counts the consecutive zero bits in an image line. The reader. The bits left. Returns the offset of the next bit in the range [bitStart..bitEnd] that is different from the specified color. The end, bitEnd, is returned if no such bit exists. The reader. The offset of the start bit. The offset of the end bit. If set to true searches "one" (i. e. white), otherwise searches black. The offset of the first non-matching bit. Returns the offset of the next bit in the range [bitStart..bitEnd] that is different from the specified color. The end, bitEnd, is returned if no such bit exists. Like FindDifference, but also check the starting bit against the end in case start > end. The reader. The offset of the start bit. The offset of the end bit. If set to true searches "one" (i. e. white), otherwise searches black. The offset of the first non-matching bit. 2d-encode a row of pixels. Consult the CCITT documentation for the algorithm. The writer. Offset of image data in bitmap file. The bitmap file. Index of the current row. Index of the reference row (0xffffffff if there is none). The width of the image. The height of the image. The bytes per line in the bitmap file. Encodes a bitonal bitmap using 1D CCITT fax encoding. Space reserved for the fax encoded bitmap. An exception will be thrown if this buffer is too small. The bitmap to be encoded. Offset of image data in bitmap file. The width of the image. The height of the image. The size of the fax encoded image (0 on failure). Encodes a bitonal bitmap using 2D group 4 CCITT fax encoding. Space reserved for the fax encoded bitmap. An exception will be thrown if this buffer is too small. The bitmap to be encoded. Offset of image data in bitmap file. The width of the image. The height of the image. The size of the fax encoded image (0 on failure). Writes the image data. The writer. The count of bits (pels) to encode. The color of the pels. Initializes a new instance of PdfImage from an XImage. Returns 'Image'. Creates the keys for a JPEG image. Creates the keys for a FLATE image. Reads images that are returned from GDI+ without color palette. 4 (32bpp RGB), 3 (24bpp RGB, 32bpp ARGB) 8 true (ARGB), false (RGB) Gets the underlying XImage object. Common keys for all streams. (Optional) The type of PDF object that this dictionary describes; if present, must be XObject for an image XObject. (Required) The type of XObject that this dictionary describes; must be Image for an image XObject. (Required) The width of the image, in samples. (Required) The height of the image, in samples. (Required for images, except those that use the JPXDecode filter; not allowed for image masks) The color space in which image samples are specified; it can be any type of color space except Pattern. If the image uses the JPXDecode filter, this entry is optional: • If ColorSpace is present, any color space specifications in the JPEG2000 data are ignored. • If ColorSpace is absent, the color space specifications in the JPEG2000 data are used. The Decode array is also ignored unless ImageMask is true. (Required except for image masks and images that use the JPXDecode filter) The number of bits used to represent each color component. Only a single value may be specified; the number of bits is the same for all color components. Valid values are 1, 2, 4, 8, and (in PDF 1.5) 16. If ImageMask is true, this entry is optional, and if specified, its value must be 1. If the image stream uses a filter, the value of BitsPerComponent must be consistent with the size of the data samples that the filter delivers. In particular, a CCITTFaxDecode or JBIG2Decode filter always delivers 1-bit samples, a RunLengthDecode or DCTDecode filter delivers 8-bit samples, and an LZWDecode or FlateDecode filter delivers samples of a specified size if a predictor function is used. If the image stream uses the JPXDecode filter, this entry is optional and ignored if present. The bit depth is determined in the process of decoding the JPEG2000 image. (Optional; PDF 1.1) The name of a color rendering intent to be used in rendering the image. Default value: the current rendering intent in the graphics state. (Optional) A flag indicating whether the image is to be treated as an image mask. If this flag is true, the value of BitsPerComponent must be 1 and Mask and ColorSpace should not be specified; unmasked areas are painted using the current nonstroking color. Default value: false. (Optional except for image masks; not allowed for image masks; PDF 1.3) An image XObject defining an image mask to be applied to this image, or an array specifying a range of colors to be applied to it as a color key mask. If ImageMask is true, this entry must not be present. (Optional) An array of numbers describing how to map image samples into the range of values appropriate for the image’s color space. If ImageMask is true, the array must be either [0 1] or [1 0]; otherwise, its length must be twice the number of color components required by ColorSpace. If the image uses the JPXDecode filter and ImageMask is false, Decode is ignored. Default value: see “Decode Arrays”. (Optional) A flag indicating whether image interpolation is to be performed. Default value: false. (Optional; PDF 1.3) An array of alternate image dictionaries for this image. The order of elements within the array has no significance. This entry may not be present in an image XObject that is itself an alternate image. (Optional; PDF 1.4) A subsidiary image XObject defining a soft-mask image to be used as a source of mask shape or mask opacity values in the transparent imaging model. The alpha source parameter in the graphics state determines whether the mask values are interpreted as shape or opacity. If present, this entry overrides the current soft mask in the graphics state, as well as the image’s Mask entry, if any. (However, the other transparency related graphics state parameters — blend mode and alpha constant — remain in effect.) If SMask is absent, the image has no associated soft mask (although the current soft mask in the graphics state may still apply). (Optional for images that use the JPXDecode filter, meaningless otherwise; PDF 1.5) A code specifying how soft-mask information encoded with image samples should be used: 0 If present, encoded soft-mask image information should be ignored. 1 The image’s data stream includes encoded soft-mask values. An application can create a soft-mask image from the information to be used as a source of mask shape or mask opacity in the transparency imaging model. 2 The image’s data stream includes color channels that have been preblended with a background; the image data also includes an opacity channel. An application can create a soft-mask image with a Matte entry from the opacity channel information to be used as a source of mask shape or mask opacity in the transparency model. If this entry has a nonzero value, SMask should not be specified. Default value: 0. (Required in PDF 1.0; optional otherwise) The name by which this image XObject is referenced in the XObject subdictionary of the current resource dictionary. (Required if the image is a structural content item; PDF 1.3) The integer key of the image’s entry in the structural parent tree. (Optional; PDF 1.3; indirect reference preferred) The digital identifier of the image’s parent Web Capture content set. (Optional; PDF 1.2) An OPI version dictionary for the image. If ImageMask is true, this entry is ignored. (Optional; PDF 1.4) A metadata stream containing metadata for the image. (Optional; PDF 1.5) An optional content group or optional content membership dictionary, specifying the optional content properties for this image XObject. Before the image is processed, its visibility is determined based on this entry. If it is determined to be invisible, the entire image is skipped, as if there were no Do operator to invoke it. The BitReader class is a helper to read bits from an in-memory bitmap file. Initializes a new instance of the class. The in-memory bitmap file. The offset of the line to read. The count of bits that may be read (i. e. the width of the image for normal usage). Sets the position within the line (needed for 2D encoding). The new position. Gets a single bit at the specified position. The position. True if bit is set. Returns the bits that are in the buffer (without changing the position). Data is MSB aligned. The count of bits that were returned (1 through 8). The MSB aligned bits from the buffer. Moves the buffer to the next byte. "Removes" (eats) bits from the buffer. The count of bits that were processed. A helper class for writing groups of bits into an array of bytes. Initializes a new instance of the class. The byte array to be written to. Writes the buffered bits into the byte array. Masks for n bits in a byte (with n = 0 through 8). Writes bits to the byte array. The bits to be written (LSB aligned). The count of bits. Writes a line from a look-up table. A "line" in the table are two integers, one containing the values, one containing the bit count. The table. The line. Flushes the buffer and returns the count of bytes written to the array. Represents an entry in the fonts table dictionary. Initializes a new instance of the class. Initializes a new instance of the class. 4 -byte identifier. CheckSum for this table. Offset from beginning of TrueType font file. Actual length of this table in bytes. Associated font table. Creates and reads a TableDirectoryEntry from the font image. Gets the length rounded up to a multiple of four bytes. Represents predefined text layouts. Gets a new XStringFormat object that aligns the text left on the base line. Gets a new XStringFormat object that aligns the text top left of the layout rectangle. Gets a new XStringFormat object that centers the text in the middle of the layout rectangle. Gets a new XStringFormat object that centers the text at the top of the layout rectangle. Gets a new XStringFormat object that centers the text at the bottom of the layout rectangle. Helper class for Geometry paths. Creates between 1 and 5 Béziers curves from parameters specified like in GDI+. Calculates the quadrant (0 through 3) of the specified angle. If the angle lies on an edge (0, 90, 180, etc.) the result depends on the details how the angle is used. Appends a Bézier curve for an arc within a full quadrant. Creates between 1 and 5 Béziers curves from parameters specified like in WPF. Determines whether rendering based on GDI+ or WPF. For internal use only. Renders using GDI+. Renders using WPF (including Silverlight). Creates the XImage object for a DataMatrix. Important note for OpenSource version of PDFsharp: The generated image object only contains random data. If you need the correct implementation as defined in the ISO/IEC 16022:2000 specification, please contact empira Software GmbH via www.pdfsharp.com. Possible ECC200 Matrixes Creates the DataMatrix code. Encodes the DataMatrix. Creates a DataMatrix image object. A hex string like "AB 08 C3...". I.e. 26 for a 26x26 matrix Creates a DataMatrix image object. Creates a DataMatrix image object. This class allows us to retrieve a specified number of bits from the input buffer, as well as copy big byte blocks. It uses an int buffer to store up to 31 bits for direct manipulation. This guarantees that we can get at least 16 bits, but we only need at most 15, so this is all safe. There are some optimizations in this class, for example, you must never peek more than 8 bits more than needed, and you must first peek bits before you may drop them. This is not a general purpose class but optimized for the behaviour of the Inflater. Authors of the original java version: John Leuner, Jochen Hoenicke Get the next n bits but don't increase input pointer. n must be less or equal 16 and if this call succeeds, you must drop at least n - 8 bits in the next call. the value of the bits, or -1 if not enough bits available. */ Drops the next n bits from the input. You should have called PeekBits with a bigger or equal n before, to make sure that enough bits are in the bit buffer. Gets the next n bits and increases input pointer. This is equivalent to PeekBits followed by dropBits, except for correct error handling. the value of the bits, or -1 if not enough bits available. Skips to the next byte boundary. Copies length bytes from input buffer to output buffer starting at output[offset]. You have to make sure, that the buffer is byte aligned. If not enough bytes are available, copies fewer bytes. The buffer to copy bytes to. The offset in the buffer at which copying starts The length to copy, 0 is allowed. The number of bytes copied, 0 if no bytes were available. Length is less than zero Bit buffer isnt byte aligned Constructs a default StreamManipulator with all buffers empty resets state and empties internal buffers Add more input for consumption. Only call when IsNeedingInput returns true data to be input offset of first byte of input length of input Gets the number of bits available in the bit buffer. This must be only called when a previous PeekBits() returned -1. the number of bits available. Gets the number of bytes available. The number of bytes available. Returns true when SetInput can be called This class is general purpose class for writing data to a buffer. It allows you to write bits as well as bytes Based on DeflaterPending.java Author of the original java version: Jochen Hoenicke Internal work buffer construct instance using default buffer size of 4096 construct instance using specified buffer size size to use for internal buffer Clear internal state/buffers write a byte to buffer value to write Write a short value to buffer LSB first value to write write an integer LSB first value to write Write a block of data to buffer data to write offset of first byte to write number of bytes to write Align internal buffer on a byte boundary Write bits to internal buffer source of bits number of bits to write Write a short value to internal buffer most significant byte first value to write Flushes the pending buffer into the given output array. If the output array is to small, only a partial flush is done. the output array; the offset into output array; length the maximum number of bytes to store; IndexOutOfBoundsException if offset or length are invalid. Convert internal buffer to byte array. Buffer is empty on completion converted buffer contents contents The number of bits written to the buffer Indicates if buffer has been flushed Strategies for deflater The default strategy This strategy will only allow longer string repetitions. It is useful for random data with a small character set. This strategy will not look for string repetitions at all. It only encodes with Huffman trees (which means, that more common characters get a smaller encoding. Low level compression engine for deflate algorithm which uses a 32K sliding window with secondary compression from Huffman/Shannon-Fano codes. This class contains constants used for deflation. Written to Zip file to identify a stored block Identifies static tree in Zip file Identifies dynamic tree in Zip file Header flag indicating a preset dictionary for deflation Sets internal buffer sizes for Huffman encoding Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Internal compression engine constant Set to true to enable debugging The current compression function. The input data for compression. The total bytes of input read. The offset into inputBuf, where input data starts. The end offset of the input data. The adler checksum Construct instance with pending buffer Pending buffer to use > Reset internal state Reset Adler checksum Set the deflate level (0-9) Fill the window Set compression dictionary Deflate drives actual compression of data Sets input data to be deflated. Should only be called when NeedsInput() returns true Return true if input is needed via SetInput Get current value of Adler checksum Total data processed Get/set the deflate strategy Represents a PDF object identifier, a pair of object and generation number. Initializes a new instance of the class. The object number. Initializes a new instance of the class. The object number. The generation number. Indicates whether this instance and a specified object are equal. Returns the hash code for this instance. Determines whether the tow objects are equal. Determines whether the tow objects not are equal. Returns the object and generation numbers as a string. Compares the current object id with another object. Gets or sets the object number. Gets or sets the generation number. Indicates whether this object is an empty object identifier. Creates an empty object identifier. Determines how the PDF output stream is formatted. Even all formats create valid PDF files, only Compact or Standard should be used for production purposes. The PDF stream contains no unnecessary characters. This is default in release build. The PDF stream contains some superfluous line feeds, but is more readable. The PDF stream is indented to reflect the nesting levels of the objects. This is useful for analyzing PDF files, but increases the size of the file significantly. The PDF stream is indented to reflect the nesting levels of the objects and contains additional information about the PDFsharp objects. Furthermore content streams are not deflated. This is useful for debugging purposes only and increases the size of the file significantly. An encoder for PDF AnsiEncoding. Indicates whether the specified Unicode character is available in the ANSI code page 1252. Converts WinAnsi to Unicode characters. Base class for all dictionaries that map resource names to objects. Adds all imported resource names to the specified hashtable. Contains all used images of a document. Base class for FontTable, ImageTable, FormXObjectTable etc. Initializes a new instance of this class, which is a singleton for each document. Gets a PdfImage from an XImage. If no PdfImage already exists, a new one is created. Map from ImageSelector to PdfImage. A collection of information that uniquely identifies a particular PdfImage. Initializes a new instance of ImageSelector from an XImage. Represents the base class for all PDF actions. Initializes a new instance of the class. Initializes a new instance of the class. The document that owns this object. Predefined keys of this dictionary. (Optional) The type of PDF object that this dictionary describes; if present, must be Action for an action dictionary. (Required) The type of action that this dictionary describes. (Optional; PDF 1.2) The next action or sequence of actions to be performed after the action represented by this dictionary. The value is either a single action dictionary or an array of action dictionaries to be performed in order; see below for further discussion. Testing only LATIN CAPITAL LETTER A LATIN CAPITAL LETTER AE LATIN CAPITAL LETTER AE WITH ACUTE LATIN CAPITAL LETTER A WITH ACUTE LATIN CAPITAL LETTER A WITH BREVE LATIN CAPITAL LETTER A WITH CIRCUMFLEX LATIN CAPITAL LETTER A WITH DIAERESIS LATIN CAPITAL LETTER A WITH GRAVE GREEK CAPITAL LETTER ALPHA GREEK CAPITAL LETTER ALPHA WITH TONOS LATIN CAPITAL LETTER A WITH MACRON LATIN CAPITAL LETTER A WITH OGONEK LATIN CAPITAL LETTER A WITH RING ABOVE LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE LATIN CAPITAL LETTER A WITH TILDE LATIN CAPITAL LETTER B GREEK CAPITAL LETTER BETA LATIN CAPITAL LETTER C LATIN CAPITAL LETTER C WITH ACUTE LATIN CAPITAL LETTER C WITH CARON LATIN CAPITAL LETTER C WITH CEDILLA LATIN CAPITAL LETTER C WITH CIRCUMFLEX LATIN CAPITAL LETTER C WITH DOT ABOVE GREEK CAPITAL LETTER CHI LATIN CAPITAL LETTER D LATIN CAPITAL LETTER D WITH CARON LATIN CAPITAL LETTER D WITH STROKE INCREMENT LATIN CAPITAL LETTER E LATIN CAPITAL LETTER E WITH ACUTE LATIN CAPITAL LETTER E WITH BREVE LATIN CAPITAL LETTER E WITH CARON LATIN CAPITAL LETTER E WITH CIRCUMFLEX LATIN CAPITAL LETTER E WITH DIAERESIS LATIN CAPITAL LETTER E WITH DOT ABOVE LATIN CAPITAL LETTER E WITH GRAVE LATIN CAPITAL LETTER E WITH MACRON LATIN CAPITAL LETTER ENG LATIN CAPITAL LETTER E WITH OGONEK GREEK CAPITAL LETTER EPSILON GREEK CAPITAL LETTER EPSILON WITH TONOS GREEK CAPITAL LETTER ETA GREEK CAPITAL LETTER ETA WITH TONOS LATIN CAPITAL LETTER ETH EURO SIGN LATIN CAPITAL LETTER F LATIN CAPITAL LETTER G GREEK CAPITAL LETTER GAMMA LATIN CAPITAL LETTER G WITH BREVE LATIN CAPITAL LETTER G WITH CARON LATIN CAPITAL LETTER G WITH CIRCUMFLEX LATIN CAPITAL LETTER G WITH CEDILLA LATIN CAPITAL LETTER G WITH DOT ABOVE LATIN CAPITAL LETTER H BLACK CIRCLE BLACK SMALL SQUARE WHITE SMALL SQUARE WHITE SQUARE LATIN CAPITAL LETTER H WITH STROKE LATIN CAPITAL LETTER H WITH CIRCUMFLEX LATIN CAPITAL LETTER I LATIN CAPITAL LIGATURE IJ LATIN CAPITAL LETTER I WITH ACUTE LATIN CAPITAL LETTER I WITH BREVE LATIN CAPITAL LETTER I WITH CIRCUMFLEX LATIN CAPITAL LETTER I WITH DIAERESIS LATIN CAPITAL LETTER I WITH DOT ABOVE BLACK-LETTER CAPITAL I LATIN CAPITAL LETTER I WITH GRAVE LATIN CAPITAL LETTER I WITH MACRON LATIN CAPITAL LETTER I WITH OGONEK GREEK CAPITAL LETTER IOTA GREEK CAPITAL LETTER IOTA WITH DIALYTIKA GREEK CAPITAL LETTER IOTA WITH TONOS LATIN CAPITAL LETTER I WITH TILDE LATIN CAPITAL LETTER J LATIN CAPITAL LETTER J WITH CIRCUMFLEX LATIN CAPITAL LETTER K GREEK CAPITAL LETTER KAPPA LATIN CAPITAL LETTER K WITH CEDILLA LATIN CAPITAL LETTER L LATIN CAPITAL LETTER L WITH ACUTE GREEK CAPITAL LETTER LAMDA LATIN CAPITAL LETTER L WITH CARON LATIN CAPITAL LETTER L WITH CEDILLA LATIN CAPITAL LETTER L WITH MIDDLE DOT LATIN CAPITAL LETTER L WITH STROKE LATIN CAPITAL LETTER M GREEK CAPITAL LETTER MU LATIN CAPITAL LETTER N LATIN CAPITAL LETTER N WITH ACUTE LATIN CAPITAL LETTER N WITH CARON LATIN CAPITAL LETTER N WITH CEDILLA LATIN CAPITAL LETTER N WITH TILDE GREEK CAPITAL LETTER NU LATIN CAPITAL LETTER O LATIN CAPITAL LIGATURE OE LATIN CAPITAL LETTER O WITH ACUTE LATIN CAPITAL LETTER O WITH BREVE LATIN CAPITAL LETTER O WITH CIRCUMFLEX LATIN CAPITAL LETTER O WITH DIAERESIS LATIN CAPITAL LETTER O WITH GRAVE LATIN CAPITAL LETTER O WITH HORN LATIN CAPITAL LETTER O WITH DOUBLE ACUTE LATIN CAPITAL LETTER O WITH MACRON OHM SIGN GREEK CAPITAL LETTER OMEGA WITH TONOS GREEK CAPITAL LETTER OMICRON GREEK CAPITAL LETTER OMICRON WITH TONOS LATIN CAPITAL LETTER O WITH STROKE LATIN CAPITAL LETTER O WITH STROKE AND ACUTE LATIN CAPITAL LETTER O WITH TILDE LATIN CAPITAL LETTER P GREEK CAPITAL LETTER PHI GREEK CAPITAL LETTER PI GREEK CAPITAL LETTER PSI LATIN CAPITAL LETTER Q LATIN CAPITAL LETTER R LATIN CAPITAL LETTER R WITH ACUTE LATIN CAPITAL LETTER R WITH CARON LATIN CAPITAL LETTER R WITH CEDILLA BLACK-LETTER CAPITAL R GREEK CAPITAL LETTER RHO LATIN CAPITAL LETTER S BOX DRAWINGS LIGHT DOWN AND RIGHT BOX DRAWINGS LIGHT UP AND RIGHT BOX DRAWINGS LIGHT DOWN AND LEFT BOX DRAWINGS LIGHT UP AND LEFT BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL BOX DRAWINGS LIGHT DOWN AND HORIZONTAL BOX DRAWINGS LIGHT UP AND HORIZONTAL BOX DRAWINGS LIGHT VERTICAL AND RIGHT BOX DRAWINGS LIGHT VERTICAL AND LEFT BOX DRAWINGS LIGHT HORIZONTAL BOX DRAWINGS LIGHT VERTICAL BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE BOX DRAWINGS DOUBLE VERTICAL AND LEFT BOX DRAWINGS DOUBLE VERTICAL BOX DRAWINGS DOUBLE DOWN AND LEFT BOX DRAWINGS DOUBLE UP AND LEFT BOX DRAWINGS UP DOUBLE AND LEFT SINGLE BOX DRAWINGS UP SINGLE AND LEFT DOUBLE BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE BOX DRAWINGS DOUBLE UP AND RIGHT BOX DRAWINGS DOUBLE DOWN AND RIGHT BOX DRAWINGS DOUBLE UP AND HORIZONTAL BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL BOX DRAWINGS DOUBLE VERTICAL AND RIGHT BOX DRAWINGS DOUBLE HORIZONTAL BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE LATIN CAPITAL LETTER S WITH ACUTE LATIN CAPITAL LETTER S WITH CARON LATIN CAPITAL LETTER S WITH CEDILLA LATIN CAPITAL LETTER S WITH CIRCUMFLEX LATIN CAPITAL LETTER S WITH COMMA BELOW GREEK CAPITAL LETTER SIGMA LATIN CAPITAL LETTER T GREEK CAPITAL LETTER TAU LATIN CAPITAL LETTER T WITH STROKE LATIN CAPITAL LETTER T WITH CARON LATIN CAPITAL LETTER T WITH CEDILLA GREEK CAPITAL LETTER THETA LATIN CAPITAL LETTER THORN LATIN CAPITAL LETTER U LATIN CAPITAL LETTER U WITH ACUTE LATIN CAPITAL LETTER U WITH BREVE LATIN CAPITAL LETTER U WITH CIRCUMFLEX LATIN CAPITAL LETTER U WITH DIAERESIS LATIN CAPITAL LETTER U WITH GRAVE LATIN CAPITAL LETTER U WITH HORN LATIN CAPITAL LETTER U WITH DOUBLE ACUTE LATIN CAPITAL LETTER U WITH MACRON LATIN CAPITAL LETTER U WITH OGONEK GREEK CAPITAL LETTER UPSILON GREEK UPSILON WITH HOOK SYMBOL GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA GREEK CAPITAL LETTER UPSILON WITH TONOS LATIN CAPITAL LETTER U WITH RING ABOVE LATIN CAPITAL LETTER U WITH TILDE LATIN CAPITAL LETTER V LATIN CAPITAL LETTER W LATIN CAPITAL LETTER W WITH ACUTE LATIN CAPITAL LETTER W WITH CIRCUMFLEX LATIN CAPITAL LETTER W WITH DIAERESIS LATIN CAPITAL LETTER W WITH GRAVE LATIN CAPITAL LETTER X GREEK CAPITAL LETTER XI LATIN CAPITAL LETTER Y LATIN CAPITAL LETTER Y WITH ACUTE LATIN CAPITAL LETTER Y WITH CIRCUMFLEX LATIN CAPITAL LETTER Y WITH DIAERESIS LATIN CAPITAL LETTER Y WITH GRAVE LATIN CAPITAL LETTER Z LATIN CAPITAL LETTER Z WITH ACUTE LATIN CAPITAL LETTER Z WITH CARON LATIN CAPITAL LETTER Z WITH DOT ABOVE GREEK CAPITAL LETTER ZETA LATIN SMALL LETTER A LATIN SMALL LETTER A WITH ACUTE LATIN SMALL LETTER A WITH BREVE LATIN SMALL LETTER A WITH CIRCUMFLEX ACUTE ACCENT COMBINING ACUTE ACCENT LATIN SMALL LETTER A WITH DIAERESIS LATIN SMALL LETTER AE LATIN SMALL LETTER AE WITH ACUTE HORIZONTAL BAR CYRILLIC CAPITAL LETTER A CYRILLIC CAPITAL LETTER BE CYRILLIC CAPITAL LETTER VE CYRILLIC CAPITAL LETTER GHE CYRILLIC CAPITAL LETTER DE CYRILLIC CAPITAL LETTER IE CYRILLIC CAPITAL LETTER IO CYRILLIC CAPITAL LETTER ZHE CYRILLIC CAPITAL LETTER ZE CYRILLIC CAPITAL LETTER I CYRILLIC CAPITAL LETTER SHORT I CYRILLIC CAPITAL LETTER KA CYRILLIC CAPITAL LETTER EL CYRILLIC CAPITAL LETTER EM CYRILLIC CAPITAL LETTER EN CYRILLIC CAPITAL LETTER O CYRILLIC CAPITAL LETTER PE CYRILLIC CAPITAL LETTER ER CYRILLIC CAPITAL LETTER ES CYRILLIC CAPITAL LETTER TE CYRILLIC CAPITAL LETTER U CYRILLIC CAPITAL LETTER EF CYRILLIC CAPITAL LETTER HA CYRILLIC CAPITAL LETTER TSE CYRILLIC CAPITAL LETTER CHE CYRILLIC CAPITAL LETTER SHA CYRILLIC CAPITAL LETTER SHCHA CYRILLIC CAPITAL LETTER HARD SIGN CYRILLIC CAPITAL LETTER YERU CYRILLIC CAPITAL LETTER SOFT SIGN CYRILLIC CAPITAL LETTER E CYRILLIC CAPITAL LETTER YU CYRILLIC CAPITAL LETTER YA CYRILLIC CAPITAL LETTER GHE WITH UPTURN CYRILLIC CAPITAL LETTER DJE CYRILLIC CAPITAL LETTER GJE CYRILLIC CAPITAL LETTER UKRAINIAN IE CYRILLIC CAPITAL LETTER DZE CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I CYRILLIC CAPITAL LETTER YI CYRILLIC CAPITAL LETTER JE CYRILLIC CAPITAL LETTER LJE CYRILLIC CAPITAL LETTER NJE CYRILLIC CAPITAL LETTER TSHE CYRILLIC CAPITAL LETTER KJE CYRILLIC CAPITAL LETTER SHORT U CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER BE CYRILLIC SMALL LETTER VE CYRILLIC SMALL LETTER GHE CYRILLIC SMALL LETTER DE CYRILLIC SMALL LETTER IE CYRILLIC SMALL LETTER IO CYRILLIC SMALL LETTER ZHE CYRILLIC SMALL LETTER ZE CYRILLIC SMALL LETTER I CYRILLIC SMALL LETTER SHORT I CYRILLIC SMALL LETTER KA CYRILLIC SMALL LETTER EL CYRILLIC SMALL LETTER EM CYRILLIC SMALL LETTER EN CYRILLIC SMALL LETTER O CYRILLIC SMALL LETTER PE CYRILLIC SMALL LETTER ER CYRILLIC SMALL LETTER ES CYRILLIC SMALL LETTER TE CYRILLIC SMALL LETTER U CYRILLIC SMALL LETTER EF CYRILLIC SMALL LETTER HA CYRILLIC SMALL LETTER TSE CYRILLIC SMALL LETTER CHE CYRILLIC SMALL LETTER SHA CYRILLIC SMALL LETTER SHCHA CYRILLIC SMALL LETTER HARD SIGN CYRILLIC SMALL LETTER YERU CYRILLIC SMALL LETTER SOFT SIGN CYRILLIC SMALL LETTER E CYRILLIC SMALL LETTER YU CYRILLIC SMALL LETTER YA CYRILLIC SMALL LETTER GHE WITH UPTURN CYRILLIC SMALL LETTER DJE CYRILLIC SMALL LETTER GJE CYRILLIC SMALL LETTER UKRAINIAN IE CYRILLIC SMALL LETTER DZE CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I CYRILLIC SMALL LETTER YI CYRILLIC SMALL LETTER JE CYRILLIC SMALL LETTER LJE CYRILLIC SMALL LETTER NJE CYRILLIC SMALL LETTER TSHE CYRILLIC SMALL LETTER KJE CYRILLIC SMALL LETTER SHORT U CYRILLIC CAPITAL LETTER DZHE CYRILLIC CAPITAL LETTER YAT CYRILLIC CAPITAL LETTER FITA CYRILLIC CAPITAL LETTER IZHITSA CYRILLIC SMALL LETTER DZHE CYRILLIC SMALL LETTER YAT CYRILLIC SMALL LETTER FITA CYRILLIC SMALL LETTER IZHITSA CYRILLIC SMALL LETTER SCHWA LEFT-TO-RIGHT MARK RIGHT-TO-LEFT MARK ZERO WIDTH JOINER ARABIC PERCENT SIGN ARABIC COMMA ARABIC-INDIC DIGIT ZERO ARABIC-INDIC DIGIT ONE ARABIC-INDIC DIGIT TWO ARABIC-INDIC DIGIT THREE ARABIC-INDIC DIGIT FOUR ARABIC-INDIC DIGIT FIVE ARABIC-INDIC DIGIT SIX ARABIC-INDIC DIGIT SEVEN ARABIC-INDIC DIGIT EIGHT ARABIC-INDIC DIGIT NINE ARABIC SEMICOLON ARABIC QUESTION MARK ARABIC LETTER HAMZA ARABIC LETTER ALEF WITH MADDA ABOVE ARABIC LETTER ALEF WITH HAMZA ABOVE ARABIC LETTER WAW WITH HAMZA ABOVE ARABIC LETTER ALEF WITH HAMZA BELOW ARABIC LETTER YEH WITH HAMZA ABOVE ARABIC LETTER ALEF ARABIC LETTER BEH ARABIC LETTER TEH MARBUTA ARABIC LETTER TEH ARABIC LETTER THEH ARABIC LETTER JEEM ARABIC LETTER HAH ARABIC LETTER KHAH ARABIC LETTER DAL ARABIC LETTER THAL ARABIC LETTER REH ARABIC LETTER ZAIN ARABIC LETTER SEEN ARABIC LETTER SHEEN ARABIC LETTER SAD ARABIC LETTER DAD ARABIC LETTER TAH ARABIC LETTER ZAH ARABIC LETTER AIN ARABIC LETTER GHAIN ARABIC TATWEEL ARABIC LETTER FEH ARABIC LETTER QAF ARABIC LETTER KAF ARABIC LETTER LAM ARABIC LETTER MEEM ARABIC LETTER NOON ARABIC LETTER WAW ARABIC LETTER ALEF MAKSURA ARABIC LETTER YEH ARABIC FATHATAN ARABIC DAMMATAN ARABIC KASRATAN ARABIC FATHA ARABIC DAMMA ARABIC KASRA ARABIC SHADDA ARABIC SUKUN ARABIC LETTER HEH ARABIC LETTER VEH ARABIC LETTER PEH ARABIC LETTER TCHEH ARABIC LETTER JEH ARABIC LETTER GAF ARABIC LETTER TTEH ARABIC LETTER DDAL ARABIC LETTER RREH ARABIC LETTER NOON GHUNNA ARABIC LETTER YEH BARREE ARABIC LETTER AE NEW SHEQEL SIGN HEBREW PUNCTUATION MAQAF HEBREW PUNCTUATION SOF PASUQ HEBREW LETTER ALEF HEBREW LETTER BET HEBREW LETTER GIMEL HEBREW LETTER DALET HEBREW LETTER HE HEBREW LETTER VAV HEBREW LETTER ZAYIN HEBREW LETTER HET HEBREW LETTER TET HEBREW LETTER YOD HEBREW LETTER FINAL KAF HEBREW LETTER KAF HEBREW LETTER LAMED HEBREW LETTER FINAL MEM HEBREW LETTER MEM HEBREW LETTER FINAL NUN HEBREW LETTER NUN HEBREW LETTER SAMEKH HEBREW LETTER AYIN HEBREW LETTER FINAL PE HEBREW LETTER PE HEBREW LETTER FINAL TSADI HEBREW LETTER TSADI HEBREW LETTER QOF HEBREW LETTER RESH HEBREW LETTER SHIN HEBREW LETTER TAV HEBREW LIGATURE YIDDISH DOUBLE VAV HEBREW LIGATURE YIDDISH VAV YOD HEBREW LIGATURE YIDDISH DOUBLE YOD HEBREW POINT HIRIQ HEBREW POINT TSERE HEBREW POINT SEGOL HEBREW POINT QUBUTS HEBREW POINT QAMATS HEBREW POINT PATAH HEBREW POINT SHEVA HEBREW POINT HATAF PATAH HEBREW POINT HATAF SEGOL HEBREW POINT HATAF QAMATS HEBREW POINT SIN DOT HEBREW POINT SHIN DOT HEBREW POINT HOLAM HEBREW POINT DAGESH OR MAPIQ HEBREW POINT METEG HEBREW POINT RAFE HEBREW PUNCTUATION PASEQ MODIFIER LETTER APOSTROPHE CARE OF SCRIPT SMALL L NUMERO SIGN POP DIRECTIONAL FORMATTING LEFT-TO-RIGHT OVERRIDE RIGHT-TO-LEFT OVERRIDE ZERO WIDTH NON-JOINER ARABIC FIVE POINTED STAR MODIFIER LETTER REVERSED COMMA LATIN SMALL LETTER A WITH GRAVE ALEF SYMBOL GREEK SMALL LETTER ALPHA GREEK SMALL LETTER ALPHA WITH TONOS LATIN SMALL LETTER A WITH MACRON AMPERSAND ANGLE LEFT-POINTING ANGLE BRACKET RIGHT-POINTING ANGLE BRACKET GREEK ANO TELEIA LATIN SMALL LETTER A WITH OGONEK ALMOST EQUAL TO LATIN SMALL LETTER A WITH RING ABOVE LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE LEFT RIGHT ARROW LEFT RIGHT DOUBLE ARROW DOWNWARDS DOUBLE ARROW LEFTWARDS DOUBLE ARROW RIGHTWARDS DOUBLE ARROW UPWARDS DOUBLE ARROW DOWNWARDS ARROW LEFTWARDS ARROW RIGHTWARDS ARROW UPWARDS ARROW UP DOWN ARROW UP DOWN ARROW WITH BASE CIRCUMFLEX ACCENT TILDE ASTERISK ASTERISK OPERATOR COMMERCIAL AT LATIN SMALL LETTER A WITH TILDE LATIN SMALL LETTER B REVERSE SOLIDUS VERTICAL LINE GREEK SMALL LETTER BETA FULL BLOCK LEFT CURLY BRACKET RIGHT CURLY BRACKET LEFT SQUARE BRACKET RIGHT SQUARE BRACKET BREVE BROKEN BAR BULLET LATIN SMALL LETTER C LATIN SMALL LETTER C WITH ACUTE CARON DOWNWARDS ARROW WITH CORNER LEFTWARDS LATIN SMALL LETTER C WITH CARON LATIN SMALL LETTER C WITH CEDILLA LATIN SMALL LETTER C WITH CIRCUMFLEX LATIN SMALL LETTER C WITH DOT ABOVE CEDILLA CENT SIGN GREEK SMALL LETTER CHI WHITE CIRCLE CIRCLED TIMES CIRCLED PLUS MODIFIER LETTER CIRCUMFLEX ACCENT BLACK CLUB SUIT COLON COLON SIGN COMMA APPROXIMATELY EQUAL TO COPYRIGHT SIGN CURRENCY SIGN LATIN SMALL LETTER D DAGGER DOUBLE DAGGER LATIN SMALL LETTER D WITH CARON LATIN SMALL LETTER D WITH STROKE DEGREE SIGN GREEK SMALL LETTER DELTA BLACK DIAMOND SUIT DIAERESIS GREEK DIALYTIKA TONOS DIVISION SIGN DARK SHADE LOWER HALF BLOCK DOLLAR SIGN DONG SIGN DOT ABOVE COMBINING DOT BELOW LATIN SMALL LETTER DOTLESS I DOT OPERATOR LATIN SMALL LETTER E LATIN SMALL LETTER E WITH ACUTE LATIN SMALL LETTER E WITH BREVE LATIN SMALL LETTER E WITH CARON LATIN SMALL LETTER E WITH CIRCUMFLEX LATIN SMALL LETTER E WITH DIAERESIS LATIN SMALL LETTER E WITH DOT ABOVE LATIN SMALL LETTER E WITH GRAVE DIGIT EIGHT ELEMENT OF HORIZONTAL ELLIPSIS LATIN SMALL LETTER E WITH MACRON EM DASH EMPTY SET EN DASH LATIN SMALL LETTER ENG LATIN SMALL LETTER E WITH OGONEK GREEK SMALL LETTER EPSILON GREEK SMALL LETTER EPSILON WITH TONOS EQUALS SIGN IDENTICAL TO ESTIMATED SYMBOL GREEK SMALL LETTER ETA GREEK SMALL LETTER ETA WITH TONOS LATIN SMALL LETTER ETH EXCLAMATION MARK DOUBLE EXCLAMATION MARK INVERTED EXCLAMATION MARK THERE EXISTS LATIN SMALL LETTER F FEMALE SIGN FIGURE DASH BLACK SQUARE BLACK RECTANGLE DIGIT FIVE VULGAR FRACTION FIVE EIGHTHS LATIN SMALL LETTER F WITH HOOK DIGIT FOUR FRACTION SLASH FRENCH FRANC SIGN LATIN SMALL LETTER G GREEK SMALL LETTER GAMMA LATIN SMALL LETTER G WITH BREVE LATIN SMALL LETTER G WITH CARON LATIN SMALL LETTER G WITH CIRCUMFLEX LATIN SMALL LETTER G WITH CEDILLA LATIN SMALL LETTER G WITH DOT ABOVE LATIN SMALL LETTER SHARP S NABLA GRAVE ACCENT COMBINING GRAVE ACCENT GREATER-THAN SIGN GREATER-THAN OR EQUAL TO LEFT-POINTING DOUBLE ANGLE QUOTATION MARK RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK SINGLE LEFT-POINTING ANGLE QUOTATION MARK SINGLE RIGHT-POINTING ANGLE QUOTATION MARK LATIN SMALL LETTER H LATIN SMALL LETTER H WITH STROKE LATIN SMALL LETTER H WITH CIRCUMFLEX BLACK HEART SUIT COMBINING HOOK ABOVE HOUSE DOUBLE ACUTE ACCENT HYPHEN-MINUS LATIN SMALL LETTER I LATIN SMALL LETTER I WITH ACUTE LATIN SMALL LETTER I WITH BREVE LATIN SMALL LETTER I WITH CIRCUMFLEX LATIN SMALL LETTER I WITH DIAERESIS LATIN SMALL LETTER I WITH GRAVE LATIN SMALL LIGATURE IJ LATIN SMALL LETTER I WITH MACRON INFINITY INTEGRAL BOTTOM HALF INTEGRAL TOP HALF INTEGRAL INTERSECTION INVERSE BULLET INVERSE WHITE CIRCLE BLACK SMILING FACE LATIN SMALL LETTER I WITH OGONEK GREEK SMALL LETTER IOTA GREEK SMALL LETTER IOTA WITH DIALYTIKA GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS GREEK SMALL LETTER IOTA WITH TONOS LATIN SMALL LETTER I WITH TILDE LATIN SMALL LETTER J LATIN SMALL LETTER J WITH CIRCUMFLEX LATIN SMALL LETTER K GREEK SMALL LETTER KAPPA LATIN SMALL LETTER K WITH CEDILLA LATIN SMALL LETTER KRA LATIN SMALL LETTER L LATIN SMALL LETTER L WITH ACUTE GREEK SMALL LETTER LAMDA LATIN SMALL LETTER L WITH CARON LATIN SMALL LETTER L WITH CEDILLA LATIN SMALL LETTER L WITH MIDDLE DOT LESS-THAN SIGN LESS-THAN OR EQUAL TO LEFT HALF BLOCK LIRA SIGN LOGICAL AND NOT SIGN LOGICAL OR LATIN SMALL LETTER LONG S LOZENGE LATIN SMALL LETTER L WITH STROKE LIGHT SHADE LATIN SMALL LETTER M MACRON MALE SIGN MINUS SIGN PRIME MICRO SIGN MULTIPLICATION SIGN EIGHTH NOTE BEAMED EIGHTH NOTES LATIN SMALL LETTER N LATIN SMALL LETTER N WITH ACUTE LATIN SMALL LETTER N PRECEDED BY APOSTROPHE LATIN SMALL LETTER N WITH CARON LATIN SMALL LETTER N WITH CEDILLA DIGIT NINE NOT AN ELEMENT OF NOT EQUAL TO NOT A SUBSET OF LATIN SMALL LETTER N WITH TILDE GREEK SMALL LETTER NU NUMBER SIGN LATIN SMALL LETTER O LATIN SMALL LETTER O WITH ACUTE LATIN SMALL LETTER O WITH BREVE LATIN SMALL LETTER O WITH CIRCUMFLEX LATIN SMALL LETTER O WITH DIAERESIS LATIN SMALL LIGATURE OE OGONEK LATIN SMALL LETTER O WITH GRAVE LATIN SMALL LETTER O WITH HORN LATIN SMALL LETTER O WITH DOUBLE ACUTE LATIN SMALL LETTER O WITH MACRON GREEK SMALL LETTER OMEGA GREEK PI SYMBOL GREEK SMALL LETTER OMEGA WITH TONOS GREEK SMALL LETTER OMICRON GREEK SMALL LETTER OMICRON WITH TONOS DIGIT ONE ONE DOT LEADER VULGAR FRACTION ONE EIGHTH VULGAR FRACTION ONE HALF VULGAR FRACTION ONE QUARTER VULGAR FRACTION ONE THIRD WHITE BULLET FEMININE ORDINAL INDICATOR MASCULINE ORDINAL INDICATOR RIGHT ANGLE LATIN SMALL LETTER O WITH STROKE LATIN SMALL LETTER O WITH STROKE AND ACUTE LATIN SMALL LETTER O WITH TILDE LATIN SMALL LETTER P PILCROW SIGN LEFT PARENTHESIS RIGHT PARENTHESIS PARTIAL DIFFERENTIAL PERCENT SIGN FULL STOP MIDDLE DOT UP TACK PER MILLE SIGN PESETA SIGN GREEK SMALL LETTER PHI GREEK PHI SYMBOL GREEK SMALL LETTER PI PLUS SIGN PLUS-MINUS SIGN PRESCRIPTION TAKE N-ARY PRODUCT SUBSET OF SUPERSET OF PROPORTIONAL TO GREEK SMALL LETTER PSI LATIN SMALL LETTER Q QUESTION MARK INVERTED QUESTION MARK QUOTATION MARK DOUBLE LOW-9 QUOTATION MARK LEFT DOUBLE QUOTATION MARK RIGHT DOUBLE QUOTATION MARK LEFT SINGLE QUOTATION MARK SINGLE HIGH-REVERSED-9 QUOTATION MARK RIGHT SINGLE QUOTATION MARK SINGLE LOW-9 QUOTATION MARK APOSTROPHE LATIN SMALL LETTER R LATIN SMALL LETTER R WITH ACUTE SQUARE ROOT LATIN SMALL LETTER R WITH CARON LATIN SMALL LETTER R WITH CEDILLA SUBSET OF OR EQUAL TO SUPERSET OF OR EQUAL TO REGISTERED SIGN REVERSED NOT SIGN GREEK SMALL LETTER RHO RING ABOVE RIGHT HALF BLOCK LATIN SMALL LETTER S LATIN SMALL LETTER S WITH ACUTE LATIN SMALL LETTER S WITH CARON LATIN SMALL LETTER S WITH CEDILLA LATIN SMALL LETTER S WITH CIRCUMFLEX LATIN SMALL LETTER S WITH COMMA BELOW DOUBLE PRIME SECTION SIGN SEMICOLON DIGIT SEVEN VULGAR FRACTION SEVEN EIGHTHS MEDIUM SHADE GREEK SMALL LETTER SIGMA GREEK SMALL LETTER FINAL SIGMA TILDE OPERATOR DIGIT SIX SOLIDUS WHITE SMILING FACE SPACE BLACK SPADE SUIT POUND SIGN CONTAINS AS MEMBER N-ARY SUMMATION WHITE SUN WITH RAYS LATIN SMALL LETTER T GREEK SMALL LETTER TAU LATIN SMALL LETTER T WITH STROKE LATIN SMALL LETTER T WITH CARON LATIN SMALL LETTER T WITH CEDILLA THEREFORE GREEK SMALL LETTER THETA GREEK THETA SYMBOL LATIN SMALL LETTER THORN DIGIT THREE VULGAR FRACTION THREE EIGHTHS VULGAR FRACTION THREE QUARTERS SMALL TILDE COMBINING TILDE GREEK TONOS TRADE MARK SIGN BLACK DOWN-POINTING TRIANGLE BLACK LEFT-POINTING POINTER BLACK RIGHT-POINTING POINTER BLACK UP-POINTING TRIANGLE DIGIT TWO TWO DOT LEADER VULGAR FRACTION TWO THIRDS LATIN SMALL LETTER U LATIN SMALL LETTER U WITH ACUTE LATIN SMALL LETTER U WITH BREVE LATIN SMALL LETTER U WITH CIRCUMFLEX LATIN SMALL LETTER U WITH DIAERESIS LATIN SMALL LETTER U WITH GRAVE LATIN SMALL LETTER U WITH HORN LATIN SMALL LETTER U WITH DOUBLE ACUTE LATIN SMALL LETTER U WITH MACRON LOW LINE DOUBLE LOW LINE UNION FOR ALL LATIN SMALL LETTER U WITH OGONEK UPPER HALF BLOCK GREEK SMALL LETTER UPSILON GREEK SMALL LETTER UPSILON WITH DIALYTIKA GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS GREEK SMALL LETTER UPSILON WITH TONOS LATIN SMALL LETTER U WITH RING ABOVE LATIN SMALL LETTER U WITH TILDE LATIN SMALL LETTER V LATIN SMALL LETTER W LATIN SMALL LETTER W WITH ACUTE LATIN SMALL LETTER W WITH CIRCUMFLEX LATIN SMALL LETTER W WITH DIAERESIS SCRIPT CAPITAL P LATIN SMALL LETTER W WITH GRAVE LATIN SMALL LETTER X GREEK SMALL LETTER XI LATIN SMALL LETTER Y LATIN SMALL LETTER Y WITH ACUTE LATIN SMALL LETTER Y WITH CIRCUMFLEX LATIN SMALL LETTER Y WITH DIAERESIS YEN SIGN LATIN SMALL LETTER Y WITH GRAVE LATIN SMALL LETTER Z LATIN SMALL LETTER Z WITH ACUTE LATIN SMALL LETTER Z WITH CARON LATIN SMALL LETTER Z WITH DOT ABOVE DIGIT ZERO GREEK SMALL LETTER ZETA Global table of TrueType fontdescriptor objects. Gets the FontDescriptor identified by the specified FontSelector. Returns null if no such objects exists. Gets the FontDescriptor identified by the specified FontSelector. If no such objects exists, a new FontDescriptor is created and added to the stock. Gets the FontDescriptor identified by the specified FontSelector. If no such objects exists, a new FontDescriptor is created and added to the stock. A collection of information that uniquely identifies a particular font. Used to map XFont to PdfFont. There is a one to one relationship between a FontSelector and a TrueType/OpenType file. Returns a string for diagnostic purposes only. Represents a value and its unit of measure. The structure converts implicitly from and to double with a value measured in point. Initializes a new instance of the XUnit class with type set to point. Initializes a new instance of the XUnit class. Returns the object as string using the format information. The unit of measure is appended to the end of the string. Returns the object as string using the specified format and format information. The unit of measure is appended to the end of the string. Returns the object as string. The unit of measure is appended to the end of the string. Returns the unit of measure of the object as a string like 'pt', 'cm', or 'in'. Returns an XUnit object. Sets type to point. Returns an XUnit object. Sets type to inch. Returns an XUnit object. Sets type to millimeters. Returns an XUnit object. Sets type to centimeters. Returns an XUnit object. Sets type to Presentation. Converts a string to an XUnit object. If the string contains a suffix like 'cm' or 'in' the object will be converted to the appropriate type, otherwise point is assumed. Converts an int to an XUnit object with type set to point. Converts a double to an XUnit object with type set to point. Returns a double value as point. Memberwise comparison. To compare by value, use code like Math.Abs(a.Pt - b.Pt) < 1e5. Memberwise comparison. To compare by value, use code like Math.Abs(a.Pt - b.Pt) < 1e5. Calls base class Equals. Returns the hash code for this instance. This member is intended to be used by XmlDomainObjectReader only. Converts an existing object from one unit into another unit type. Represents a unit with all values zero. Gets the raw value of the object without any conversion. To determine the XGraphicsUnit use property Type. To get the value in point use the implicit conversion to double. Gets the unit of measure. Gets or sets the value in point. Gets or sets the value in inch. Gets or sets the value in millimeter. Gets or sets the value in centimeter. Gets or sets the value in presentation units (1/96 inch). Represents a so called 'PDF form external object', which is typically an imported page of an external PDF document. XPdfForm objects are used like images to draw an existing PDF page of an external document in the current document. XPdfForm objects can only be placed in PDF documents. If you try to draw them using a XGraphics based on an GDI+ context no action is taken if no placeholder image is specified. Otherwise the place holder is drawn. Represents a graphical object that can be used to render retained graphics on it. In GDI+ it is represented by a Metafile, in WPF by a DrawingVisual, and in PDF by a Form XObjects. Defines an object used to draw image files (bmp, png, jpeg, gif) and PDF forms. An abstract base class that provides functionality for the Bitmap and Metafile descended classes. Initializes a new instance of the class. Initializes a new instance of the class from a GDI+ image. Implicit conversion from Image to XImage. Conversion from Image to XImage. Creates an image from the specified file. The path to a BMP, PNG, GIF, JPEG, TIFF, or PDF file. Tests if a file exist. Supports PDF files with page number suffix. The path to a BMP, PNG, GIF, JPEG, TIFF, or PDF file. Under construction Disposes underlying GDI+ object. If path starts with '*' the image is created from a stream and the path is a GUID. Cache PdfImageTable.ImageSelector to speed up finding the right PdfImage if this image is used more than once. Gets the width of the image. Gets the height of the image. Gets the width of the image in point. Gets the height of the image in point. Gets the width of the image in pixels. Gets the height of the image in pixels. Gets the size in point of the image. Gets the horizontal resolution of the image. Gets the vertical resolution of the image. Gets or sets a flag indicating whether image interpolation is to be performed. Gets the format of the image. Initializes a new instance of the class. Initializes a new instance of the XForm class such that it can be drawn on the specified graphics object. The graphics object that later is used to draw this form. The size in points of the form. Initializes a new instance of the XForm class such that it can be drawn on the specified graphics object. The graphics object that later is used to draw this form. The width of the form. The height of the form. Initializes a new instance of the class that represents a page of a PDF document. The PDF document. The view box of the page. Initializes a new instance of the class that represents a page of a PDF document. The PDF document. The size of the page. Initializes a new instance of the class that represents a page of a PDF document. The PDF document. The width of the page. The height of the page This function should be called when drawing the content of this form is finished. The XGraphics object used for drawing the content is disposed by this function and cannot be used for any further drawing operations. PDFsharp automatically calls this function when this form was used the first time in a DrawImage function. Called from XGraphics constructor that creates an instance that work on this form. Disposes this instance. Sets the form in the state FormState.Finished. Gets the resource name of the specified font within this form. Tries to get the resource name of the specified font data within this form. Returns null if no such font exists. Gets the resource name of the specified font data within this form. Gets the resource name of the specified image within this form. Implements the interface because the primary function is internal. Gets the resource name of the specified form within this form. Implements the interface because the primary function is internal. The PdfFormXObject gets invalid when PageNumber or transform changed. This is because a modification of an XPdfForm must not change objects that are already been drawn. Gets the owning document. Gets the color model used in the underlying PDF document. Gets a value indicating whether this instance is a template. Get the width of the page identified by the property PageNumber. Get the width of the page identified by the property PageNumber. Get the width in point of this image. Get the height in point of this image. Get the width of the page identified by the property PageNumber. Get the height of the page identified by the property PageNumber. Get the size of the page identified by the property PageNumber. Gets the view box of the form. Gets 72, the horizontal resolution by design of a form object. Gets 72 always, the vertical resolution by design of a form object. Gets or sets the bounding box. Gets or sets the transformation matrix. Implements the interface because the primary function is internal. The form is an imported PDF page. The template is just created. XGraphics.FromForm() was called. The form was drawn at least once and is 'frozen' now. Initializes a new instance of the XPdfForm class from the specified path to an external PDF document. Although PDFsharp internally caches XPdfForm objects it is recommended to reuse XPdfForm objects in your code and change the PageNumber property if more than one page is needed form the external document. Furthermore, because XPdfForm can occupy very much memory, it is recommended to dispose XPdfForm objects if not needed anymore. Initializes a new instance of the class from a stream. The stream. Creates an XPdfForm from a file. Creates an XPdfForm from a stream. Sets the form in the state FormState.Finished. Frees the memory occupied by the underlying imported PDF document, even if other XPdfForm objects refer to this document. A reuse of this object doesn't fail, because the underlying PDF document is re-imported if necessary. Extracts the page number if the path has the form 'MyFile.pdf#123' and returns the actual path without the number sign and the following digits. Gets or sets an image that is used for drawing if the current XGraphics object cannot handle PDF forms. A place holder is useful for showing a preview of a page on the display, because PDFsharp cannot render native PDF objects. Gets the underlying PdfPage (if one exists). Gets the number of pages in the PDF form. Gets the width in point of the page identified by the property PageNumber. Gets the height in point of the page identified by the property PageNumber. Gets the width in point of the page identified by the property PageNumber. Gets the height in point of the page identified by the property PageNumber. Gets the width in point of the page identified by the property PageNumber. Gets the height in point of the page identified by the property PageNumber. Get the size of the page identified by the property PageNumber. Gets or sets the transformation matrix. Gets or sets the page number in the external PDF document this object refers to. The page number is one-based, i.e. it is in the range from 1 to PageCount. The default value is 1. Gets or sets the page index in the external PDF document this object refers to. The page index is zero-based, i.e. it is in the range from 0 to PageCount - 1. The default value is 0. Gets the underlying document from which pages are imported. String resources for the empira barcode renderer. Huffman tree used for inflation Literal length tree Distance tree Constructs a Huffman tree from the array of code lengths. the array of code lengths Reads the next symbol from input. The symbol is encoded using the huffman tree. input the input source. the next symbol, or -1 if not enough input is available. Represents an indirect text string value. This type is not used by PDFsharp. If it is imported from an external PDF file, the value is converted into a direct object. Initializes a new instance of the class. Initializes a new instance of the class. The document. The value. Initializes a new instance of the class. The value. The encoding. Returns the string. Writes the string literal with encoding DOCEncoded. Gets the number of characters in this string. Gets or sets the encoding. Gets a value indicating whether the string is a hexadecimal literal. Gets or sets the value as string Gets or sets the string value for encryption purposes. Applies standard filters to streams. Gets the filter specified by the case sensitive name. Encodes the data with the specified filter. Encodes a raw string with the specified filter. Decodes the data with the specified filter. Decodes the data with the specified filter. Decodes the data with the specified filter. Decodes to a raw string with the specified filter. Decodes to a raw string with the specified filter. Gets the filter singleton. Gets the filter singleton. Gets the filter singleton. Gets the filter singleton. TrueType with WinAnsi encoding. TrueType with Identity-H or Identity-V encoding (unicode). Contains all used fonts of a document. Initializes a new instance of this class, which is a singleton for each document. Gets a PdfFont from an XFont. If no PdfFont already exists, a new one is created. Gets a PdfFont from a font program. If no PdfFont already exists, a new one is created. Tries to gets a PdfFont from the font dictionary. Returns null if no such PdfFont exists. Map from PdfFontSelector to PdfFont. A collection of information that uniquely identifies a particular PDF font. ... more docu... TODO Two PDF fonts are equal if and only if their font selector objects are equal. Initializes a new instance of PdfFontSelector from an XFont. Initializes a new instance of PdfFontSelector from a unique name. Returns a string for diagnostic purposes only. Gets the (generated) resource name of the font. In our own PDF files equal fonts share the same resource name in all contents streams. Gets the style. Contains only flags that effects the font face and are available for the specified font. The style. Gets the type of the font (TrueType with Ansi Encoding or CID font). Stores a set of four floating-point numbers that represent the location and size of a rectangle. Initializes a new instance of the XRect class. Initializes a new instance of the XRect class. Initializes a new instance of the XRect class. Initializes a new instance of the XRect class. Initializes a new instance of the XRect class. Initializes a new instance of the XRect class. Initializes a new instance of the XRect class. Creates a rectangle from for straight lines. Determines whether the two rectangles are equal. Determines whether the two rectangles are not equal. Determines whether the two rectangles are equal. Determines whether this instance and the specified object are equal. Determines whether this instance and the specified rect are equal. Returns the hash code for this instance. Parses the rectangle from a string. Converts this XRect to a human readable string. Converts this XRect to a human readable string. Converts this XRect to a human readable string. Indicates whether the rectangle contains the specified point. Indicates whether the rectangle contains the specified point. Indicates whether the rectangle contains the specified rectangle. Indicates whether the specified rectangle intersects with the current rectangle. Sets current rectangle to the intersection of the current rectangle and the specified rectangle. Returns the intersection of two rectangles. Sets current rectangle to the union of the current rectangle and the specified rectangle. Returns the union of two rectangles. Sets current rectangle to the union of the current rectangle and the specified point. Returns the intersection of a rectangle and a point. Moves a rectangle by the specified amount. Moves a rectangle by the specified amount. Returns a rectangle that is offset from the specified rectangle by using the specified vector. Returns a rectangle that is offset from the specified rectangle by using specified horizontal and vertical amounts. Translates the rectangle by adding the specified point. Translates the rectangle by subtracting the specified point. Expands the rectangle by using the specified Size, in all directions. Expands or shrinks the rectangle by using the specified width and height amounts, in all directions. Returns the rectangle that results from expanding the specified rectangle by the specified Size, in all directions. Creates a rectangle that results from expanding or shrinking the specified rectangle by the specified width and height amounts, in all directions. Returns the rectangle that results from applying the specified matrix to the specified rectangle. Transforms the rectangle by applying the specified matrix. Multiplies the size of the current rectangle by the specified x and y values. Converts this instance to a System.Drawing.RectangleF. Performs an implicit conversion from a System.Drawing.Rectangle to an XRect. Performs an implicit conversion from a System.Drawing.RectangleF to an XRect. Gets the empty rectangle. Gets a value indicating whether this instance is empty. Gets or sets the location of the rectangle. Gets or sets the size of the rectangle. Gets or sets the X value of the rectangle. Gets or sets the Y value of the rectangle. Gets or sets the width of the rectangle. Gets or sets the height of the rectangle. Gets the x-axis value of the left side of the rectangle. Gets the y-axis value of the top side of the rectangle. Gets the x-axis value of the right side of the rectangle. Gets the y-axis value of the bottom side of the rectangle. Gets the position of the top-left corner of the rectangle. Gets the position of the top-right corner of the rectangle. Gets the position of the bottom-left corner of the rectangle. Gets the position of the bottom-right corner of the rectangle. Gets the center of the rectangle. Specifies the alignment of a text string relative to its layout rectangle. Specifies the text be aligned near the layout. In a left-to-right layout, the near position is left. In a right-to-left layout, the near position is right. Specifies that text is aligned in the center of the layout rectangle. Specifies that text is aligned far from the origin position of the layout rectangle. In a left-to-right layout, the far position is right. In a right-to-left layout, the far position is left. Specifies whether smoothing (or antialiasing) is applied to lines and curves and the edges of filled areas. Specifies an invalid mode. Specifies the default mode. Specifies high speed, low quality rendering. Specifies high quality, low speed rendering. Specifies no antialiasing. Specifies antialiased rendering. Specifies how different clipping regions can be combined. One clipping region is replaced by another. Two clipping regions are combined by taking their intersection. Not yet implemented in PDFsharp. Not yet implemented in PDFsharp. Not yet implemented in PDFsharp. Not yet implemented in PDFsharp. Represents a very simple text formatter. If this class does not satisfy your needs on formatting paragraphs I recommend to take a look at MigraDoc Foundation. Alternatively you should copy this class in your own source code and modify it. Initializes a new instance of the class. Draws the text. The text to be drawn. The font. The text brush. The layout rectangle. Draws the text. The text to be drawn. The font. The text brush. The layout rectangle. The format. Must be XStringFormat.TopLeft Align center, right or justify. Gets or sets the text. The text. Gets or sets the font. Gets or sets the bounding box of the layout. Gets or sets the alignment of the text. Represents a single word. Initializes a new instance of the class. The text of the block. The type of the block. The width of the text. Initializes a new instance of the class. The type. The text represented by this block. The type of the block. The width of the text. The location relative to the upper left corner of the layout rectangle. The alignment of this line. A flag indicating that this is the last bock that fits in the layout rectangle. Character table by name. Same as PdfSharp.Pdf.IO.Chars. Not yet clear if necessary. Represents a writer for True Type font files. Represents a writer for generation of font file streams. Initializes a new instance of the class. Closes the writer and, if specified, the underlying stream. Closes the writer and the underlying stream. Writes the specified value to the font stream. Writes the specified value to the font stream. Writes the specified value to the font stream using big-endian. Writes the specified value to the font stream using big-endian. Writes the specified value to the font stream using big-endian. Writes the specified value to the font stream using big-endian. Writes the specified value to the font stream using big-endian. Writes the specified value to the font stream using big-endian. Gets or sets the position within the stream. Gets the underlying stream. Initializes a new instance of the class. Writes a table name. Base class for all font descriptors. Gets a value indicating whether this instance belongs to a bold font. Gets a value indicating whether this instance belongs to an italic font. Under Construction Global table of TrueType font faces. Calculates an Adler32 checksum. Gets the singleton. Manages the localization of the color class. Initializes a new instance of the class. Initializes a new instance of the class. The culture info. Gets a known color from an ARGB value. Throws an ArgumentException if the value is not a known color. Gets all known colors. Indicates whether to include the color Transparent. Converts a known color to a localized color name. Converts a color to a localized color name or an ARGB value. Version info of this assembly. Represents an indirect real value. This type is not used by PDFsharp. If it is imported from an external PDF file, the value is converted into a direct object. Base class for indirect number values (not yet used, maybe superfluous). Initializes a new instance of the class. Initializes a new instance of the class. The document. Initializes a new instance of the class. Initializes a new instance of the class. The value. Initializes a new instance of the class. The document. The value. Returns the real as a culture invariant string. Writes the real literal. Gets or sets the value. Represents a page in a PDF document. Initializes a new page. The page must be added to a document before it can be used. Initializes a new instance of the class. The document. Closes the page. A closes page cannot be modified anymore and it is not possible to get an XGraphics object for a closed page. Closing a page is not required, but may saves resources if the document has many pages. The content stream currently used by an XGraphics object for rendering. Adds an intra document link. The rect. The destination page. Adds a link to the Web. The rect. The URL. Adds a link to a file. The rect. Name of the file. Gets the resource name of the specified font within this page. Tries to get the resource name of the specified font data within this page. Returns null if no such font exists. Gets the resource name of the specified font data within this page. Gets the resource name of the specified image within this page. Implements the interface because the primary function is internal. Gets the resource name of the specified form within this page. Implements the interface because the primary function is internal. Hack to indicate that a page-level transparency group must be created. Inherit values from parent node. Add all inheritable values from the specified page to the specified values structure. Gets or sets a user defined object that contains arbitrary information associated with this PDF page. The tag is not used by PDFsharp. Gets a value indicating whether the page is closed. Gets or sets the PdfDocument this page belongs to. Gets or sets the orientation of the page. The default value PageOrientation.Portrait. If an imported page has a /Rotate value that matches the formula 90 + n * 180 the orientation is set to PageOrientation.Landscape. Gets or sets one of the predefined standard sizes like. Gets or sets the trim margins. Gets or sets the media box directly. XGrahics is not prepared to work with a media box with an origin other than (0,0). Gets or sets the crop box. Gets or sets the bleed box. Gets or sets the art box. Gets or sets the trim box. Gets or sets the height of the page. If orientation is Landscape, this function applies to the width. Gets or sets the width of the page. If orientation is Landscape, this function applies to the height. Gets or sets the /Rotate entry of the PDF page. The value is the number of degrees by which the page should be rotated clockwise when displayed or printed. The value must be a multiple of 90. PDFsharp does not set this value, but for imported pages this value can be set and must be taken into account when adding graphic to such a page. Gets the array of content streams of the page. Gets the annotations array of this page. Gets or sets the custom values. Implements the interface because the primary function is internal. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. Predefined keys common to PdfPage and PdfPages. (Required; inheritable) A dictionary containing any resources required by the page. If the page requires no resources, the value of this entry should be an empty dictionary. Omitting the entry entirely indicates that the resources are to be inherited from an ancestor node in the page tree. (Required; inheritable) A rectangle, expressed in default user space units, defining the boundaries of the physical medium on which the page is intended to be displayed or printed. (Optional; inheritable) A rectangle, expressed in default user space units, defining the visible region of default user space. When the page is displayed or printed, its contents are to be clipped (cropped) to this rectangle and then imposed on the output medium in some implementation defined manner. Default value: the value of MediaBox. (Optional; inheritable) The number of degrees by which the page should be rotated clockwise when displayed or printed. The value must be a multiple of 90. Default value: 0. (Required) The type of PDF object that this dictionary describes; must be Page for a page object. (Required; must be an indirect reference) The page tree node that is the immediate parent of this page object. (Required if PieceInfo is present; optional otherwise; PDF 1.3) The date and time when the page’s contents were most recently modified. If a page-piece dictionary (PieceInfo) is present, the modification date is used to ascertain which of the application data dictionaries that it contains correspond to the current content of the page. (Optional; PDF 1.3) A rectangle, expressed in default user space units, defining the region to which the contents of the page should be clipped when output in a production environment. Default value: the value of CropBox. (Optional; PDF 1.3) A rectangle, expressed in default user space units, defining the intended dimensions of the finished page after trimming. Default value: the value of CropBox. (Optional; PDF 1.3) A rectangle, expressed in default user space units, defining the extent of the page’s meaningful content (including potential white space) as intended by the page’s creator. Default value: the value of CropBox. (Optional; PDF 1.4) A box color information dictionary specifying the colors and other visual characteristics to be used in displaying guidelines on the screen for the various page boundaries. If this entry is absent, the application should use its own current default settings. (Optional) A content stream describing the contents of this page. If this entry is absent, the page is empty. The value may be either a single stream or an array of streams. If the value is an array, the effect is as if all of the streams in the array were concatenated, in order, to form a single stream. This allows PDF producers to create image objects and other resources as they occur, even though they interrupt the content stream. The division between streams may occur only at the boundaries between lexical tokens but is unrelated to the page’s logical content or organization. Applications that consume or produce PDF files are not required to preserve the existing structure of the Contents array. (Optional; PDF 1.4) A group attributes dictionary specifying the attributes of the page’s page group for use in the transparent imaging model. (Optional) A stream object defining the page’s thumbnail image. (Optional; PDF 1.1; recommended if the page contains article beads) An array of indirect references to article beads appearing on the page. The beads are listed in the array in natural reading order. (Optional; PDF 1.1) The page’s display duration (also called its advance timing): the maximum length of time, in seconds, that the page is displayed during presentations before the viewer application automatically advances to the next page. By default, the viewer does not advance automatically. (Optional; PDF 1.1) A transition dictionary describing the transition effect to be used when displaying the page during presentations. (Optional) An array of annotation dictionaries representing annotations associated with the page. (Optional; PDF 1.2) An additional-actions dictionary defining actions to be performed when the page is opened or closed. (Optional; PDF 1.4) A metadata stream containing metadata for the page. (Optional; PDF 1.3) A page-piece dictionary associated with the page. (Required if the page contains structural content items; PDF 1.3) The integer key of the page’s entry in the structural parent tree. (Optional; PDF 1.3; indirect reference preferred) The digital identifier of the page’s parent Web Capture content set. (Optional; PDF 1.3) The page’s preferred zoom (magnification) factor: the factor by which it should be scaled to achieve the natural display magnification. (Optional; PDF 1.3) A separation dictionary containing information needed to generate color separations for the page. (Optional; PDF 1.5) A name specifying the tab order to be used for annotations on the page. The possible values are R (row order), C (column order), and S (structure order). (Required if this page was created from a named page object; PDF 1.5) The name of the originating page object. (Optional; PDF 1.5) A navigation node dictionary representing the first node on the page. (Optional; PDF 1.6) A positive number giving the size of default user space units, in multiples of 1/72 inch. The range of supported values is implementation-dependent. (Optional; PDF 1.6) An array of viewport dictionaries specifying rectangular regions of the page. Gets the KeysMeta for these keys. Values inherited from a parent in the parent chain of a page tree. Represents an outline item in the outlines tree. An outline is also knows as a bookmark. Initializes a new instance of the class. Initializes a new instance of the class. The document. Initializes a new instance from an existing dictionary. Used for object type transformation. Initializes a new instance of the class. The outline text. The destination page. Specifies whether the node is displayed expanded (opened) or collapsed. The font style used to draw the outline text. The color used to draw the outline text. Initializes a new instance of the class. The outline text. The destination page. Specifies whether the node is displayed expanded (opened) or collapsed. The font style used to draw the outline text. Initializes a new instance of the class. The outline text. The destination page. Specifies whether the node is displayed expanded (opened) or collapsed. Initializes a new instance of the class. The outline text. The destination page. The total number of open descendants at all lower levels. Creates key/values pairs according to the object structure. Gets or sets the title. Gets or sets the destination page. Gets or sets whether the outline item is opened (or expanded). Gets or sets the style. Gets or sets the color of the text. The color of the text. Gets the outline collection of this node. Gets the KeysMeta of this dictionary type. Represents a collection of outlines. Adds the specified outline. Adds the specified outline entry. The outline text. The destination page. Specifies whether the node is displayed expanded (opened) or collapsed. The font style used to draw the outline text. The color used to draw the outline text. Adds the specified outline entry. The outline text. The destination page. Specifies whether the node is displayed expanded (opened) or collapsed. The font style used to draw the outline text. Adds the specified outline entry. The outline text. The destination page. Specifies whether the node is displayed expanded (opened) or collapsed. Adds the specified outline entry. The outline text. The destination page. Gets the index of the specified outline. Returns an enumerator that iterates through a collection. Indicates whether the outline has at least one entry. Gets the number of entries in this collection. Gets the at the specified index. Predefined keys of this dictionary. (Optional) The type of PDF object that this dictionary describes; if present, must be Outlines for an outline dictionary. (Required) The text to be displayed on the screen for this item. (Required; must be an indirect reference) The parent of this item in the outline hierarchy. The parent of a top-level item is the outline dictionary itself. (Required for all but the first item at each level; must be an indirect reference) The previous item at this outline level. (Required for all but the last item at each level; must be an indirect reference) The next item at this outline level. (Required if the item has any descendants; must be an indirect reference) The first of this item’s immediate children in the outline hierarchy. (Required if the item has any descendants; must be an indirect reference) The last of this item’s immediate children in the outline hierarchy. (Required if the item has any descendants) If the item is open, the total number of its open descendants at all lower levels of the outline hierarchy. If the item is closed, a negative integer whose absolute value specifies how many descendants would appear if the item were reopened. (Optional; not permitted if an A entry is present) The destination to be displayed when this item is activated. (Optional; not permitted if an A entry is present) The destination to be displayed when this item is activated. (Optional; PDF 1.3; must be an indirect reference) The structure element to which the item refers. Note: The ability to associate an outline item with a structure element (such as the beginning of a chapter) is a PDF 1.3 feature. For backward compatibility with earlier PDF versions, such an item should also specify a destination (Dest) corresponding to an area of a page where the contents of the designated structure element are displayed. (Optional; PDF 1.4) An array of three numbers in the range 0.0 to 1.0, representing the components in the DeviceRGB color space of the color to be used for the outline entry’s text. Default value: [0.0 0.0 0.0]. (Optional; PDF 1.4) A set of flags specifying style characteristics for displaying the outline item’s text. Default value: 0. Gets the KeysMeta for these keys. Value creation flags. Specifies whether and how a value that not exists is created. Don't create the value. Create the value as direct object. Create the value as indirect object. A wrapper around Adobe Reader or Adobe Acrobat that helps to print PDF files. The property AdobeReaderPath must be set before the class can be used for printing. The class was tested with Adobe Reader 7.0.7. If this stuff does not work, please don't write me mails! If you enhance this class, please let me know. Initializes a new instance of the class. Initializes a new instance of the class. Name of the PDF file. Initializes a new instance of the class. Name of the PDF file. Name of the printer. Prints the PDF file. Prints the PDF file. The number of milliseconds to wait for completing the print job. For reasons only Adobe knows the Reader seams to open and shows the document instead of printing it when it was not already running. If you use PDFsharp and have any suggestions to circumvent this function, please let us know. Gets or sets the name of the PDF file to print. Gets or sets the name of the printer. A typical name looks like '\\myserver\HP LaserJet PCL5'. The name of the printer. Gets or sets the working directory. Gets or sets the Adobe Reader or Adobe Acrobat path. A typical name looks like 'C:\Program Files\Adobe\Adobe Reader 7.0\AcroRd32.exe'. Gets or sets the name of the default printer. A typical name looks like '\\myserver\HP LaserJet PCL5'. Represents a text annotation. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Optional) The annotation’s highlighting mode, the visual effect to be used when the mouse button is pressed or held down inside its active area: N (None) No highlighting. I (Invert) Invert the contents of the annotation rectangle. O (Outline) Invert the annotation’s border. P (Push) Display the annotation’s down appearance, if any. If no down appearance is defined, offset the contents of the annotation rectangle to appear as if it were being pushed below the surface of the page. T (Toggle) Same as P (which is preferred). A highlighting mode other than P overrides any down appearance defined for the annotation. Default value: I. (Optional) An appearance characteristics dictionary to be used in constructing a dynamic appearance stream specifying the annotation’s visual presentation on the page. The name MK for this entry is of historical significance only and has no direct meaning. Specifies the predefined icon names of rubber stamp annotations. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. A pre-defined rubber stamp annotation icon. Provides access to the internal document data structures. This class prevents the public interfaces from pollution with to much internal functions. Returns the object with the specified Identifier, or null, if no such object exists. Returns the PdfReference of the specified object, or null, if the object is not in the document's object table. Gets the object identifier of the specified object. Gets the object number of the specified object. Gets the generation number of the specified object. Gets all indirect objects ordered by their object identifier. Creates the indirect object of the specified type, adds it to the document, and returns the object. Adds an object to the PDF document. This operation and only this operation makes the object an indirect object owned by this document. Removes an object from the PDF document. Returns an array containing the specified object as first element follows by its transitive closure. The closure of an object are all objects that can be reached by indirect references. The transitive closure is the result of applying the calculation of the closure to a closure as long as no new objects came along. This is e.g. useful for getting all objects belonging to the resources of a page. Writes a PdfItem into the specified stream. The name of the custom value key. Gets or sets the first document identifier. Gets the first document identifier as GUID. Gets or sets the second document identifier. Gets the first document identifier as GUID. Gets the catalog dictionary. Gets all indirect objects ordered by their object identifier. The PDF font descriptor flags. All glyphs have the same width (as opposed to proportional or variable-pitch fonts, which have different widths). Glyphs have serifs, which are short strokes drawn at an angle on the top and bottom of glyph stems. (Sans serif fonts do not have serifs.) Font contains glyphs outside the Adobe standard Latin character set. This flag and the Nonsymbolic flag cannot both be set or both be clear. Glyphs resemble cursive handwriting. Font uses the Adobe standard Latin character set or a subset of it. Glyphs have dominant vertical strokes that are slanted. Font contains no lowercase letters; typically used for display purposes, such as for titles or headlines. Font contains both uppercase and lowercase letters. The uppercase letters are similar to those in the regular version of the same typeface family. The glyphs for the lowercase letters have the same shapes as the corresponding uppercase letters, but they are sized and their proportions adjusted so that they have the same size and stroke weight as lowercase glyphs in the same typeface family. Determines whether bold glyphs are painted with extra pixels even at very small text sizes. A PDF font descriptor specifies metrics and other attributes of a simple font, as distinct from the metrics of individual glyphs. Gets or sets the name of the font. Gets a value indicating whether this instance is symbol font. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Required) The type of PDF object that this dictionary describes; must be FontDescriptor for a font descriptor. (Required) The PostScript name of the font. This name should be the same as the value of BaseFont in the font or CIDFont dictionary that refers to this font descriptor. (Optional; PDF 1.5; strongly recommended for Type 3 fonts in Tagged PDF documents) A string specifying the preferred font family name. For example, for the font Times Bold Italic, the FontFamily is Times. (Optional; PDF 1.5; strongly recommended for Type 3 fonts in Tagged PDF documents) The font stretch value. It must be one of the following names (ordered from narrowest to widest): UltraCondensed, ExtraCondensed, Condensed, SemiCondensed, Normal, SemiExpanded, Expanded, ExtraExpanded or UltraExpanded. Note: The specific interpretation of these values varies from font to font. For example, Condensed in one font may appear most similar to Normal in another. (Optional; PDF 1.5; strongly recommended for Type 3 fonts in Tagged PDF documents) The weight (thickness) component of the fully-qualified font name or font specifier. The possible values are 100, 200, 300, 400, 500, 600, 700, 800, or 900, where each number indicates a weight that is at least as dark as its predecessor. A value of 400 indicates a normal weight; 700 indicates bold. Note: The specific interpretation of these values varies from font to font. For example, 300 in one font may appear most similar to 500 in another. (Required) A collection of flags defining various characteristics of the font. (Required, except for Type 3 fonts) A rectangle (see Section 3.8.4, “Rectangles”), expressed in the glyph coordinate system, specifying the font bounding box. This is the smallest rectangle enclosing the shape that would result if all of the glyphs of the font were placed with their origins coincident and then filled. (Required) The angle, expressed in degrees counterclockwise from the vertical, of the dominant vertical strokes of the font. (For example, the 9-o’clock position is 90 degrees, and the 3-o’clock position is –90 degrees.) The value is negative for fonts that slope to the right, as almost all italic fonts do. (Required, except for Type 3 fonts) The maximum height above the baseline reached by glyphs in this font, excluding the height of glyphs for accented characters. (Required, except for Type 3 fonts) The maximum depth below the baseline reached by glyphs in this font. The value is a negative number. (Optional) The spacing between baselines of consecutive lines of text. Default value: 0. (Required for fonts that have Latin characters, except for Type 3 fonts) The vertical coordinate of the top of flat capital letters, measured from the baseline. (Optional) The font’s x height: the vertical coordinate of the top of flat nonascending lowercase letters (like the letter x), measured from the baseline, in fonts that have Latin characters. Default value: 0. (Required, except for Type 3 fonts) The thickness, measured horizontally, of the dominant vertical stems of glyphs in the font. (Optional) The thickness, measured vertically, of the dominant horizontal stems of glyphs in the font. Default value: 0. (Optional) The average width of glyphs in the font. Default value: 0. (Optional) The maximum width of glyphs in the font. Default value: 0. (Optional) The width to use for character codes whose widths are not specified in a font dictionary’s Widths array. This has a predictable effect only if all such codes map to glyphs whose actual widths are the same as the value of the MissingWidth entry. Default value: 0. (Optional) A stream containing a Type 1 font program. (Optional; PDF 1.1) A stream containing a TrueType font program. (Optional; PDF 1.2) A stream containing a font program whose format is specified by the Subtype entry in the stream dictionary. (Optional; meaningful only in Type 1 fonts; PDF 1.1) A string listing the character names defined in a font subset. The names in this string must be in PDF syntax—that is, each name preceded by a slash (/). The names can appear in any order. The name .notdef should be omitted; it is assumed to exist in the font subset. If this entry is absent, the only indication of a font subset is the subset tag in the FontName entry. Gets the KeysMeta for these keys. Represents the content of a page. PDFsharp supports only one content stream per page. If an imported page has an array of content streams, the streams are concatenated to one single stream. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. The dict. Unfilters the stream. Surround content with q/Q operations if necessary. Sets a value indicating whether the content is compressed with the ZIP algorithm. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. Gets the KeysMeta for these keys. Implements the control that previews the page. Defines a zoom factor used in the preview control. The smallest possible zoom factor. The largest possible zoom factor. A pre-defined zoom factor. A pre-defined zoom factor. A pre-defined zoom factor. A pre-defined zoom factor. A pre-defined zoom factor. A pre-defined zoom factor. A pre-defined zoom factor. A pre-defined zoom factor. A pre-defined zoom factor. A pre-defined zoom factor. Sets the zoom factor so that the document fits horizontally into the window. Sets the zoom factor so that the printable area of the document fits horizontally into the window. Currently not yet implemented and the same as ZoomBestFit. Sets the zoom factor so that the whole document fits completely into the window. Sets the zoom factor so that the document is displayed in its real physical size (based on the DPI information returned from the OS for the current monitor). Represents a pair of floating-point numbers, typically the width and height of a graphical object. Initializes a new instance of the XPoint class with the specified values. Initializes a new instance of the class. Determines whether two size objects are equal. Determines whether two size objects are not equal. Indicates whether this tow instance are equal. Indicates whether this instance and a specified object are equal. Indicates whether this instance and a specified size are equal. Returns the hash code for this instance. Parses the size from a string. Converts this XSize to a PointF. Converts this XSize to an XPoint. Converts this XSize to an XVector. Converts this XSize to a SizeF. Creates an XSize from a System.Drawing.Size. Implicit conversion from XSize to System.Drawing.Size. The conversion must be implicit because the WinForms designer uses it. Creates an XSize from a System.Drawing.Size. Converts this XSize to a human readable string. Converts this XSize to a human readable string. Converts this XSize to a human readable string. Performs an explicit conversion from XSize to XVector. Performs an explicit conversion from XSize to XPoint. Returns an empty size, i.e. a size with a width or height less than 0. Gets a value indicating whether this instance is empty. Gets or sets the width. Gets or sets the height. Specifies the format of the image. Determines whether the specified object is equal to the current object. Returns the hash code for this instance. Gets the Portable Network Graphics (PNG) image format. Gets the Graphics Interchange Format (GIF) image format. Gets the Joint Photographic Experts Group (JPEG) image format. Gets the Tag Image File Format (TIFF) image format. Gets the Portable Document Format (PDF) image format Gets the Windows icon image format. Specifies whether and how the text is displayed at the code. No text is drawn. The text is located above the code. The text is located below the code. The text is located above within the code. The text is located below within the code. Specifies whether and how the text is displayed at the code area. The anchor is located top left. The anchor is located top center. The anchor is located top right. The anchor is located middle left. The anchor is located middle center. The anchor is located middle right. The anchor is located bottom left. The anchor is located bottom center. The anchor is located bottom right. Represents a generic field. Used for AcroForm dictionaries unknown to PDFsharp. Initializes a new instance of PdfGenericField. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. Represents the check box field. Represents the base class for all button fields. Initializes a new instance of the class. Initializes a new instance of the class. Gets the name which represents the opposite of /Off. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. Initializes a new instance of PdfCheckBoxField. Indicates whether the field is checked. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. (Optional; inheritable; PDF 1.4) A text string to be used in place of the V entry for the value of the field. Gets the KeysMeta for these keys. Indicates whether we are within a BT/ET block. Graphic mode. This is default. Text mode. Represents the cross reference table of a PDF document. It contains all indirect objects of a document. Represents the relation between PdfObjectID and PdfReference for a PdfDocument. Adds a cross reference entry to the table. Used when parsing the trailer. Adds a PdfObject to the table. Indicates whether the specified object identifier is in the table. Returns the next free object number. Writes the iref section in pdf stream. Removes all objects that cannot be reached from the trailer. Returns the number of removed objects. Renumbers the objects starting at 1. Checks the logical consistence for debugging purposes (useful after reconstruction work). Calculates the transitive closure of the specified PdfObject with the specified depth, i.e. all indirect objects recursively reachable from the specified object in up to maximally depth steps. Gets a cross reference entry from an object identifier. Returns null if no object with the specified ID exists in the object table. Gets an array of all object identifier. For debugging purposes only. Gets an array of all cross references ordered increasing by their object identifier. Gets the cross reference to an objects used for undefined indirect references. Determines the encoding of a PdfString or PdfStringObject. The characters of the string are actually bytes with an unknown or context specific meaning or encoding. With this encoding the 8 high bits of each character is zero. Not yet used by PDFsharp. The characters of the string are actually bytes with PDF document encoding. With this encoding the 8 high bits of each character is zero. The characters of the string are actually bytes with Windows ANSI encoding. With this encoding the 8 high bits of each character is zero. Not yet used by PDFsharp. Not yet used by PDFsharp. The characters of the string are Unicode characters. Internal wrapper for PdfStringEncoding. Represents a direct text string value. Initializes a new instance of the class. Initializes a new instance of the class. The value. Initializes a new instance of the class. The value. The encoding. Returns the string. Hack for document encoded bookmarks. Writes the string DocEncoded. Gets the number of characters in this string. Gets the encoding. Gets a value indicating whether the string is a hexadecimal literal. Gets the string value. Gets or sets the string value for encryption purposes. Represents a PDF rectangle value, that is internally an array with 4 real values. Initializes a new instance of the PdfRectangle class. Initializes a new instance of the PdfRectangle class with two points specifying two diagonally opposite corners. Notice that in contrast to GDI+ convention the 3rd and the 4th parameter specify a point and not a width. This is so much confusing that this function is for internal use only. Initializes a new instance of the PdfRectangle class with two points specifying two diagonally opposite corners. Initializes a new instance of the PdfRectangle class with two points specifying two diagonally opposite corners. Initializes a new instance of the PdfRectangle class with the specified location and size. Initializes a new instance of the PdfRectangle class with the specified location and size. Initializes a new instance of the PdfRectangle class with the specified XRect. Initializes a new instance of the PdfRectangle class with the specified PdfArray. Clones this instance. Implements cloning this instance. Tests whether the specified object is a PdfRectangle and has equal coordinates. Serves as a hash function for a particular type. Tests whether two structures have equal coordinates. Tests whether two structures differ in one or more coordinates. Determines if the specified point is contained within this PdfRectangle. Determines if the specified point is contained within this PdfRectangle. Determines if the specified point is contained within this PdfRectangle. Determines if the rectangular region represented by rect is entirely contained within this PdfRectangle. Determines if the rectangular region represented by rect is entirely contained within this PdfRectangle. Determines if the rectangular region represented by rect is entirely contained within this PdfRectangle. Returns the rectangle as an XRect object. Returns the rectangle as a string in the form «[x1 y1 x2 y2]». Writes the rectangle. Represents an empty PdfRectangle. Tests whether all coordinate are zero. Gets or sets the x-coordinate of the first corner of this PdfRectangle. Gets or sets the y-coordinate of the first corner of this PdfRectangle. Gets or sets the x-coordinate of the second corner of this PdfRectangle. Gets or sets the y-coordinate of the second corner of this PdfRectangle. Gets X2 - X1. Gets Y2 - Y1. Gets or sets the coordinates of the first point of this PdfRectangle. Gets or sets the size of this PdfRectangle. Represents a direct real value. Base class for direct number values (not yet used, maybe superfluous). Initializes a new instance of the class. Initializes a new instance of the class. The value. Returns the real number as string. Writes the real value with up to three digits. Gets the value as double. Represents the pages of the document. Creates a new PdfPage, adds it to this document, and returns it. Adds the specified PdfPage to this document and maybe returns a new PdfPage object. The value returned is a new object if the added page comes from a foreign document. Creates a new PdfPage, inserts it at the specified position into this document, and returns it. Inserts the specified PdfPage at the specified position to this document and maybe returns a new PdfPage object. The value returned is a new object if the inserted page comes from a foreign document. Removes the specified page from the document. Removes the specified page from the document. Moves a page within the page sequence. The page index before this operation. The page index after this operation. Imports an external page. The elements of the imported page are cloned and added to this document. Important: In contrast to PdfFormXObject adding an external page always make a deep copy of their transitive closure. Any reuse of already imported objects is not intended because any modification of an imported page must not change another page. Helper function for ImportExternalPage. Replaces the page tree by a flat array of indirect references to the pages objects. Recursively converts the page tree into a flat array. Prepares the document for saving. Gets the enumerator. Gets the number of pages. Gets the page with the specified index. Gets a PdfArray containing all pages of this document. The array must not be modified. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Required) The type of PDF object that this dictionary describes; must be Pages for a page tree node. (Required except in root node; must be an indirect reference) The page tree node that is the immediate parent of this one. (Required) An array of indirect references to the immediate children of this node. The children may be page objects or other page tree nodes. (Required) The number of leaf nodes (page objects) that are descendants of this node within the page tree. Gets the KeysMeta for these keys. Specifies which operations are permitted when the document is opened with user access. Permits everything. This is the default value. Represents a writer for generation of PDF streams. Writes the specified value to the PDF stream. Writes the specified value to the PDF stream. Writes the specified value to the PDF stream. Writes the specified value to the PDF stream. Writes the specified value to the PDF stream. Writes the specified value to the PDF stream. Writes the specified value to the PDF stream. Writes the specified value to the PDF stream. Writes the specified value to the PDF stream. Writes the specified value to the PDF stream. Begins a direct or indirect dictionary or array. Ends a direct or indirect dictionary or array. Writes the stream of the specified dictionary. Increases indent level. Decreases indent level. Gets or sets the indentation for a new indentation level. Gets an indent string of current indent. Gets the underlying stream. Encapsulates the arguments of the PdfPasswordProvider delegate. Sets the password to open the document with. When set to true the PdfReader.Open function returns null indicating that no PdfDocument was created. A delegated used by the PdfReader.Open function to retrieve a password if the document is protected. Represents the functionality for reading PDF documents. Determines whether the file specified by its path is a PDF file by inspecting the first eight bytes of the data. If the file header has the form «%PDF-x.y» the function returns the version number as integer (e.g. 14 for PDF 1.4). If the file header is invalid or inaccessible for any reason, 0 is returned. The function never throws an exception. Determines whether the specified stream is a PDF file by inspecting the first eight bytes of the data. If the data begins with «%PDF-x.y» the function returns the version number as integer (e.g. 14 for PDF 1.4). If the data is invalid or inaccessible for any reason, 0 is returned. The function never throws an exception. Determines whether the specified data is a PDF file by inspecting the first eight bytes of the data. If the data begins with «%PDF-x.y» the function returns the version number as integer (e.g. 14 for PDF 1.4). If the data is invalid or inaccessible for any reason, 0 is returned. The function never throws an exception. Implements scanning the PDF file version. Opens an existing PDF document. Opens an existing PDF document. Opens an existing PDF document. Opens an existing PDF document. Opens an existing PDF document. Opens an existing PDF document. Opens an existing PDF document. Opens an existing PDF document. Opens an existing PDF document. Opens an existing PDF document. Opens an existing PDF document. An encoder for PDF DocEncoding. Converts WinAnsi to DocEncode characters. Incomplete, just maps € and some other characters. Implements the ASCII85Decode filter. Base class for all stream filters When implemented in a derived class encodes the specified data. Encodes a raw string. When implemented in a derived class decodes the specified data. Decodes the specified data. Decodes to a raw string. Decodes to a raw string. Removes all white spaces from the data. The function assumes that the bytes are characters. Encodes the specified data. Decodes the specified data. Only Symbol and Unicode is used by PDFsharp. CMap format 4: Segment mapping to delta values. The Windows standard format. This table defines the mapping of character codes to the glyph index values used in the font. It may contain more than one subtable, in order to support more than one character encoding scheme. Is true for symbol font encoding. Initializes a new instance of the class. This table gives global information about the font. The bounding box values should be computed using only glyphs that have contours. Glyphs with no contours should be ignored for the purposes of these calculations. This table contains information for horizontal layout. The values in the minRightSidebearing, minLeftSideBearing and xMaxExtent should be computed using only glyphs that have contours. Glyphs with no contours should be ignored for the purposes of these calculations. All reserved areas must be set to 0. The type longHorMetric is defined as an array where each element has two parts: the advance width, which is of type USHORT, and the left side bearing, which is of type SHORT. These fields are in font design units. The vertical metrics table allows you to specify the vertical spacing for each glyph in a vertical font. This table consists of either one or two arrays that contain metric information (the advance heights and top sidebearings) for the vertical layout of each of the glyphs in the font. This table establishes the memory requirements for this font. Fonts with CFF data must use Version 0.5 of this table, specifying only the numGlyphs field. Fonts with TrueType outlines must use Version 1.0 of this table, where all data is required. Both formats of OpenType require a 'maxp' table because a number of applications call the Windows GetFontData() API on the 'maxp' table to determine the number of glyphs in the font. The naming table allows multilingual strings to be associated with the OpenTypeTM font file. These strings can represent copyright notices, font names, family names, style names, and so on. To keep this table short, the font manufacturer may wish to make a limited set of entries in some small set of languages; later, the font can be "localized" and the strings translated or added. Other parts of the OpenType font file that require these strings can then refer to them simply by their index number. Clients that need a particular string can look it up by its platform ID, character encoding ID, language ID and name ID. Note that some platforms may require single byte character strings, while others may require double byte strings. For historical reasons, some applications which install fonts perform version control using Macintosh platform (platform ID 1) strings from the 'name' table. Because of this, we strongly recommend that the 'name' table of all fonts include Macintosh platform strings and that the syntax of the version number (name id 5) follows the guidelines given in this document. The OS/2 table consists of a set of metrics that are required in OpenType fonts. This table contains additional information needed to use TrueType or OpenTypeTM fonts on PostScript printers. This table contains a list of values that can be referenced by instructions. They can be used, among other things, to control characteristics for different glyphs. The length of the table must be an integral number of FWORD units. This table is similar to the CVT Program, except that it is only run once, when the font is first used. It is used only for FDEFs and IDEFs. Thus the CVT Program need not contain function definitions. However, the CVT Program may redefine existing FDEFs or IDEFs. The Control Value Program consists of a set of TrueType instructions that will be executed whenever the font or point size or transformation matrix change and before each glyph is interpreted. Any instruction is legal in the CVT Program but since no glyph is associated with it, instructions intended to move points within a particular glyph outline cannot be used in the CVT Program. The name 'prep' is anachronistic. This table contains information that describes the glyphs in the font in the TrueType outline format. Information regarding the rasterizer (scaler) refers to the TrueType rasterizer. Represents the internal state of an XGraphics object. Represents a RGB, CMYK, or gray scale color. Creates an XColor structure from a 32-bit ARGB value. Creates an XColor structure from a 32-bit ARGB value. Creates an XColor structure from the specified 8-bit color values (red, green, and blue). The alpha value is implicitly 255 (fully opaque). Creates an XColor structure from the four ARGB component (alpha, red, green, and blue) values. Creates an XColor structure from the specified System.Drawing.Color. Creates an XColor structure from the specified alpha value and color. Creates an XColor structure from the specified alpha value and color. Creates an XColor structure from the specified CMYK values. Creates an XColor structure from the specified CMYK values. Creates an XColor structure from the specified gray value. Creates an XColor from the specified pre-defined color. Creates an XColor from the specified pre-defined color. Creates an XColor from the specified name of a pre-defined color. Implicit conversion from Color to XColor Creates a System.Drawing.Color object from this color. Determines whether the specified object is a Color structure and is equivalent to this Color structure. Returns the hash code for this instance. Determines whether two colors are equal. Determines whether two colors are not equal. Gets the hue-saturation-brightness (HSB) hue value, in degrees, for this color. The hue, in degrees, of this color. The hue is measured in degrees, ranging from 0 through 360, in HSB color space. Gets the hue-saturation-brightness (HSB) saturation value for this color. The saturation of this color. The saturation ranges from 0 through 1, where 0 is grayscale and 1 is the most saturated. Gets the hue-saturation-brightness (HSB) brightness value for this color. The brightness of this color. The brightness ranges from 0 through 1, where 0 represents black and 1 represents white. One of the RGB values changed; recalculate other color representations. One of the CMYK values changed; recalculate other color representations. The gray scale value changed; recalculate other color representations. Represents the null color. Gets or sets the color space to be used for PDF generation. Indicates whether this XColor structure is uninitialized. Gets a value indicating whether this color is a known color. Gets or sets the alpha value the specifies the transparency. The value is in the range from 1 (opaque) to 0 (completely transparent). Gets or sets the red value. Gets or sets the green value. Gets or sets the blue value. Gets the RGB part value of the color. Internal helper function. Gets the ARGB part value of the color. Internal helper function. Gets or sets the cyan value. Gets or sets the magenta value. Gets or sets the yellow value. Gets or sets the black (or key) value. Gets or sets the gray scale value. Special property for XmlSerializer only. Specifies the available cap styles with which an XPen object can start and end a line. Specifies a flat line cap. Specifies a round line cap. Specifies a square line cap. Represents the radio button field. Initializes a new instance of PdfRadioButtonField. Gets or sets the index of the selected radio button in a radio button group. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. (Optional; inheritable; PDF 1.4) An array of text strings to be used in place of the V entries for the values of the widget annotations representing the individual radio buttons. Each element in the array represents the export value of the corresponding widget annotation in the Kids array of the radio button field. Gets the KeysMeta for these keys. A combo box control for selection XColor values. Initializes a new instance of the class. Keep control a drop down combo box. Sets the color with the selected item. Draw a color entry. Gets or sets the custom color. Represents a combo box item. Represents an Open Type Font font in memory. Shallow copy for font subset. Initializes a new instance of the class. Initializes a new instance of the class. Create the font image using GDI+ functionality. The dictionary of all font tables. Adds the specified table to this font image. Reads all required tables from the font data. Creates a new font image that is a subset of this font image containing only the specified glyphs. Compiles the font to its binary representation. Reads a System.Byte. Reads a System.Int16. Reads a System.UInt16. Reads a System.Int32. Reads a System.UInt32. Reads a System.Int32. Reads a System.Int16. Reads a System.UInt16. Reads a System.Int64. Reads a System.String with the specified size. Reads a System.Byte[] with the specified size. Reads the specified buffer. Reads the specified buffer. Reads a System.Char[4] as System.String. Gets the bytes that represents the font data. Represents the font offset table. 0x00010000 for version 1.0. Number of tables. (Maximum power of 2 ≤ numTables) x 16. Log2(maximum power of 2 ≤ numTables). NumTables x 16-searchRange. Writes the offset table. Specifies a physical font face that corresponds to a font file on the disk. Initializes a new instance of the class from the specified font file. Initializes a new instance of the class from the specified font bytes. Gets the English family name of the font. Gets a value indicating whether the font weight is bold. Gets a value indicating whether the font style is italic. This filter stream is used to decompress data compressed using the "deflate" format. The "deflate" format is described in RFC 1951. Author of the original java version: John Leuner. Decompressor for this stream Byte array used for buffering input. Size of buffer Base stream the inflater reads from. Flushes the baseInputStream Sets the position within the current stream Always throws a NotSupportedException Any access Set the length of the current stream Always throws a NotSupportedException Any access Writes a sequence of bytes to stream and advances the current position This method always throws a NotSupportedException Any access Writes one byte to the current stream and advances the current position Always throws a NotSupportedException Any access Entry point to begin an asynchronous write. Always throws a NotSupportedException. The buffer to write data from Offset of first byte to write The maximum number of bytes to write The method to be called when the asynchronous write operation is completed A user-provided object that distinguishes this particular asynchronous write request from other requests An IAsyncResult that references the asynchronous write Any access Create an InflaterInputStream with the default decompressor and a default buffer size of 4KB. The InputStream to read bytes from Create an InflaterInputStream with the specified decompressor and a default buffer size of 4KB. The source of input data The decompressor used to decompress data read from baseInputStream Create an InflaterInputStream with the specified decompressor and the specified buffer size. The InputStream to read bytes from The decompressor to use Size of the buffer to use Closes the input stream. When is true the underlying stream is also closed. Fill input buffer with a chunk of data. Fills the buffer with more data to decompress. Stream ends early Reads one byte of decompressed data. The byte is baseInputStream the lower 8 bits of the int. The byte read cast to an int, or -1 on end of stream. Decompresses data into the byte array The array to read and decompress data into The offset indicating where the data should be placed The number of bytes to decompress The number of bytes read. Zero signals the end of stream Inflater needs a dictionary Skip specified number of bytes of uncompressed data Number of bytes to skip The number of bytes skipped, zero if the end of stream has been reached Number of bytes to skip is zero or less A buffer used for decrypting data. Used to hold Zip crypto header. Decrypt a single byte plain text byte value Decrypt cipher text block, updating keys Data to decrypt Offset of first byte to process Number of bytes to process Initialise the decryption keys The password used to initialise the keys Update the decryption keys Character to update the keys with Clear any cryptographic state. Get/set flag indicating ownership of underlying stream. When the flag is true will close the underlying stream also. The default value is true. Gets a value indicating whether the current stream supports reading Gets a value of false indicating seeking is not supported for this stream. Gets a value of false indicating that this stream is not writeable. A value representing the length of the stream in bytes. The current position within the stream. Throws a NotSupportedException when attempting to set the position Attempting to set the position Returns 0 once the end of the stream (EOF) has been reached. Otherwise returns 1. Sets the size of chunks to read from the input stream 0 means as larger as possible. Used to handle decryption where the length of stream is unknown. Represents an indirect integer value. This type is not used by PDFsharp. If it is imported from an external PDF file, the value is converted into a direct object. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Returns the integer as string. Writes the integer literal. Gets the value as integer. Represents the PDF document information dictionary. Initializes a new instance of the class. Gets or sets the document's title. Gets or sets the name of the person who created the document. Gets or sets the name of the subject of the document. Gets or sets keywords associated with the document. Gets or sets the name of the application (for example, MigraDoc) that created the document. Gets the producer application (for example, PDFsharp). Gets or sets the creation date of the document. Gets or sets the modification date of the document. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Optional; PDF 1.1) The document’s title. (Optional) The name of the person who created the document. (Optional; PDF 1.1) The subject of the document. (Optional; PDF 1.1) Keywords associated with the document. (Optional) If the document was converted to PDF from another format, the name of the application (for example, empira MigraDoc) that created the original document from which it was converted. (Optional) If the document was converted to PDF from another format, the name of the application (for example, this library) that converted it to PDF. (Optional) The date and time the document was created, in human-readable form. (Required if PieceInfo is present in the document catalog; otherwise optional; PDF 1.1) The date and time the document was most recently modified, in human-readable form. (Optional; PDF 1.3) A name object indicating whether the document has been modified to include trapping information. Gets the KeysMeta for these keys. Represents a PDF document. Creates a new PDF document in memory. To open an existing PDF file, use the PdfReader class. Creates a new PDF document with the specified file name. The file is immediately created and keeps looked until the document is saved. To open an existing PDF file and import it, use the PdfReader class. Creates a new PDF document using the specified stream. To open an existing PDF file, use the PdfReader class. Disposes all references to this document stored in other documents. This function should be called for documents you finished importing pages from. Calling Dispose is technically not necessary but useful for earlier reclaiming memory of documents you do not need anymore. Get a new default name for a new document. Closes this instance. Saves the document to the specified path. If a file already exists, it will be overwritten. Saves the document to the specified stream. Saves the document to the specified stream and closes the stream. Implements saving a PDF file. Dispatches PrepareForSave to the objects that need it. Determines whether the document can be saved. Creates a new page and adds it to this document. Adds the specified page to this document. If the page is from an external document, it is imported to this document. In this case the returned page is not the same object as the specified one. Creates a new page and inserts it in this document at the specified position. Inserts the specified page in this document. If the page is from an external document, it is imported to this document. In this case the returned page is not the same object as the specified one. Occurs when the specified document is not used anymore for importing content. Gets or sets a user defined object that contains arbitrary information associated with this document. The tag is not used by PDFsharp. Gets or sets a value used to distinguish PdfDocument objects. The name is not used by PDFsharp. Gets the document options used for saving the document. Gets PDF specific document settings. NYI Indicates whether large objects are written immediately to the output stream to relieve memory consumption. Gets or sets the PDF version number. Return value 14 e.g. means PDF 1.4 / Acrobat 5 etc. Gets the number of pages in the document. Gets the file size of the document. Gets the full qualified file name if the document was read form a file, or an empty string otherwise. Gets a Guid that uniquely identifies this instance of PdfDocument. Returns a value indicating whether the document was newly created or opened from an existing document. Returns true if the document was opened with the PdfReader.Open function, false otherwise. Returns a value indicating whether the document is read only or can be modified. Gets information about the document. This function is intended to be undocumented. Get the pages dictionary. Gets or sets a value specifying the page layout to be used when the document is opened. Gets or sets a value specifying how the document should be displayed when opened. Gets the viewer preferences of this document. Gets the root of the outline (or bookmark) tree. Get the AcroForm dictionary. Gets or sets the default language of the document. Gets the security settings of this document. Gets the document font table that holds all fonts used in the current document. Gets the document image table that holds all images used in the current document. Gets the document form table that holds all form external objects used in the current document. Gets the document ExtGState table that holds all form state objects used in the current document. Gets the PdfCatalog of the current document. Gets the PdfInternals object of this document, that grants access to some internal structures which are not part of the public interface of PdfDocument. Gets the security handler. Gets the ThreadLocalStorage object. It is used for caching objects that should created only once. Provides a thread-local cache for large objects. Array of handles to all documents. Represents an extended graphics state object. Initializes a new instance of the class. The document. ...for shading patterns Sets the alpha value for stroking operations. Sets the alpha value for nonstroking operations. Sets a soft mask object. Gets the KeysMeta of this dictionary type. Common keys for all streams. (Optional) The type of PDF object that this dictionary describes; must be ExtGState for a graphics state parameter dictionary. (Optional; PDF 1.3) The line width (see “Line Width” on page 185). (Optional; PDF 1.3) The line cap style. (Optional; PDF 1.3) The line join style. (Optional; PDF 1.3) The miter limit. (Optional; PDF 1.3) The line dash pattern, expressed as an array of the form [dashArray dashPhase], where dashArray is itself an array and dashPhase is an integer. (Optional; PDF 1.3) The name of the rendering intent. (Optional) A flag specifying whether to apply overprint. In PDF 1.2 and earlier, there is a single overprint parameter that applies to all painting operations. Beginning with PDF 1.3, there are two separate overprint parameters: one for stroking and one for all other painting operations. Specifying an OP entry sets both parameters unless there is also an op entry in the same graphics state parameter dictionary, in which case the OP entry sets only the overprint parameter for stroking. (Optional; PDF 1.3) A flag specifying whether to apply overprint for painting operations other than stroking. If this entry is absent, the OP entry, if any, sets this parameter. (Optional; PDF 1.3) The overprint mode. (Optional; PDF 1.3) An array of the form [font size], where font is an indirect reference to a font dictionary and size is a number expressed in text space units. These two objects correspond to the operands of the Tf operator; however, the first operand is an indirect object reference instead of a resource name. (Optional) The black-generation function, which maps the interval [0.0 1.0] to the interval [0.0 1.0]. (Optional; PDF 1.3) Same as BG except that the value may also be the name Default, denoting the black-generation function that was in effect at the start of the page. If both BG and BG2 are present in the same graphics state parameter dictionary, BG2 takes precedence. (Optional) The undercolor-removal function, which maps the interval [0.0 1.0] to the interval [-1.0 1.0]. (Optional; PDF 1.3) Same as UCR except that the value may also be the name Default, denoting the undercolor-removal function that was in effect at the start of the page. If both UCR and UCR2 are present in the same graphics state parameter dictionary, UCR2 takes precedence. (Optional) A flag specifying whether to apply automatic stroke adjustment. (Optional; PDF 1.4) The current blend mode to be used in the transparent imaging model. (Optional; PDF 1.4) The current soft mask, specifying the mask shape or mask opacity values to be used in the transparent imaging model. (Optional; PDF 1.4) The current stroking alpha constant, specifying the constant shape or constant opacity value to be used for stroking operations in the transparent imaging model. (Optional; PDF 1.4) Same as CA, but for nonstroking operations. (Optional; PDF 1.4) The alpha source flag (“alpha is shape”), specifying whether the current soft mask and alpha constant are to be interpreted as shape values (true) or opacity values (false). (Optional; PDF 1.4) The text knockout flag, which determines the behavior of overlapping glyphs within a text object in the transparent imaging model. Gets the KeysMeta for these keys. Helper class that determines the characters used in a particular font. Adds the characters of the specified string to the hashtable. Adds the glyphIndices to the hashtable. Adds a ANSI characters. Not used in this implementation. The default value. Represents the text layout information. Initializes a new instance of the class. Gets or sets horizontal text alignment information. Gets or sets the line alignment. Gets a new XStringFormat object that aligns the text left on the base line. Gets a new XStringFormat object that aligns the text top left of the layout rectangle. Gets a new XStringFormat object that centers the text in the middle of the layout rectangle. Gets a new XStringFormat object that centers the text at the top of the layout rectangle. Gets a new XStringFormat object that centers the text at the bottom of the layout rectangle. Gets or sets flags with format information. Represents the internal state of an XGraphics object. Brushes for all the pre-defined colors. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Gets a pre-defined XBrush object. Specifies details about how the font is used in PDF creation. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. If set to true the font is embedded. If set to true Unicode encoding is used. Not yet implemented. Should be "". Not yet implemented. Should be "". Initializes a new instance of the class. If set to true Unicode encoding is used. User supplied font data. Initializes a new instance of the class. If set to true the font is embedded. Not yet implemented. Should be "". Initializes a new instance of the class. If set to true the font is embedded. If set to true Unicode encoding is used. Initializes a new instance of the class. If set to true the font is embedded. Initializes a new instance of the class. Indicates how font is embedded. If set to true Unicode encoding is used. Gets a value indicating whether the gets embedded in the PDF file. Gets a value indicating the font embedding. Gets a value indicating whether the font is encoded as Unicode. Gets a value indicating how the font is encoded. Not yet implemented. Not yet implemented. Gets the font image. Currently not used. Only DeviceRGB is rendered in PDF. Identifies the RGB color space. Identifies the CMYK color space. Identifies the gray scale color space. Exception thrown by ContentReader. Initializes a new instance of the class. Initializes a new instance of the class. The message. Initializes a new instance of the class. The message. The inner exception. Represents the push button field. Initializes a new instance of PdfPushButtonField. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. Converter from to . Converts the specified page size enumeration to a pair of values in point. Specifies how text strings are encoded. A text string is any text used outside of a page content stream, e.g. document information, outline text, annotation text etc. Specifies that hypertext uses PDF DocEncoding. Specifies that hypertext uses unicode encoding. Represents a direct integer value. Initializes a new instance of the class. Initializes a new instance of the class. The value. Returns the integer as string. Writes the integer as string. Returns TypeCode for 32-bit integers. Gets the value as integer Holds information how to handle the document when it is saved as PDF stream. Gets or sets the color mode. Gets or sets a value indicating whether to compress content streams of PDF pages. Gets or sets a value indicating that all objects are not compressed. Specifies the type of a key's value in a dictionary. Summary description for KeyInfo. Represents trim margins added to the page. Sets all four crop margins simultaneously. Gets or sets the left crop margin. Gets or sets the right crop margin. Gets or sets the top crop margin. Gets or sets the bottom crop margin. Gets a value indicating whether this instance has at least one margin with a value other than zero. Represents the base of all security handlers. Predefined keys of this dictionary. (Required) The name of the preferred security handler for this document. Typically, it is the name of the security handler that was used to encrypt the document. If SubFilter is not present, only this security handler should be used when opening the document. If it is present, consumer applications can use any security handler that implements the format specified by SubFilter. Standard is the name of the built-in password-based security handler. Names for other security handlers can be registered by using the procedure described in Appendix E. (Optional; PDF 1.3) A name that completely specifies the format and interpretation of the contents of the encryption dictionary. It is needed to allow security handlers other than the one specified by Filter to decrypt the document. If this entry is absent, other security handlers should not be allowed to decrypt the document. (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. 1 Algorithm 3.1, with an encryption key length of 40 bits. 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. 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. The default value if this entry is omitted is 0, but a value of 1 or greater is strongly recommended. (Optional; PDF 1.4; only if V is 2 or 3) The length of the encryption key, in bits. The value must be a multiple of 8, in the range 40 to 128. Default value: 40. (Optional; meaningful only when the value of V is 4; PDF 1.5) A dictionary whose keys are crypt filter names and whose values are the corresponding crypt filter dictionaries. Every crypt filter used in the document must have an entry in this dictionary, except for the standard crypt filter names. (Optional; meaningful only when the value of V is 4; PDF 1.5) 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. All streams in the document, except for cross-reference streams or streams that have a Crypt entry in their Filter array, are decrypted by the security handler, using this crypt filter. Default value: Identity. (Optional; meaningful only when the value of V is 4; PDF 1.) 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. Default value: Identity. (Optional; meaningful only when the value of V is 4; PDF 1.6) 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. This entry is provided by the security handler. 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. Specifies the security level of the PDF document. Document is not protected. Document is protected with 40-bit security. This option is for compatibility with Acrobat 3 and 4 only. Use Encrypted128Bit whenever possible. Document is protected with 128-bit security. Provides the functions to parse PDF documents. Sets PDF input stream position to the specified object. Reads PDF object from input stream. Either the instance of a derived type or null. If it is null an appropriate object is created. The address of the object. If true, specifies that all indirect objects are included recursively. Parses whatever comes until the specified stop symbol is reached. Reads the object ID and the generation and sets it into the specified object. Reads the next symbol that must be the specified one. Reads the next token that must be the specified one. Reads a name from the PDF data stream. The preceding slash is part of the result string. Reads an integer value directly from the PDF data stream. Reads an object from the PDF input stream using the default parser. Reads the iref table and the trailer dictionary. Parses a PDF date string. Provides a thread-local cache for large objects. Maps path to document handle. An encoder for Unicode strings. Implements the LzwDecode filter. Throws a NotImplementedException because the obsolete LZW encoding is not supported by PDFsharp. Decodes the specified data. Initialize the dictionary. Add a new entry to the Dictionary. Returns the next set of bits. Represents a writer for generation of PDF streams. Writes the specified value to the PDF stream. Increases indent level. Decreases indent level. Gets or sets the indentation for a new indentation level. Gets an indent string of current indent. Gets the underlying stream. Represents a generic annotation. Used for annotation dictionaries unknown to PDFsharp. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. Represents a preview control for an XGraphics page. Can be used as an alternative to System.Windows.Forms.PrintPreviewControl. Initializes a new instance of the class. Clean up any resources being used. Sets a delagate that is invoked when the preview wants to be painted. Required method for Designer support - do not modify the contents of this method with the code editor. Raises the ZoomChanged event when the zoom factor changed. Paints the background with the sheet of paper. Recalculates the preview dimension. Invalidates the canvas. Layouts the child controls. Calculates all values for drawing the page preview. Paints the background and the empty page. Check clipping rectangle calculations. Adjusts scroll bars. Upper left corner of scroll area. Real page size in point. Page in pixel relative to virtual canvas. The size in pixel of an area that completely contains the virtual page and at leat a small border around it. If this area is larger than the canvas window, it is scrolled. Printable area in point. Gets or sets the border style of the control. Gets or sets a predefined zoom factor. Gets or sets an arbitrary zoom factor. The range is from 10 to 800. Gets or sets the color of the page. Gets or sets the color of the desktop. Gets or sets a value indicating whether the scrollbars are visilbe. Gets or sets a value indicating whether the page is visilbe. Gets or sets the page size in point. This is a hack for Visual Studio 2008. The designer uses reflection for setting the PageSize property. This fails, even an implicit operator that converts Size to XSize exits. Occurs when the zoom factor changed. A delegate for invoking the render function. Specifies the order for matrix transform operations. The new operation is applied before the old operation. The new operation is applied after the old operation. Specifies the direction of a linear gradient. Specifies a gradient from left to right. Specifies a gradient from top to bottom. Specifies a gradient from upper left to lower right. Specifies a gradient from upper right to lower left. Implementation of the Code 2 of 5 bar code. Initializes a new instance of Interleaved2of5. Initializes a new instance of Interleaved2of5. Initializes a new instance of Interleaved2of5. Initializes a new instance of Interleaved2of5. Returns an array of size 5 that represents the thick (true) and thin (false) lines or spaces representing the specified digit. The digit to represent. Renders the bar code. Calculates the thick and thin line widths, taking into account the required rendering size. Renders the next digit pair as bar code element. Checks the code to be convertible into an interleaved 2 of 5 bar code. The code to be checked. Represents an OMR code. initializes a new OmrCode with the given data. Renders the OMR code. Determines whether the specified string can be used as Text for the OMR code. Gets or sets a value indicating whether a synchronize mark is rendered. Gets or sets the distance of the markers. Gets or sets the thickness of the makers. Defines the DataMatrix 2D barcode. THIS IS AN EMPIRA INTERNAL IMPLEMENTATION. THE CODE IN THE OPEN SOURCE VERSION IS A FAKE. Represents the base class of all 2D codes. Initializes a new instance of the class. When implemented in a derived class renders the 2D code. Determines whether the specified string can be used as Text for this matrix code type. Gets or sets the encoding. docDaSt docDaSt docDaSt docDaSt Initializes a new instance of CodeDataMatrix. Initializes a new instance of CodeDataMatrix. Initializes a new instance of CodeDataMatrix. Initializes a new instance of CodeDataMatrix. Initializes a new instance of CodeDataMatrix. Initializes a new instance of CodeDataMatrix. Initializes a new instance of CodeDataMatrix. Initializes a new instance of CodeDataMatrix. Initializes a new instance of CodeDataMatrix. Sets the encoding of the DataMatrix. Renders the matrix code. Determines whether the specified string can be used as data in the DataMatrix. The code to be checked. Gets or sets the size of the Matrix' Quiet Zone. Provides the functionality to parse PDF content streams. Parses whatever comes until the specified stop symbol is reached. Reads the next symbol that must be the specified one. Represents the functionality for reading PDF content streams. Reads the content stream(s) of the specified page. The page. Reads the specified content. The content. Represents a PDF group XObject. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Optional) The type of PDF object that this dictionary describes; if present, must be Group for a group attributes dictionary. (Required) The group subtype, which identifies the type of group whose attributes this dictionary describes and determines the format and meaning of the dictionary’s remaining entries. The only group subtype defined in PDF 1.4 is Transparency. Other group subtypes may be added in the future. Gets the KeysMeta for these keys. Represents the text field. Initializes a new instance of PdfTextField. Creates the normal appearance form X object for the annotation that represents this acro form text field. Gets or sets the text value of the text field. Gets or sets the font used to draw the text of the field. Gets or sets the foreground color of the field. Gets or sets the background color of the field. Gets or sets the maximum length of the field. The length of the max. Gets or sets a value indicating whether the field has multiple lines. Gets or sets a value indicating whether this field is used for passwords. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. (Optional; inheritable) The maximum length of the field’s text, in characters. Gets the KeysMeta for these keys. The indexToLoc table stores the offsets to the locations of the glyphs in the font, relative to the beginning of the glyphData table. In order to compute the length of the last glyph element, there is an extra entry after the last valid index. Converts the bytes in a handy representation Prepares the font table to be compiled into its binary representation. Converts the font into its binary representation. Defines the density of a typeface, in terms of the lightness or heaviness of the strokes. Compares the specified font weights. Implements the operator <. Implements the operator <=. Implements the operator >. Implements the operator >=. Implements the operator ==. Implements the operator !=. Determines whether the specified is equal to the current . Determines whether the specified is equal to the current . Serves as a hash function for this type. Returns a that represents the current . Gets the weight of the font, a value between 1 and 999. NYI. Reserved for future extensions of PDFsharp. Identifies the most popular predefined page sizes. The width or height of the page are set manually and override the PageSize property. Identifies a paper sheet size of 841 mm times 1189 mm or 33.11 inch times 46.81 inch. Identifies a paper sheet size of 594 mm times 841 mm or 23.39 inch times 33.1 inch. Identifies a paper sheet size of 420 mm times 594 mm or 16.54 inch times 23.29 inch. Identifies a paper sheet size of 297 mm times 420 mm or 11.69 inch times 16.54 inch. Identifies a paper sheet size of 210 mm times 297 mm or 8.27 inch times 11.69 inch. Identifies a paper sheet size of 148 mm times 210 mm or 5.83 inch times 8.27 inch. Identifies a paper sheet size of 860 mm times 1220 mm. Identifies a paper sheet size of 610 mm times 860 mm. Identifies a paper sheet size of 430 mm times 610 mm. Identifies a paper sheet size of 305 mm times 430 mm. Identifies a paper sheet size of 215 mm times 305 mm. Identifies a paper sheet size of 153 mm times 215 mm. Identifies a paper sheet size of 1000 mm times 1414 mm or 39.37 inch times 55.67 inch. Identifies a paper sheet size of 707 mm times 1000 mm or 27.83 inch times 39.37 inch. Identifies a paper sheet size of 500 mm times 707 mm or 19.68 inch times 27.83 inch. Identifies a paper sheet size of 353 mm times 500 mm or 13.90 inch times 19.68 inch. Identifies a paper sheet size of 250 mm times 353 mm or 9.84 inch times 13.90 inch. Identifies a paper sheet size of 176 mm times 250 mm or 6.93 inch times 9.84 inch. Identifies a paper sheet size of 10 inch times 8 inch or 254 mm times 203 mm. Identifies a paper sheet size of 13 inch times 8 inch or 330 mm times 203 mm. Identifies a paper sheet size of 10.5 inch times 7.25 inch or 267 mm times 184 mm. Identifies a paper sheet size of 10.5 inch times 8 inch 267 mm times 203 mm. Identifies a paper sheet size of 11 inch times 8.5 inch 279 mm times 216 mm. Identifies a paper sheet size of 14 inch times 8.5 inch 356 mm times 216 mm. Identifies a paper sheet size of 17 inch times 11 inch or 432 mm times 279 mm. Identifies a paper sheet size of 17 inch times 11 inch or 432 mm times 279 mm. Identifies a paper sheet size of 19.25 inch times 15.5 inch 489 mm times 394 mm. 20 ×Identifies a paper sheet size of 20 inch times 15 inch or 508 mm times 381 mm. Identifies a paper sheet size of 21 inch times 16.5 inch 533 mm times 419 mm. Identifies a paper sheet size of 22.5 inch times 17.5 inch 572 mm times 445 mm. Identifies a paper sheet size of 23 inch times 18 inch or 584 mm times 457 mm. Identifies a paper sheet size of 25 inch times 20 inch or 635 mm times 508 mm. Identifies a paper sheet size of 28 inch times 23 inch or 711 mm times 584 mm. Identifies a paper sheet size of 35 inch times 23.5 inch or 889 mm times 597 mm. Identifies a paper sheet size of 45 inch times 35 inch 1143 times 889 mm. Identifies a paper sheet size of 8.5 inch times 5.5 inch or 216 mm times 396 mm. Identifies a paper sheet size of 8.5 inch times 13 inch or 216 mm times 330 mm. Identifies a paper sheet size of 5.5 inch times 8.5 inch or 396 mm times 216 mm. Identifies a paper sheet size of 10 inch times 14 inch. Represents a PDF name value. Initializes a new instance of the class. Initializes a new instance of the class. Determines whether the specified object is equal to this name. Returns the hash code for this instance. Returns the name. The string always begins with a slash. Determines whether the specified name and string are equal. Determines whether the specified name and string are not equal. Represents the empty name. Writes the name including the leading slash. Gets the name as a string. Gets the comparer for this type. Implements a comparer that compares PdfName objects. Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other. The first object to compare. The second object to compare. Represents a direct date value. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Returns the value in the PDF date format. Writes the value in the PDF date format. Gets the value as DateTime. Specifies the annotation flags. If set, do not display the annotation if it does not belong to one of the standard annotation types and no annotation handler is available. If clear, display such an unknown annotation using an appearance stream specified by its appearancedictionary, if any. (PDF 1.2) If set, do not display or print the annotation or allow it to interact with the user, regardless of its annotation type or whether an annotation handler is available. In cases where screen space is limited, the ability to hide and show annotations selectively can be used in combination with appearance streams to display auxiliary pop-up information similar in function to online help systems. (PDF 1.2) If set, print the annotation when the page is printed. If clear, never print the annotation, regardless of whether it is displayed on the screen. This can be useful, for example, for annotations representing interactive pushbuttons, which would serve no meaningful purpose on the printed page. (PDF 1.3) If set, do not scale the annotation’s appearance to match the magnification of the page. The location of the annotation on the page (defined by the upper-left corner of its annotation rectangle) remains fixed, regardless of the page magnification. See below for further discussion. (PDF 1.3) If set, do not rotate the annotation’s appearance to match the rotation of the page. The upper-left corner of the annotation rectangle remains in a fixed location on the page, regardless of the page rotation. See below for further discussion. (PDF 1.3) If set, do not display the annotation on the screen or allow it to interact with the user. The annotation may be printed (depending on the setting of the Print flag) but should be considered hidden for purposes of on-screen display and user interaction. (PDF 1.3) If set, do not allow the annotation to interact with the user. The annotation may be displayed or printed (depending on the settings of the NoView and Print flags) but should not respond to mouse clicks or change its appearance in response to mouse motions. Note: This flag is ignored for widget annotations; its function is subsumed by the ReadOnly flag of the associated form field. (PDF 1.4) If set, do not allow the annotation to be deleted or its properties (including position and size) to be modified by the user. However, this flag does not restrict changes to the annotation’s contents, such as the value of a form field. (PDF 1.5) If set, invert the interpretation of the NoView flag for certain events. A typical use is to have an annotation that appears only when a mouse cursor is held over it. Defines a Brush with a linear gradient. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Translates the brush with the specified offset. Translates the brush with the specified offset. Scales the brush with the specified scalars. Scales the brush with the specified scalars. Rotates the brush with the specified angle. Rotates the brush with the specified angle. Multiply the brush transformation matrix with the specified matrix. Multiply the brush transformation matrix with the specified matrix. Resets the brush transformation matrix with identity matrix. Gets or sets an XMatrix that defines a local geometric transform for this LinearGradientBrush. Defines a group of type faces having a similar basic design and certain variations in styles. Initializes a new instance of the class. The family name of a font. Returns the cell ascent, in design units, of the XFontFamily object of the specified style. Returns the cell descent, in design units, of the XFontFamily object of the specified style. Gets the height, in font design units, of the em square for the specified style. Returns the line spacing, in design units, of the FontFamily object of the specified style. The line spacing is the vertical distance between the base lines of two consecutive lines of text. Indicates whether the specified FontStyle enumeration is available. Returns an array that contains all the FontFamily objects available for the specified graphics context. GDI+ object. Gets the name of the font family. Returns an array that contains all the FontFamily objects associated with the current graphics context. Specifies all pre-defined colors. Used to identify the pre-defined colors and to localize their names. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. A pre-defined color. docDaSt docDaSt docDaSt docDaSt docDaSt docDaSt docDaSt Represents a tiling pattern dictionary. Initializes a new instance of the class. Gets the KeysMeta of this dictionary type. Common keys for all streams. (Optional) The type of PDF object that this dictionary describes; if present, must be Pattern for a pattern dictionary. (Required) A code identifying the type of pattern that this dictionary describes; must be 1 for a tiling pattern. (Required) A code that determines how the color of the pattern cell is to be specified: 1: Colored tiling pattern. The pattern’s content stream specifies the colors used to paint the pattern cell. When the content stream begins execution, the current color is the one that was initially in effect in the pattern’s parent content stream. 2: Uncolored tiling pattern. The pattern’s content stream does not specify any color information. Instead, the entire pattern cell is painted with a separately specified color each time the pattern is used. Essentially, the content stream describes a stencil through which the current color is to be poured. The content stream must not invoke operators that specify colors or other color-related parameters in the graphics state; otherwise, an error occurs. The content stream may paint an image mask, however, since it does not specify any color information. (Required) A code that controls adjustments to the spacing of tiles relative to the device pixel grid: 1: Constant spacing. Pattern cells are spaced consistently—that is, by a multiple of a device pixel. To achieve this, the application may need to distort the pattern cell slightly by making small adjustments to XStep, YStep, and the transformation matrix. The amount of distortion does not exceed 1 device pixel. 2: No distortion. The pattern cell is not distorted, but the spacing between pattern cells may vary by as much as 1 device pixel, both horizontally and vertically, when the pattern is painted. This achieves the spacing requested by XStep and YStep on average but not necessarily for each individual pattern cell. 3: Constant spacing and faster tiling. Pattern cells are spaced consistently as in tiling type 1 but with additional distortion permitted to enable a more efficient implementation. (Required) An array of four numbers in the pattern coordinate system giving the coordinates of the left, bottom, right, and top edges, respectively, of the pattern cell’s bounding box. These boundaries are used to clip the pattern cell. (Required) The desired horizontal spacing between pattern cells, measured in the pattern coordinate system. (Required) The desired vertical spacing between pattern cells, measured in the pattern coordinate system. Note that XStep and YStep may differ from the dimensions of the pattern cell implied by the BBox entry. This allows tiling with irregularly shaped figures. XStep and YStep may be either positive or negative but not zero. (Required) A resource dictionary containing all of the named resources required by the pattern’s content stream (see Section 3.7.2, “Resource Dictionaries”). (Optional) An array of six numbers specifying the pattern matrix. Default value: the identity matrix [1 0 0 1 0 0]. Gets the KeysMeta for these keys. Represents the list box field. Represents the base class for all choice field dictionaries. Initializes a new instance of the class. Initializes a new instance of the class. Gets the index of the specified string in the /Opt array or -1, if no such string exists. Gets the value from the index in the /Opt array. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. (Required; inheritable) An array of options to be presented to the user. Each element of the array is either a text string representing one of the available options or a two-element array consisting of a text string together with a default appearance string for constructing the item’s appearance dynamically at viewing time. (Optional; inheritable) For scrollable list boxes, the top index (the index in the Opt array of the first option visible in the list). (Sometimes required, otherwise optional; inheritable; PDF 1.4) For choice fields that allow multiple selection (MultiSelect flag set), an array of integers, sorted in ascending order, representing the zero-based indices in the Opt array of the currently selected option items. This entry is required when two or more elements in the Opt array have different names but the same export value, or when the value of the choice field is an array; in other cases, it is permitted but not required. If the items identified by this entry differ from those in the V entry of the field dictionary (see below), the V entry takes precedence. Gets the KeysMeta for these keys. Initializes a new instance of PdfListBoxField. Gets or sets the index of the selected item Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. SharpZipBaseException is the base exception class for the SharpZipLibrary. All library exceptions are derived from this. Initializes a new instance of the SharpZipLibraryException class. Initializes a new instance of the SharpZipLibraryException class with a specified error message. Initializes a new instance of the SharpZipLibraryException class with a specified error message and a reference to the inner exception that is the cause of this exception. Error message string The inner exception Determines the type of the password. Password is neither user nor owner password. Password is user password. Password is owner password. Represents a shading dictionary. Initializes a new instance of the class. Setups the shading from the specified brush. Gets the KeysMeta of this dictionary type. Common keys for all streams. (Required) The shading type: 1 Function-based shading 2 Axial shading 3 Radial shading 4 Free-form Gouraud-shaded triangle mesh 5 Lattice-form Gouraud-shaded triangle mesh 6 Coons patch mesh 7 Tensor-product patch mesh (Required) The color space in which color values are expressed. This may be any device, CIE-based, or special color space except a Pattern space. (Optional) An array of color components appropriate to the color space, specifying a single background color value. If present, this color is used, before any painting operation involving the shading, to fill those portions of the area to be painted that lie outside the bounds of the shading object. In the opaque imaging model, the effect is as if the painting operation were performed twice: first with the background color and then with the shading. (Optional) An array of four numbers giving the left, bottom, right, and top coordinates, respectively, of the shading’s bounding box. The coordinates are interpreted in the shading’s target coordinate space. If present, this bounding box is applied as a temporary clipping boundary when the shading is painted, in addition to the current clipping path and any other clipping boundaries in effect at that time. (Optional) A flag indicating whether to filter the shading function to prevent aliasing artifacts. The shading operators sample shading functions at a rate determined by the resolution of the output device. Aliasing can occur if the function is not smooth—that is, if it has a high spatial frequency relative to the sampling rate. Anti-aliasing can be computationally expensive and is usually unnecessary, since most shading functions are smooth enough or are sampled at a high enough frequency to avoid aliasing effects. Anti-aliasing may not be implemented on some output devices, in which case this flag is ignored. Default value: false. (Required) An array of four numbers [x0 y0 x1 y1] specifying the starting and ending coordinates of the axis, expressed in the shading’s target coordinate space. (Optional) An array of two numbers [t0 t1] specifying the limiting values of a parametric variable t. The variable is considered to vary linearly between these two values as the color gradient varies between the starting and ending points of the axis. The variable t becomes the input argument to the color function(s). Default value: [0.0 1.0]. (Required) A 1-in, n-out function or an array of n 1-in, 1-out functions (where n is the number of color components in the shading dictionary’s color space). The function(s) are called with values of the parametric variable t in the domain defined by the Domain entry. Each function’s domain must be a superset of that of the shading dictionary. If the value returned by the function for a given color component is out of range, it is adjusted to the nearest valid value. (Optional) An array of two boolean values specifying whether to extend the shading beyond the starting and ending points of the axis, respectively. Default value: [false false]. Gets the KeysMeta for these keys. Represents a two-dimensional vector specified by x- and y-coordinates. Makes fonts that are not installed on the system available within the current application domain. Initializes a new instance of the class. Disposes all fonts from the collection. Sets a new global font collection and returns the previous one, or null if no previous one exists. Adds the font data to the font collections. HACK: to be removed. Adds a font from the specified file to this collection. Adds a font from memory to this collection. Gets the global font collection. Generate a table for a byte-wise 32-bit CRC calculation on the polynomial: x^32+x^26+x^23+x^22+x^16+x^12+x^11+x^10+x^8+x^7+x^5+x^4+x^2+x+1. Polynomials over GF(2) are represented in binary, one bit per coefficient, with the lowest powers in the most significant bit. Then adding polynomials is just exclusive-or, and multiplying a polynomial by x is a right shift by one. If we call the above polynomial p, and represent a byte as the polynomial q, also with the lowest power in the most significant bit (so the byte 0xb1 is the polynomial x^7+x^3+x+1), then the CRC is (q*x^32) mod p, where a mod b means the remainder after dividing a by b. This calculation is done using the shift-register method of multiplying and taking the remainder. The register is initialized to zero, and for each incoming bit, x^32 is added mod p to the register if the bit is a one (where x^32 mod p is p+x^32 = x^26+...+1), and the register is multiplied mod p by x (which is shifting right by one and adding x^32 mod p if the bit shifted out is a one). We start with the highest power (least significant bit) of q and repeat for all eight bits of q. The table is simply the CRC of all possible eight bit values. This is all the information needed to generate CRC's on data a byte at a time for all combinations of CRC register values and incoming bytes. The crc data checksum so far. Resets the CRC32 data checksum as if no update was ever called. Updates the checksum with the int bval. the byte is taken as the lower 8 bits of bval Updates the checksum with the bytes taken from the array. buffer an array of bytes Adds the byte array to the data checksum. the buffer which contains the data the offset in the buffer where the data starts the length of the data Returns the CRC32 data checksum computed so far. Specifies the embedding options of an XFont when converted into PDF. Unicode fonts are embedded, WinAnsi fonts are not embedded. Fonts are not embedded. All fonts are embedded. Not yet implemented. Represents a direct unsigned integer value. Initializes a new instance of the class. Initializes a new instance of the class. Returns the unsigned integer as string. Writes the integer as string. Converts the value of this instance to an equivalent 64-bit unsigned integer. Converts the value of this instance to an equivalent 8-bit signed integer. Converts the value of this instance to an equivalent double-precision floating-point number. Returns an undefined DateTime structure. Converts the value of this instance to an equivalent single-precision floating-point number. Converts the value of this instance to an equivalent Boolean value. Converts the value of this instance to an equivalent 32-bit signed integer. Converts the value of this instance to an equivalent 16-bit unsigned integer. Converts the value of this instance to an equivalent 16-bit signed integer. Converts the value of this instance to an equivalent . Converts the value of this instance to an equivalent 8-bit unsigned integer. Converts the value of this instance to an equivalent Unicode character. Converts the value of this instance to an equivalent 64-bit signed integer. Returns type code for 32-bit integers. Converts the value of this instance to an equivalent number. Returns null. Converts the value of this instance to an equivalent 32-bit unsigned integer. Gets the value as integer. Specifies the font style for the outline (bookmark) text. Regular font. Italic font. Bold font. Bold and italic font. Lexical analyzer for PDF files. Technically a PDF file is a stream of bytes. Some chunks of bytes represent strings in several encodings. The actual encoding depends on the context where the string is used. Therefore the bytes are 'raw encoded' into characters, i.e. a character or token read by the lexer has always character values in the range from 0 to 255. Initializes a new instance of the Lexer class. Initializes fields after position has changed. Reads the next token and returns its type. If the token starts with a digit, the parameter testReference specifies how to treat it. If it is false, the lexer scans for a single integer. If it is true, the lexer checks if the digit is the prefix of a reference. If it is a reference, the token is set to the object ID followed by the generation number separated by a blank (the 'R' is omitted from the token). Reads the raw content of a stream. Scans a comment line. Scans a name. Move current position one character further in PDF stream. Resets the current token to the empty string. Appends current character to the token and reads next one. If the current character is not a white space, the function immediately returns it. Otherwise the PDF cursor is moved forward to the first non-white space or EOF. White spaces are NUL, HT, LF, FF, CR, and SP. Indicates whether the specified character is a PDF white-space character. Indicates whether the specified character is a PDF delimiter character. Gets or sets the position within the PDF stream. Gets the current symbol. Gets the current token. Interprets current token as boolean literal. Interprets current token as integer literal. Interprets current token as unsigned integer literal. Interpret current token as real or integer literal. Character table by name. Specifies the pre-defined icon names of text annotations. A pre-defined annotation icon. A pre-defined annotation icon. A pre-defined annotation icon. A pre-defined annotation icon. A pre-defined annotation icon. A pre-defined annotation icon. A pre-defined annotation icon. A pre-defined annotation icon. Defines an object used to draw lines and curves. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. Clones this instance. Implicit conversion from Pen to XPen Gets or sets the color. Gets or sets the width. Gets or sets the line join. Gets or sets the line cap. Gets or sets the miter limit. Gets or sets the dash style. Gets or sets the dash offset. Gets or sets the dash pattern. Specifies how to join consecutive line or curve segments in a figure or subpath. Specifies a mitered join. This produces a sharp corner or a clipped corner, depending on whether the length of the miter exceeds the miter limit Specifies a circular join. This produces a smooth, circular arc between the lines. Specifies a beveled join. This produces a diagonal corner. Specifies the style of dashed lines drawn with an XPen object. Specifies a solid line. Specifies a line consisting of dashes. Specifies a line consisting of dots. Specifies a line consisting of a repeating pattern of dash-dot. Specifies a line consisting of a repeating pattern of dash-dot-dot. Specifies a user-defined custom dash style. Represents a ToUnicode map for composite font. Creates the ToUnicode map from the CMapInfo. Gets or sets the CMap info. Represents a PDF soft mask. Initializes a new instance of the class. The document that owns the object. Predefined keys of this dictionary. (Optional) The type of PDF object that this dictionary describes; if present, must be Mask for a soft-mask dictionary. (Required) A subtype specifying the method to be used in deriving the mask values from the transparency group specified by the G entry: Alpha: Use the group’s computed alpha, disregarding its color. Luminosity: Convert the group’s computed color to a single-component luminosity value. (Required) A transparency group XObject to be used as the source of alpha or color values for deriving the mask. If the subtype S is Luminosity, the group attributes dictionary must contain a CS entry defining the color space in which the compositing computation is to be performed. (Optional) An array of component values specifying the color to be used as the backdrop against which to composite the transparency group XObject G. This entry is consulted only if the subtype S is Luminosity. The array consists of n numbers, where n is the number of components in the color space specified by the CS entry in the group attributes dictionary. Default value: the color space’s initial value, representing black. (Optional) A function object specifying the transfer function to be used in deriving the mask values. The function accepts one input, the computed group alpha or luminosity (depending on the value of the subtype S), and returns one output, the resulting mask value. Both the input and output must be in the range 0.0 to 1.0; if the computed output falls outside this range, it is forced to the nearest valid value. The name Identity may be specified in place of a function object to designate the identity function. Default value: Identity. Provides access to the internal data structures of XGraphicsPath. This class prevents the public interface from pollution with internal functions. Gets the underlying GDI+ path object. Defines a set of static predefined XFontWeight values. Specifies a "Thin" font weight. Specifies a "ExtraLight" font weight. Specifies a "UltraLight" font weight. Specifies a "Light" font weight. Specifies a "Normal" font weight. Specifies a "Regular" font weight. Specifies a "Medium" font weight. Specifies a "SemiBold" font weight. Specifies a "DemiBold" font weight. Specifies a "Bold" font weight. Specifies a "ExtraBold" font weight. Specifies a "UltraBold" font weight. Specifies a "Heavy" font weight. Specifies a "Black" font weight. Specifies a "ExtraBlack" font weight. Specifies a "UltraBlack" font weight. Helper class for processing image files. Inflater is used to decompress data that has been compressed according to the "deflate" standard described in rfc1951. By default Zlib (rfc1950) headers and footers are expected in the input. You can use constructor public Inflater(bool noHeader) passing true if there is no Zlib header information The usage is as following. First you have to set some input with setInput(), then inflate() it. If inflate doesn't inflate any bytes there may be three reasons:
  • needsInput() returns true because the input buffer is empty. You have to provide more input with setInput(). NOTE: needsInput() also returns true when, the stream is finished.
  • needsDictionary() returns true, you have to provide a preset dictionary with setDictionary().
  • finished() returns true, the inflater has finished.
Once the first output byte is produced, a dictionary will not be needed at a later stage. Authors of the original java version: John Leuner, Jochen Hoenicke
These are the possible states for an inflater Copy lengths for literal codes 257..285 Extra bits for literal codes 257..285 Copy offsets for distance codes 0..29 Extra bits for distance codes This variable contains the current state. The adler checksum of the dictionary or of the decompressed stream, as it is written in the header resp. footer of the compressed stream. Only valid if mode is DECODE_DICT or DECODE_CHKSUM. The number of bits needed to complete the current state. This is valid, if mode is DECODE_DICT, DECODE_CHKSUM, DECODE_HUFFMAN_LENBITS or DECODE_HUFFMAN_DISTBITS. True, if the last block flag was set in the last block of the inflated stream. This means that the stream ends after the current block. The total number of inflated bytes. The total number of bytes set with setInput(). This is not the value returned by the TotalIn property, since this also includes the unprocessed input. This variable stores the noHeader flag that was given to the constructor. True means, that the inflated stream doesn't contain a Zlib header or footer. Creates a new inflater or RFC1951 decompressor RFC1950/Zlib headers and footers will be expected in the input data Creates a new inflater. True if no RFC1950/Zlib header and footer fields are expected in the input data This is used for GZIPed/Zipped input. For compatibility with Sun JDK you should provide one byte of input more than needed in this case. Resets the inflater so that a new stream can be decompressed. All pending input and output will be discarded. Decodes a zlib/RFC1950 header. False if more input is needed. The header is invalid. Decodes the dictionary checksum after the deflate header. False if more input is needed. Decodes the huffman encoded symbols in the input stream. false if more input is needed, true if output window is full or the current block ends. if deflated stream is invalid. Decodes the adler checksum after the deflate stream. false if more input is needed. If checksum doesn't match. Decodes the deflated stream. false if more input is needed, or if finished. if deflated stream is invalid. Sets the preset dictionary. This should only be called, if needsDictionary() returns true and it should set the same dictionary, that was used for deflating. The getAdler() function returns the checksum of the dictionary needed. The dictionary. Sets the preset dictionary. This should only be called, if needsDictionary() returns true and it should set the same dictionary, that was used for deflating. The getAdler() function returns the checksum of the dictionary needed. The dictionary. The offset into buffer where the dictionary starts. The length of the dictionary. No dictionary is needed. The adler checksum for the buffer is invalid Sets the input. This should only be called, if needsInput() returns true. the input. Sets the input. This should only be called, if needsInput() returns true. The source of input data The offset into buffer where the input starts. The number of bytes of input to use. No input is needed. The off and/or len are wrong. Inflates the compressed stream to the output buffer. If this returns 0, you should check, whether needsDictionary(), needsInput() or finished() returns true, to determine why no further output is produced. the output buffer. the number of bytes written to the buffer, 0 if no further output can be produced. if buf has length 0. if deflated stream is invalid. Inflates the compressed stream to the output buffer. If this returns 0, you should check, whether needsDictionary(), needsInput() or finished() returns true, to determine why no further output is produced. the output buffer. the offset into buffer where the output should start. the maximum length of the output. the number of bytes written to the buffer, 0 if no further output can be produced. if len is <= 0. if the offset and/or len are wrong. if deflated stream is invalid. Returns true, if the input buffer is empty. You should then call setInput(). NOTE: This method also returns true when the stream is finished. Returns true, if a preset dictionary is needed to inflate the input. Returns true, if the inflater has finished. This means, that no input is needed and no output can be produced. Gets the adler checksum. This is either the checksum of all uncompressed bytes returned by inflate(), or if needsDictionary() returns true (and thus no output was yet produced) this is the adler checksum of the expected dictionary. the adler checksum. Gets the total number of output bytes returned by inflate(). the total number of output bytes. Gets the total number of processed compressed input bytes. The total number of bytes of processed input bytes. Gets the number of unprocessed input bytes. Useful, if the end of the stream is reached and you want to further process the bytes after the deflate stream. The number of bytes of the input which have not been processed. This is the Deflater class. The deflater class compresses input with the deflate algorithm described in RFC 1951. It has several compression levels and three different strategies described below. This class is not thread safe. This is inherent in the API, due to the split of deflate and setInput. Author of the original java version: Jochen Hoenicke The best and slowest compression level. This tries to find very long and distant string repetitions. The worst but fastest compression level. The default compression level. This level won't compress at all but output uncompressed blocks. The compression method. This is the only method supported so far. There is no need to use this constant at all. Compression level. If true no Zlib/RFC1950 headers or footers are generated The current state. The total bytes of output written. The pending output. The deflater engine. Creates a new deflater with default compression level. Creates a new deflater with given compression level. the compression level, a value between NO_COMPRESSION and BEST_COMPRESSION, or DEFAULT_COMPRESSION. if lvl is out of range. Creates a new deflater with given compression level. the compression level, a value between NO_COMPRESSION and BEST_COMPRESSION. true, if we should suppress the Zlib/RFC1950 header at the beginning and the adler checksum at the end of the output. This is useful for the GZIP/PKZIP formats. if lvl is out of range. Resets the deflater. The deflater acts afterwards as if it was just created with the same compression level and strategy as it had before. Flushes the current input block. Further calls to deflate() will produce enough output to inflate everything in the current input block. This is not part of Sun's JDK so I have made it package private. It is used by DeflaterOutputStream to implement flush(). Finishes the deflater with the current input block. It is an error to give more input after this method was called. This method must be called to force all bytes to be flushed. Sets the data which should be compressed next. This should be only called when needsInput indicates that more input is needed. If you call setInput when needsInput() returns false, the previous input that is still pending will be thrown away. The given byte array should not be changed, before needsInput() returns true again. This call is equivalent to setInput(input, 0, input.length). the buffer containing the input data. if the buffer was finished() or ended(). Sets the data which should be compressed next. This should be only called when needsInput indicates that more input is needed. The given byte array should not be changed, before needsInput() returns true again. the buffer containing the input data. the start of the data. the length of the data. if the buffer was finished() or ended() or if previous input is still pending. Sets the compression level. There is no guarantee of the exact position of the change, but if you call this when needsInput is true the change of compression level will occur somewhere near before the end of the so far given input. the new compression level. Get current compression level Returns the current compression level Sets the compression strategy. Strategy is one of DEFAULT_STRATEGY, HUFFMAN_ONLY and FILTERED. For the exact position where the strategy is changed, the same as for setLevel() applies. The new compression strategy. Deflates the current input block with to the given array. The buffer where compressed data is stored The number of compressed bytes added to the output, or 0 if either needsInput() or finished() returns true or length is zero. Deflates the current input block to the given array. Buffer to store the compressed data. Offset into the output array. The maximum number of bytes that may be stored. The number of compressed bytes added to the output, or 0 if either needsInput() or finished() returns true or length is zero. If end() was previously called. If offset and/or length don't match the array length. Sets the dictionary which should be used in the deflate process. This call is equivalent to setDictionary(dict, 0, dict.Length). the dictionary. if setInput () or deflate () were already called or another dictionary was already set. Sets the dictionary which should be used in the deflate process. The dictionary is a byte array containing strings that are likely to occur in the data which should be compressed. The dictionary is not stored in the compressed output, only a checksum. To decompress the output you need to supply the same dictionary again. The dictionary data An offset into the dictionary. The length of the dictionary data to use If setInput () or deflate () were already called or another dictionary was already set. Gets the current adler checksum of the data that was processed so far. Gets the number of input bytes processed so far. Gets the number of output bytes so far. Returns true if the stream was finished and no more output bytes are available. Returns true, if the input buffer is empty. You should then call setInput(). NOTE: This method can also return true when the stream was finished. Specifies how the document should be displayed by a viewer when opened. Neither document outline nor thumbnail images visible. Document outline visible. Thumbnail images visible. Full-screen mode, with no menu bar, windowcontrols, or any other window visible. (PDF 1.5) Optional content group panel visible. (PDF 1.6) Attachments panel visible. This class is intended for empira internal use only and may change or drop in future releases. This function is intended for empira internal use only. This function is intended for empira internal use only. This property is intended for empira internal use only. This property is intended for empira internal use only. This class is undocumented and may change or drop in future releases. Use document default to determine compression. Leave custom values uncompressed. Compress custom values using FlateDecode. Determines how a PDF document is opened. The PDF stream is completely read into memory and can be modified. Pages can be deleted or inserted, but it is not possible to extract pages. This mode is useful for modifying an existing PDF document. The PDF stream is opened for importing pages from it. A document opened in this mode cannot be modified. The PDF stream is completely read into memory, but cannot be modified. This mode preserves the original internal structure of the document and is useful for analyzing existing PDF files. The PDF stream is partially read for information purposes only. The only valid operation is to call the Info property at the imported document. This option is very fast and needs less memory and is e.g. useful for browsing information about a collection of PDF documents in a user interface. Reserved for future extension. Represents a PDF trailer dictionary. Even trailers are dictionaries their never have a cross reference entry in PdfReferenceTable. Initializes a new instance of PdfTrailer. Gets the first or second document identifier. Sets the first or second document identifier. Creates and sets two identical new document IDs. Replace temporary irefs by their correct counterparts from the iref table. (Required; must be an indirect reference) The catalog dictionary for the PDF document contained in the file. Gets the standard security handler. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Required; must not be an indirect reference) The total number of entries in the file’s cross-reference table, as defined by the combination of the original section and all update sections. Equivalently, this value is 1 greater than the highest object number used in the file. Note: Any object in a cross-reference section whose number is greater than this value is ignored and considered missing. (Present only if the file has more than one cross-reference section; must not be an indirect reference) The byte offset from the beginning of the file to the beginning of the previous cross-reference section. (Required; must be an indirect reference) The catalog dictionary for the PDF document contained in the file. (Required if document is encrypted; PDF 1.1) The document’s encryption dictionary. (Optional; must be an indirect reference) The document’s information dictionary. (Optional, but strongly recommended; PDF 1.1) An array of two strings constituting a file identifier for the file. Although this entry is optional, its absence might prevent the file from functioning in some workflows that depend on files being uniquely identified. (Optional) The byte offset from the beginning of the file of a cross-reference stream. Gets the KeysMeta for these keys. Represents an array of PDF content streams of a page. Initializes a new instance of the class. The document. Appends a new content stream and returns it. Prepends a new content stream and returns it. Creates a single content stream with the bytes from the array of the content streams. This operation does not modify any of the content streams in this array. Represents a PDF transparency group XObject. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Sometimes required, as discussed below) The group color space, which is used for the following purposes: • As the color space into which colors are converted when painted into the group • As the blending color space in which objects are composited within the group • As the color space of the group as a whole when it in turn is painted as an object onto its backdrop The group color space may be any device or CIE-based color space that treats its components as independent additive or subtractive values in the range 0.0 to 1.0, subject to the restrictions described in Section 7.2.3, “Blending Color Space.” These restrictions exclude Lab and lightness-chromaticity ICCBased color spaces, as well as the special color spaces Pattern, Indexed, Separation, and DeviceN. Device color spaces are subject to remapping according to the DefaultGray, DefaultRGB, and DefaultCMYK entries in the ColorSpace subdictionary of the current resource dictionary. Ordinarily, the CS entry is allowed only for isolated transparency groups (those for which I, below, is true), and even then it is optional. However, this entry is required in the group attributes dictionary for any transparency group XObject that has no parent group or page from which to inherit — in particular, one that is the value of the G entry in a soft-mask dictionary of subtype Luminosity. In addition, it is always permissible to specify CS in the group attributes dictionary associated with a page object, even if I is false or absent. In the normal case in which the page is imposed directly on the output medium, the page group is effectively isolated regardless of the I value, and the specified CS value is therefore honored. But if the page is in turn used as an element of some other page and if the group is non-isolated, CS is ignored and the color space is inherited from the actual backdrop with which the page is composited. Default value: the color space of the parent group or page into which this transparency group is painted. (The parent’s color space in turn can be either explicitly specified or inherited.) (Optional) A flag specifying whether the transparency group is isolated. If this flag is true, objects within the group are composited against a fully transparent initial backdrop; if false, they are composited against the group’s backdrop. Default value: false. In the group attributes dictionary for a page, the interpretation of this entry is slightly altered. In the normal case in which the page is imposed directly on the output medium, the page group is effectively isolated and the specified I value is ignored. But if the page is in turn used as an element of some other page, it is treated as if it were a transparency group XObject; the I value is interpreted in the normal way to determine whether the page group is isolated. (Optional) A flag specifying whether the transparency group is a knockout group. If this flag is false, later objects within the group are composited with earlier ones with which they overlap; if true, they are composited with the group’s initial backdrop and overwrite (“knock out”) any earlier overlapping objects. Default value: false. Gets the KeysMeta for these keys. TrueType font table names. Character to glyph mapping. Font header . Horizontal header. Horizontal metrics. Maximum profile. Naming table. OS/2 and Windows specific metrics. PostScript information. Control Value Table. Font program. Glyph data. Index to location. CVT Program. PostScript font program (compact font format). Vertical Origin. Embedded bitmap data. Embedded bitmap location data. Embedded bitmap scaling data. Baseline data. Glyph definition data. Glyph positioning data. Glyph substitution data. Justification data. Digital signature. Grid-fitting/Scan-conversion. Horizontal device metrics. Kerning. Linear threshold data. PCL 5 data. Vertical device metrics. Vertical Header. Vertical Metrics. This class stores the pending output of the Deflater. Author of the original java version: Jochen Hoenicke Construct instance with default buffer size Specifies the encoding schema used for an XFont when converted into PDF. Windows ANSI encoding. Alternate name for Windows ANSI encoding. Unicode encoding. Represents an indirect integer value. This type is not used by PDFsharp. If it is imported from an external PDF file, the value is converted into a direct object. Initializes a new instance of the class. Initializes a new instance of the class. The value. Initializes a new instance of the class. The document. The value. Returns the integer as string. Writes the integer literal. Gets the value as unsigned integer. Represents the stack for the shift-reduce parser. It seems that it is only needed for reduction of indirect references. Gets an item relative to the current stack pointer. The index must be a negative value (-1, -2, etc.). Gets an item relative to the current stack pointer. The index must be a negative value (-1, -2, etc.). Pushes the specified item onto the stack. Replaces the last 'count' items with the specified item. Replaces the last 'count' items with the specified item. The stack pointer index. Points to the next free item. An array representing the stack. Gets the stack pointer index. Gets the value at the specified index. Valid index is in range 0 up to sp-1. Represents a text annotation. Initializes a new instance of the class. Initializes a new instance of the class. Gets or sets a flag indicating whether the annotation should initially be displayed open. Gets or sets an icon to be used in displaying the annotation. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Optional) A flag specifying whether the annotation should initially be displayed open. Default value: false (closed). (Optional) The name of an icon to be used in displaying the annotation. Viewer applications should provide predefined icon appearances for at least the following standard names: Comment Help Insert Key NewParagraph Note Paragraph Helper class for creating bitmap masks (8 pels per byte). Creates a bitmap mask. Starts a new line. Adds a pel to the current line. Adds a pel from an alpha mask value. Returns the bitmap mask that will be written to PDF. Represents the imported objects of an external document. Used to cache objects that are already imported when a PdfFormXObject is added to a page. Initializes a new instance of this class with the document the objects are imported from. Indicates whether the specified object is already imported. Adds a cloned object to this table. The object identifier in the foreign object. The cross reference to the clone of the foreign object, which belongs to this document. In general the clone has a different object identifier. Maps external object identifiers to cross reference entries of the importing document {PdfObjectID -> PdfReference}. Gets the document this table belongs to. Gets the external document, or null, if the external document is garbage collected. Gets the cloned object that corresponds to the specified external identifier. Represents a TrueType font. Initializes a new instance of PdfTrueTypeFont from an XFont. Prepares the object to get saved. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Required) The type of PDF object that this dictionary describes; must be Font for a font dictionary. (Required) The type of font; must be TrueType for a TrueType font. (Required in PDF 1.0; optional otherwise) The name by which this font is referenced in the Font subdictionary of the current resource dictionary. (Required) The PostScript name of the font. For Type 1 fonts, this is usually the value of the FontName entry in the font program; for more information. The Post-Script name of the font can be used to find the font’s definition in the consumer application or its environment. It is also the name that is used when printing to a PostScript output device. (Required except for the standard 14 fonts) The first character code defined in the font’s Widths array. (Required except for the standard 14 fonts) The last character code defined in the font’s Widths array. (Required except for the standard 14 fonts; indirect reference preferred) An array of (LastChar - FirstChar + 1) widths, each element being the glyph width for the character code that equals FirstChar plus the array index. For character codes outside the range FirstChar to LastChar, the value of MissingWidth from the FontDescriptor entry for this font is used. The glyph widths are measured in units in which 1000 units corresponds to 1 unit in text space. These widths must be consistent with the actual widths given in the font program. (Required except for the standard 14 fonts; must be an indirect reference) A font descriptor describing the font’s metrics other than its glyph widths. Note: For the standard 14 fonts, the entries FirstChar, LastChar, Widths, and FontDescriptor must either all be present or all be absent. Ordinarily, they are absent; specifying them enables a standard font to be overridden. (Optional) A specification of the font’s character encoding if different from its built-in encoding. The value of Encoding is either the name of a predefined encoding (MacRomanEncoding, MacExpertEncoding, or WinAnsiEncoding, as described in Appendix D) or an encoding dictionary that specifies differences from the font’s built-in encoding or from a specified predefined encoding. (Optional; PDF 1.2) A stream containing a CMap file that maps character codes to Unicode values. Gets the KeysMeta for these keys. Represents a CIDFont dictionary. Prepares the object to get saved. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Required) The type of PDF object that this dictionary describes; must be Font for a CIDFont dictionary. (Required) The type of CIDFont; CIDFontType0 or CIDFontType2. (Required) The PostScript name of the CIDFont. For Type 0 CIDFonts, this is usually the value of the CIDFontName entry in the CIDFont program. For Type 2 CIDFonts, it is derived the same way as for a simple TrueType font; In either case, the name can have a subset prefix if appropriate. (Required) A dictionary containing entries that define the character collection of the CIDFont. (Required; must be an indirect reference) A font descriptor describing the CIDFont’s default metrics other than its glyph widths. (Optional) The default width for glyphs in the CIDFont. Default value: 1000. (Optional) A description of the widths for the glyphs in the CIDFont. The array’s elements have a variable format that can specify individual widths for consecutive CIDs or one width for a range of CIDs. Default value: none (the DW value is used for all glyphs). (Optional; applies only to CIDFonts used for vertical writing) An array of two numbers specifying the default metrics for vertical writing. Default value: [880 −1000]. (Optional; applies only to CIDFonts used for vertical writing) A description of the metrics for vertical writing for the glyphs in the CIDFont. Default value: none (the DW2 value is used for all glyphs). (Optional; Type 2 CIDFonts only) A specification of the mapping from CIDs to glyph indices. If the value is a stream, the bytes in the stream contain the mapping from CIDs to glyph indices: the glyph index for a particular CID value c is a 2-byte value stored in bytes 2 × c and 2 × c + 1, where the first byte is the high-order byte. If the value of CIDToGIDMap is a name, it must be Identity, indicating that the mapping between CIDs and glyph indices is the identity mapping. Default value: Identity. This entry may appear only in a Type 2 CIDFont whose associated True-Type font program is embedded in the PDF file. Gets the KeysMeta for these keys. Represents a segment of a path defined by a type and a set of points. Represents a series of connected lines and curves. Initializes a new instance of the class. Initializes a new instance of the class. Gets access to underlying GDI+ path. Clones this instance. Adds a line segment to current figure. Adds a line segment to current figure. Adds a line segment to current figure. Adds a line segment to current figure. Adds a line segment to current figure. Adds a series of connected line segments to current figure. Adds a series of connected line segments to current figure. Adds a series of connected line segments to current figure. Adds a cubic Bézier curve to the current figure. Adds a cubic Bézier curve to the current figure. Adds a cubic Bézier curve to the current figure. Adds a cubic Bézier curve to the current figure. Adds a cubic Bézier curve to the current figure. Adds a sequence of connected cubic Bézier curves to the current figure. Adds a sequence of connected cubic Bézier curves to the current figure. Adds a sequence of connected cubic Bézier curves to the current figure. Adds a spline curve to the current figure. Adds a spline curve to the current figure. Adds a spline curve to the current figure. Adds a spline curve to the current figure. Adds a spline curve to the current figure. Adds a spline curve to the current figure. Adds a spline curve to the current figure. Adds a spline curve to the current figure. Adds a spline curve to the current figure. Adds an elliptical arc to the current figure. Adds an elliptical arc to the current figure. Adds an elliptical arc to the current figure. Adds an elliptical arc to the current figure. Adds an elliptical arc to the current figure. Adds a rectangle to this path. Adds a rectangle to this path. Adds a rectangle to this path. Adds a rectangle to this path. Adds a rectangle to this path. Adds a series of rectangles to this path. Adds a series of rectangles to this path. Adds a series of rectangles to this path. Adds a rectangle with rounded corners to this path. Adds a rectangle with rounded corners to this path. Adds a rectangle with rounded corners to this path. Adds a rectangle with rounded corners to this path. Adds a rectangle with rounded corners to this path. Adds an ellipse to the current path. Adds an ellipse to the current path. Adds an ellipse to the current path. Adds an ellipse to the current path. Adds an ellipse to the current path. Adds a polygon to this path. Adds a polygon to this path. Adds a polygon to this path. Adds the outline of a pie shape to this path. Adds the outline of a pie shape to this path. Adds the outline of a pie shape to this path. Adds the outline of a pie shape to this path. Adds the outline of a pie shape to this path. Adds a closed curve to this path. Adds a closed curve to this path. Adds a closed curve to this path. Adds a closed curve to this path. Adds a closed curve to this path. Adds a closed curve to this path. Adds the specified path to this path. Adds a text string to this path. Adds a text string to this path. Adds a text string to this path. Adds a text string to this path. Adds a text string to this path. Adds a text string to this path. Closes the current figure and starts a new figure. Starts a new figure without closing the current figure. Converts each curve in this XGraphicsPath into a sequence of connected line segments. Converts each curve in this XGraphicsPath into a sequence of connected line segments. Converts each curve in this XGraphicsPath into a sequence of connected line segments. Replaces this path with curves that enclose the area that is filled when this path is drawn by the specified pen. Replaces this path with curves that enclose the area that is filled when this path is drawn by the specified pen. Replaces this path with curves that enclose the area that is filled when this path is drawn by the specified pen. Gets or sets an XFillMode that determines how the interiors of shapes are filled. Grants access to internal objects of this class. Represents a drawing surface (or canvas) for a fixed size page. Initializes a new instance of the XGraphics class. The gfx. The size. The page unit. The page direction. Initializes a new instance of the XGraphics class for drawing on a PDF page. Initializes a new instance of the XGraphics class used for drawing on a form. Creates the measure context. This is a graphics context created only for querying measures of text. Drawing on a measure context has no effect. Creates a new instance of the XGraphics class from a System.Drawing.Graphics object. Creates a new instance of the XGraphics class from a System.Drawing.Graphics object. Creates a new instance of the XGraphics class from a PdfSharp.Pdf.PdfPage object. Creates a new instance of the XGraphics class from a PdfSharp.Pdf.PdfPage object. Creates a new instance of the XGraphics class from a PdfSharp.Pdf.PdfPage object. Creates a new instance of the XGraphics class from a PdfSharp.Pdf.PdfPage object. Creates a new instance of the XGraphics class from a PdfSharp.Pdf.PdfPage object. Creates a new instance of the XGraphics class from a PdfSharp.Pdf.PdfPage object. Creates a new instance of the XGraphics class from a PdfSharp.Pdf.PdfPage object. Creates a new instance of the XGraphics class from a PdfSharp.Drawing.XPdfForm object. Creates a new instance of the XGraphics class from a PdfSharp.Drawing.XForm object. Internal setup. Releases all resources used by this object. A value indicating whether GDI+ or WPF is used as context. Fills the entire drawing surface with the specified color. The functions works only if the current transformation is identity, i.e. the function should be called only immediately after the XGraphics object was created. Draws a line connecting two Point structures. Draws a line connecting two PointF structures. Draws a line connecting two XPoint structures. Draws a line connecting the two points specified by coordinate pairs. Draws a line connecting the two points specified by coordinate pairs. Draws a series of line segments that connect an array of points. Draws a series of line segments that connect an array of points. Draws a series of line segments that connect an array of points. Draws a series of line segments that connect an array of x and y pairs. Draws a Bézier spline defined by four points. Draws a Bézier spline defined by four points. Draws a Bézier spline defined by four points. Draws a Bézier spline defined by four points. Draws a series of Bézier splines from an array of points. Draws a series of Bézier splines from an array of points. Draws a series of Bézier splines from an array of points. Draws a cardinal spline through a specified array of points. Draws a cardinal spline through a specified array of points. Draws a cardinal spline through a specified array of points. Draws a cardinal spline through a specified array of points using a specified tension. Draws a cardinal spline through a specified array of points using a specified tension. Draws a cardinal spline through a specified array of points using a specified tension. Draws an arc representing a portion of an ellipse. Draws an arc representing a portion of an ellipse. Draws an arc representing a portion of an ellipse. Draws an arc representing a portion of an ellipse. Draws an arc representing a portion of an ellipse. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a rectangle. Draws a series of rectangles. Draws a series of rectangles. Draws a series of rectangles. Draws a series of rectangles. Draws a series of rectangles. Draws a series of rectangles. Draws a series of rectangles. Draws a series of rectangles. Draws a series of rectangles. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws a rectangles with round corners. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws an ellipse defined by a bounding rectangle. Draws a polygon defined by an array of points. Draws a polygon defined by an array of points. Draws a polygon defined by an array of points. Draws a polygon defined by an array of points. Draws a polygon defined by an array of points. Draws a polygon defined by an array of points. Draws a polygon defined by an array of points. Draws a polygon defined by an array of points. Draws a polygon defined by an array of points. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a pie defined by an ellipse. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a closed cardinal spline defined by an array of points. Draws a graphical path. Draws a graphical path. Draws a graphical path. Draws the specified text string. Draws the specified text string. Draws the specified text string. Draws the specified text string. Draws the specified text string. Draws the specified text string. Draws the specified text string. Draws the specified text string. Draws the specified text string. Draws the specified text string. Measures the specified string when drawn with the specified font. Measures the specified string when drawn with the specified font. Draws the specified image. Draws the specified image. Draws the specified image. Draws the specified image. Draws the specified image. Draws the specified image. Draws the specified image. Draws the specified image. Draws the specified image. Draws the specified image. Draws the specified image. Draws the specified image. Draws the specified image. Checks whether drawing is allowed and disposes the XGraphics object, if necessary. Draws the specified bar code. Draws the specified bar code. Draws the specified bar code. Draws the specified data matrix code. Draws the specified data matrix code. Saves the current state of this XGraphics object and identifies the saved state with the returned XGraphicsState object. Restores the state of this XGraphics object to the state represented by the specified XGraphicsState object. Restores the state of this XGraphics object to the state before the most recently call of Save. Saves a graphics container with the current state of this XGraphics and opens and uses a new graphics container. Saves a graphics container with the current state of this XGraphics and opens and uses a new graphics container. Saves a graphics container with the current state of this XGraphics and opens and uses a new graphics container. Saves a graphics container with the current state of this XGraphics and opens and uses a new graphics container. Closes the current graphics container and restores the state of this XGraphics to the state saved by a call to the BeginContainer method. Applies the specified translation operation to the transformation matrix of this object by prepending it to the object's transformation matrix. Applies the specified translation operation to the transformation matrix of this object in the specified order. Applies the specified scaling operation to the transformation matrix of this object by prepending it to the object's transformation matrix. Applies the specified scaling operation to the transformation matrix of this object in the specified order. Applies the specified scaling operation to the transformation matrix of this object by prepending it to the object's transformation matrix. Applies the specified scaling operation to the transformation matrix of this object in the specified order. Applies the specified rotation operation to the transformation matrix of this object by prepending it to the object's transformation matrix. Applies the specified rotation operation to the transformation matrix of this object in the specified order. The angle unit of measure is degree. Applies the specified rotation operation to the transformation matrix of this object by prepending it to the object's transformation matrix. Applies the specified rotation operation to the transformation matrix of this object by prepending it to the object's transformation matrix. Applies the specified shearing operation to the transformation matrix of this object by prepending it to the object's transformation matrix. Applies the specified shearing operation to the transformation matrix of this object in the specified order. Multiplies the transformation matrix of this object and specified matrix. Multiplies the transformation matrix of this object and specified matrix in the specified order. Gets or sets the transformation matrix. Resets the transformation matrix of this object to the identity matrix. Sets the clipping region to the specified rectangle. Sets the clipping region to the specified rectangle. Sets the clipping region to the specified rectangle. Sets the clipping region to the specified graphical path. Sets the clipping region to the specified graphical path. Sets the clipping region to the specified graphical path. Updates the clip region of this XGraphics to the intersection of the current clip region and the specified rectangle. Updates the clip region of this XGraphics to the intersection of the current clip region and the specified rectangle. Updates the clip region of this XGraphics to the intersection of the current clip region and the specified rectangle. Updates the clip region of this XGraphics to the intersection of the current clip region and the specified graphical path. Resets the clip region of this XGraphics to an infinite region, i.e. no clipping takes place. Writes a comment to the output stream. Comments have no effect on the rendering of the output. They may be useful to mark a position in a content stream of a PDF document. Converts a Point[] into a PointF[]. Converts a XPoint[] into a PointF[]. Converts a Point[] into a XPoint[]. Converts a PointF[] into a XPoint[]. Always defined System.Drawing.Graphics object. Used as 'query context' for PDF pages. The transformation matrix from the XGraphics page space to the Graphics world space. (The name 'default view matrix' comes from Microsoft OS/2 Presentation Manager. I choose this name because I have no better one.) Indicates whether to send drawing operations to this.gfx or this.dc. Interface to an (optional) renderer. Currently it is the XGraphicsPdfRenderer, if defined. The transformation matrix from XGraphics world space to page unit space. The graphics state stack. Internal hack for MigraDoc. Will be removed in further releases. Unicode support requires a global refactoring of MigraDoc and will be done in further releases. Internal hack for MigraDoc. Will be removed in further releases. Font embedding support requires a global refactoring of MigraDoc and will be done in further releases. Gets or sets the unit of measure used for page coordinates. CURRENTLY ONLY POINT IS IMPLEMENTED. Gets or sets the a value indicating in which direction y-value grow. Gets the current page origin. Setting the origin is not yet implemented. Gets the current size of the page. Gets the current graphics state level. The default value is 0. Each call of Save or BeginContainer increased and each call of Restore or EndContainer decreased the value by 1. Gets or sets the smoothing mode. The smoothing mode. Gets or sets the transformation matrix. Permits access to internal data. (Under construction. May change in future versions.) Gets the PDF page that serves as drawing surface if PDF is rendered, otherwise null. Gets the System.Drawing.Graphics objects that serves as drawing surface if no PDF is rendered, or null, if no such object exists. Provides access to internal data structures of the XGraphics class. If PDF is rendered, sets the tz value. Gets the underlying Graphics object. (This class is under construction.) Gets the smallest rectangle in default page space units that completely encloses the specified rect in world space units. Defines an object used to draw text. Initializes a new instance of the class. Name of the font family. The em size. Initializes a new instance of the class. Name of the font family. The em size. The font style. Initializes a new instance of the class. Name of the font family. The em size. The font style. Additional PDF options. Initializes a new instance of the class. The font family. The em size. The font style. Additional PDF options. Initializes a new instance of the class from a System.Drawing.Font. A System.Drawing.Font. Additional PDF options. Connects the specifications of a font from XFont to a real glyph type face. Returns the line spacing, in pixels, of this font. The line spacing is the vertical distance between the base lines of two consecutive lines of text. Thus, the line spacing includes the blank space between lines along with the height of the character itself. Returns the line spacing, in the current unit of a specified Graphics object, of this font. The line spacing is the vertical distance between the base lines of two consecutive lines of text. Thus, the line spacing includes the blank space between lines along with the height of Implicit conversion form Font to XFont Cache PdfFontTable.FontSelector to speed up finding the right PdfFont if this font is used more than once. Gets the GDI family. The GDI family. Gets the XFontFamily object associated with this XFont object. Gets the face name of this Font object. Gets the em-size of this Font object measured in the unit of this Font object. Gets the line spacing of this font. Gets style information for this Font object. Indicates whether this XFont object is bold. Indicates whether this XFont object is italic. Indicates whether this XFont object is stroke out. Indicates whether this XFont object is underlined. Temporary HACK for XPS to PDF converter. Gets the PDF options of the font. Indicates whether this XFont is encoded as Unicode. Gets the metrics. The metrics. Specifies the alignment of a text string relative to its layout rectangle Specifies the text be aligned near the layout. In a left-to-right layout, the near position is left. In a right-to-left layout, the near position is right. Specifies that text is aligned in the center of the layout rectangle. Specifies that text is aligned far from the origin position of the layout rectangle. In a left-to-right layout, the far position is right. In a right-to-left layout, the far position is left. Specifies that text is aligned relative to its base line. With this option the layout rectangle must have a height of 0. Specifies style information applied to text. Normal text. Bold text. Italic text. Bold and italic text. Underlined text. Text with a line through the middle. Lexical analyzer for PDF content files. Adobe specifies no grammar, but it seems that it is a simple post-fix notation. Initializes a new instance of the Lexer class. Reads the next token and returns its type. Scans a comment line. (Not yet used, comments are skipped by lexer.) Scans the bytes of an inline image. NYI: Just scans over it. Scans a name. Scans an integer or real number. Scans an operator. Move current position one character further in content stream. Resets the current token to the empty string. Appends current character to the token and reads next one. If the current character is not a white space, the function immediately returns it. Otherwise the PDF cursor is moved forward to the first non-white space or EOF. White spaces are NUL, HT, LF, FF, CR, and SP. Indicates whether the specified character is a content stream white-space character. Indicates whether the specified character is an content operator character. Indicates whether the specified character is a PDF delimiter character. Gets or sets the current symbol. Gets the current token. Interprets current token as integer literal. Interpret current token as real or integer literal. Generic font table. Not yet used Identifies the technology of an OpenType font file. Font is Adobe Postscript font in CFF. Font is a TrueType font. Font is a TrueType font collection. Version info base for all PDFsharp related assemblies. The title of the product. A characteristic description of the product. The PDF producer information string. The full version number. The full version string. The home page of this product. The company that created/owned the product. The name of the product. The copyright information. Also used as NuGet Copyright. The trademark the product. Unused - must be empty string. The major version number of the product. Also used for NuGet Version. The minor version number of the product. Also used for NuGet Version. The build number of the product. Also used for NuGet Version. The patch number of the product. Also used for NuGet Version. E.g. "1/1/2005", for use in NuGet Script. Use _ instead of blanks and special characters. Can be complemented with a suffix in the NuGet Script. Nuspec Doc: The unique identifier for the package. This is the package name that is shown when packages are listed using the Package Manager Console. These are also used when installing a package using the Install-Package command within the Package Manager Console. Package IDs may not contain any spaces or characters that are invalid in an URL. In general, they follow the same rules as .NET namespaces do. So Foo.Bar is a valid ID, Foo! and Foo Bar are not. Nuspec Doc: The human-friendly title of the package displayed in the Manage NuGet Packages dialog. If none is specified, the ID is used instead. Nuspec Doc: A comma-separated list of authors of the package code. Nuspec Doc: A comma-separated list of the package creators. This is often the same list as in authors. This is ignored when uploading the package to the NuGet.org Gallery. Nuspec Doc: A long description of the package. This shows up in the right pane of the Add Package Dialog as well as in the Package Manager Console when listing packages using the Get-Package command. Nuspec Doc: A description of the changes made in each release of the package. This field only shows up when the _Updates_ tab is selected and the package is an update to a previously installed package. It is displayed where the Description would normally be displayed. Nuspec Doc: A short description of the package. If specified, this shows up in the middle pane of the Add Package Dialog. If not specified, a truncated version of the description is used instead. Nuspec Doc: The locale ID for the package, such as en-us. Nuspec Doc: A URL for the home page of the package. http://www.pdfsharp.net/NuGetPackage_PDFsharp-GDI.ashx http://www.pdfsharp.net/NuGetPackage_PDFsharp-WPF.ashx Nuspec Doc: A URL for the image to use as the icon for the package in the Manage NuGet Packages dialog box. This should be a 32x32-pixel .png file that has a transparent background. Nuspec Doc: A link to the license that the package is under. Nuspec Doc: A Boolean value that specifies whether the client needs to ensure that the package license (described by licenseUrl) is accepted before the package is installed. Nuspec Doc: A space-delimited list of tags and keywords that describe the package. This information is used to help make sure users can find the package using searches in the Add Package Reference dialog box or filtering in the Package Manager Console window. The technology tag of the product: -g: GDI+, -w: WPF, -h: Both GDI+ and WPF (hybrid). Represents text that is written 'as it is' into the PDF stream. This class can lead to invalid PDF files. E.g. strings in a literal are not encrypted when the document is saved with a password. Initializes a new instance of the class. Initializes a new instance with the specified string. Initializes a new instance with the culture invariant formatted specified arguments. Creates a literal from an XMatrix Returns a string that represents the current value. Gets the value as litaral string. Represents an indirect name value. This type is not used by PDFsharp. If it is imported from an external PDF file, the value is converted into a direct object. Acrobat sometime uses indirect names to save space, because an indirect reference to a name may be shorter than a long name. Initializes a new instance of the class. Initializes a new instance of the class. The document. The value. Determines whether the specified object is equal to the current object. Serves as a hash function for this type. Returns the name. The string always begins with a slash. Determines whether a name is equal to a string. Determines whether a name is not equal to a string. Writes the name including the leading slash. Gets or sets the name value. Represents a direct boolean value. Initializes a new instance of the class. Initializes a new instance of the class. A pre-defined value that represents true. A pre-defined value that represents false. Returns 'false' or 'true'. Writes 'true' or 'false'. Gets the value of this instance as boolean value. This class is intended for empira internal use only and may change or drop in future releases. This function is intended for empira internal use only. This function is intended for empira internal use only. This function is intended for empira internal use only. This function is intended for empira internal use only. Represents the standard PDF security handler. Encrypts the whole document. Encrypts an indirect object. Encrypts a dictionary. Encrypts an array. Encrypts a string. Encrypts an array. Checks the password. Password or null if no password is provided. Pads a password to a 32 byte array. Generates the user key based on the padded user password. Generates the user key based on the padded owner password. Computes the padded user password from the padded owner password. Computes the encryption key. Computes the user key. Prepare the encryption key. Prepare the encryption key. Prepare the encryption key. Encrypts the data. Encrypts the data. Encrypts the data. Encrypts the data. Checks whether the calculated key correct. Set the hash key for the specified object. Prepares the security handler for encrypting the document. The global encryption key. The message digest algorithm MD5. Bytes used for RC4 encryption. The encryption key for the owner. The encryption key for the user. The encryption key for a particular object/generation. The encryption key length for a particular object/generation. Sets the user password of the document. Setting a password automatically sets the PdfDocumentSecurityLevel to PdfDocumentSecurityLevel.Encrypted128Bit if its current value is PdfDocumentSecurityLevel.None. Sets the owner password of the document. Setting a password automatically sets the PdfDocumentSecurityLevel to PdfDocumentSecurityLevel.Encrypted128Bit if its current value is PdfDocumentSecurityLevel.None. Gets or sets the user access permission represented as an integer in the P key. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (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 and does not have any of the access permissions set (by means of the P entry, below) that are designated "Revision 3 or greater". • 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 (Required) 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. (Required) 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. (Required) A set of flags specifying which operations are permitted when the document is opened with user access. (Optional; meaningful only when the value of V is 4; PDF 1.5) Indicates whether the document-level metadata stream is to be encrypted. Applications should respect this value. Default value: true. Gets the KeysMeta for these keys. Groups a set of static encoding helper functions. Converts a raw string into a raw string literal, possibly encrypted. Converts a raw string into a raw string literal, possibly encrypted. Converts a raw string into a raw hexadecimal string literal, possibly encrypted. Converts a raw string into a raw hexadecimal string literal, possibly encrypted. Converts the specified byte array into a byte array representing a string literal. The bytes of the string. Indicates whether one or two bytes are one character. Indicates whether to use Unicode prefix. Indicates whether to create a hexadecimal string literal. Encrypts the bytes if specified. The PDF bytes. Converts WinAnsi to DocEncode characters. Incomplete, just maps € and some other characters. ...because I always forget CultureInfo.InvariantCulture and wonder why Acrobat cannot understand my German decimal separator... Converts a float into a string with up to 3 decimal digits and a decimal point. Converts an XColor into a string with up to 3 decimal digits and a decimal point. Converts an XMatrix into a string with up to 3 decimal digits and a decimal point. Gets the raw encoding. Gets the raw Unicode encoding. Gets the Windows 1252 (ANSI) encoding. Gets the PDF DocEncoding encoding. Gets the UNICODE little-endian encoding. Implements the FlateDecode filter by wrapping SharpZipLib. Encodes the specified data. Decodes the specified data. Represents an indirect reference to a PdfObject. Initializes a new PdfReference instance for the specified indirect object. Initializes a new PdfReference instance from the specified object identifier and file position. Writes the object in PDF iref table format. Writes an indirect reference. Hack for dead objects. Gets a string representing the object identifier. Gets or sets the object identifier. Gets the object number of the object identifier. Gets the generation number of the object identifier. Gets or sets the file position of the related PdfObject. Gets or sets the referenced PdfObject. Gets or sets the document this object belongs to. Implements a comparer that compares PdfReference objects by their PdfObjectID. Contains all external PDF files from which PdfFormXObjects are imported into the current document. Initializes a new instance of this class, which is a singleton for each document. Gets a PdfFormXObject from an XPdfForm. Because the returned objects must be unique, always a new instance of PdfFormXObject is created if none exists for the specified form. Gets the imported object table. Map from Selector to PdfImportedObjectTable. A collection of information that uniquely identifies a particular ImportedObjectTable. Initializes a new instance of FormSelector from an XPdfForm. Initializes a new instance of FormSelector from a PdfPage. Contains all used ExtGState objects of a document. Initializes a new instance of this class, which is a singleton for each document. Gets a PdfExtGState with the keys 'CA' and 'ca' set to the specified alpha value. Gets a PdfExtGState with the key 'CA' set to the specified alpha value. Gets a PdfExtGState with the key 'ca' set to the specified alpha value. Maps from alpha values (range "0" to "1000") to PdfExtGState objects. Required native Win32 calls. Don't know what to do under Mono. Reflected from System.Drawing.SafeNativeMethods+LOGFONT Specifies how to reander the preview. Draw immediately. Draw using a metafile Draw using a bitmap image. The OpenType font descriptor. Maps a unicode to the index of the corresponding glyph. See OpenType spec "cmap - Character To Glyph Index Mapping Table / Format 4: Segment mapping to delta values" for details about this a little bit strange looking algorithm. Converts the width of a glyph identified by its index to PDF design units. //Converts the width of a glyph identified by its index to PDF design units. Gets a value indicating whether this instance belongs to a bold font. Gets a value indicating whether this instance belongs to an italic font. Converts XGraphics enums to GDI+ enums. Converts XLineJoin to LineJoin. Converts XLineCap to LineCap. Represents a set of 141 pre-defined RGB colors. Incidentally the values are the same as in System.Drawing.Color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Gets a predefined color. Specifies the direction of the y-axis. Increasing Y values go downwards. This is the default. Increasing Y values go upwards. This is only possible when drawing on a PDF page. It is not implemented when drawing on a System.Drawing.Graphics object. Type of the path data. Represents the current PDF graphics state. The realized current transformation matrix. The unrealized current transformation matrix. A flag indicating whether the CTM must be realized. Modifies the current transformation matrix. Realizes the CTM. Specifies the drawing direction of the code. Does not rotate the code. Rotates the code 180° at the anchor position. Rotates the code 180° at the anchor position. Rotates the code 180° at the anchor position. Terminal symbols recognized by PDF content stream lexer. The names of the op-codes. Temporary hack to implement PrivateFontCollection. NYI Indicates how to handle the first point of a path. Set the current position to the first point. Draws a line to the first point. Ignores the first point. Specifies the alignment of a paragraph. Default alignment, typically left alignment. The paragraph is rendered left aligned. The paragraph is rendered centered. The paragraph is rendered right aligned. The paragraph is rendered justified. Represents IDs for error and diagnostic messages generated by PDFsharp. PSMsgID. PSMsgID. PSMsgID. PSMsgID. PSMsgID. PSMsgID. Represents the PDF document viewer preferences dictionary. Initializes a new instance of the class. Gets or sets a value indicating whether to hide the viewer application’s tool bars when the document is active. Gets or sets a value indicating whether to hide the viewer application’s menu bar when the document is active. Gets or sets a value indicating whether to hide user interface elements in the document’s window (such as scroll bars and navigation controls), leaving only the document’s contents displayed. Gets or sets a value indicating whether to resize the document’s window to fit the size of the first displayed page. Gets or sets a value indicating whether to position the document’s window in the center of the screen. Gets or sets a value indicating whether the window’s title bar should display the document title taken from the Title entry of the document information dictionary. If false, the title bar should instead display the name of the PDF file containing the document. The predominant reading order for text: LeftToRight or RightToLeft (including vertical writing systems, such as Chinese, Japanese, and Korean). This entry has no direct effect on the document’s contents or page numbering but can be used to determine the relative positioning of pages when displayed side by side or printed n-up. Default value: LeftToRight. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Optional) A flag specifying whether to hide the viewer application’s tool bars when the document is active. Default value: false. (Optional) A flag specifying whether to hide the viewer application’s menu bar when the document is active. Default value: false. (Optional) A flag specifying whether to hide user interface elements in the document’s window (such as scroll bars and navigation controls), leaving only the document’s contents displayed. Default value: false. (Optional) A flag specifying whether to resize the document’s window to fit the size of the first displayed page. Default value: false. (Optional) A flag specifying whether to position the document’s window in the center of the screen. Default value: false. (Optional; PDF 1.4) A flag specifying whether the window’s title bar should display the document title taken from the Title entry of the document information dictionary. If false, the title bar should instead display the name of the PDF file containing the document. Default value: false. (Optional) The document’s page mode, specifying how to display the document on exiting full-screen mode: UseNone Neither document outline nor thumbnail images visible UseOutlines Document outline visible UseThumbs Thumbnail images visible UseOC Optional content group panel visible This entry is meaningful only if the value of the PageMode entry in the catalog dictionary is FullScreen; it is ignored otherwise. Default value: UseNone. (Optional; PDF 1.3) The predominant reading order for text: L2R Left to right R2L Right to left (including vertical writing systems, such as Chinese, Japanese, and Korean) This entry has no direct effect on the document’s contents or page numbering but can be used to determine the relative positioning of pages when displayed side by side or printed n-up. Default value: L2R. (Optional; PDF 1.4) The name of the page boundary representing the area of a page to be displayed when viewing the document on the screen. The value is the key designating the relevant page boundary in the page object. If the specified page boundary is not defined in the page object, its default value is used. Default value: CropBox. Note: This entry is intended primarily for use by prepress applications that interpret or manipulate the page boundaries as described in Section 10.10.1, “Page Boundaries.” Most PDF consumer applications disregard it. (Optional; PDF 1.4) The name of the page boundary to which the contents of a page are to be clipped when viewing the document on the screen. The value is the key designating the relevant page boundary in the page object. If the specified page boundary is not defined in the page object, its default value is used. Default value: CropBox. Note: This entry is intended primarily for use by prepress applications that interpret or manipulate the page boundaries as described in Section 10.10.1, “Page Boundaries.” Most PDF consumer applications disregard it. (Optional; PDF 1.4) The name of the page boundary representing the area of a page to be rendered when printing the document. The value is the key designating the relevant page boundary in the page object. If the specified page boundary is not defined in the page object, its default value is used. Default value: CropBox. Note: This entry is intended primarily for use by prepress applications that interpret or manipulate the page boundaries as described in Section 10.10.1, “Page Boundaries.” Most PDF consumer applications disregard it. (Optional; PDF 1.4) The name of the page boundary to which the contents of a page are to be clipped when printing the document. The value is the key designating the relevant page boundary in the page object. If the specified page boundary is not defined in the page object, its default value is used. Default value: CropBox. Note: This entry is intended primarily for use by prepress applications that interpret or manipulate the page boundaries. Most PDF consumer applications disregard it. (Optional; PDF 1.6) The page scaling option to be selected when a print dialog is displayed for this document. Valid values are None, which indicates that the print dialog should reflect no page scaling, and AppDefault, which indicates that applications should use the current print scaling. If this entry has an unrecognized value, applications should use the current print scaling. Default value: AppDefault. Note: If the print dialog is suppressed and its parameters are provided directly by the application, the value of this entry should still be used. Gets the KeysMeta for these keys. Represents an indirect null value. This type is not used by PDFsharp, but at least one tool from Adobe creates PDF files with a null object. Initializes a new instance of the class. Initializes a new instance of the class. The document. Returns the string "null". Writes the keyword «null». Represents a indirect reference that is not in the cross reference table. Returns a that represents the current . A that represents the current . The only instance of this class. Specifies what color model is used in a PDF document. All color values are written as specified in the XColor objects they come from. All colors are converted to RGB. All colors are converted to CMYK. Holds PDF specific information of the document. Sets the private font collection. Gets or sets the default trim margins. Encapsulates access to the security settings of a PDF document. Determines whether the document can be saved. Indicates whether the granted access to the document is 'owner permission'. Returns true if the document is unprotected or was opened with the owner password. Returns false if the document was opened with the user password. Gets or sets the document security level. If you set the security level to anything but PdfDocumentSecurityLevel.None you must also set a user and/or an owner password. Otherwise saving the document will fail. Sets the user password of the document. Setting a password automatically sets the PdfDocumentSecurityLevel to PdfDocumentSecurityLevel.Encrypted128Bit if its current value is PdfDocumentSecurityLevel.None. Sets the owner password of the document. Setting a password automatically sets the PdfDocumentSecurityLevel to PdfDocumentSecurityLevel.Encrypted128Bit if its current value is PdfDocumentSecurityLevel.None. Permits printing the document. Should be used in conjunction with PermitFullQualityPrint. Permits modifying the document. Permits content copying or extraction. Permits commenting the document. Permits filling of form fields. Permits content extraction for accessibility. Permits to insert, rotate, or delete pages and create bookmarks or thumbnail images even if PermitModifyDocument is not set. Permits to print in high quality. insert, rotate, or delete pages and create bookmarks or thumbnail images even if PermitModifyDocument is not set. PdfStandardSecurityHandler is the only implemented handler. INTERNAL USE ONLY. If only this flag is specified the result is a regular valid PDF stream. Omit writing stream data. For debugging purposes only. With this option the result is not valid PDF. Omit inflate filter. For debugging purposes only. Implements the ASCIIHexDecode filter. Encodes the specified data. Decodes the specified data. Represents a rubber stamp annotation. Initializes a new instance of the class. Initializes a new instance of the class. The document. Gets or sets an icon to be used in displaying the annotation. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Optional) The name of an icon to be used in displaying the annotation. Viewer applications should provide predefined icon appearances for at least the following standard names: Approved AsIs Confidential Departmental Draft Experimental Expired Final ForComment ForPublicRelease NotApproved NotForPublicRelease Sold TopSecret Represents the annotations array of a page. Adds the specified annotation. The annotation. Removes an annotation from the document. Removes all the annotations from the current page. Fixes the /P element in imported annotation. Returns an enumerator that iterates through a collection. Gets the number of annotations in this collection. Gets the at the specified index. Gets the page the annotations belongs to. Represents the catalog dictionary. Initializes a new instance of the class. Dispatches PrepareForSave to the objects that need it. Get or sets the version of the PDF specification to which the document conforms. Gets the pages collection of this document. Implementation of PdfDocument.PageLayout. Implementation of PdfDocument.PageMode. Implementation of PdfDocument.ViewerPreferences. Implementation of PdfDocument.Outlines. Gets the AcroForm dictionary of this document. Implementation of PdfDocument.PageMode. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. (Required) The type of PDF object that this dictionary describes; must be Catalog for the catalog dictionary. (Optional; PDF 1.4) The version of the PDF specification to which the document conforms (for example, 1.4) if later than the version specified in the file’s header. If the header specifies a later version, or if this entry is absent, the document conforms to the version specified in the header. This entry enables a PDF producer application to update the version using an incremental update. (Required; must be an indirect reference) The page tree node that is the root of the document’s page tree. (Optional; PDF 1.3) A number tree defining the page labeling for the document. The keys in this tree are page indices; the corresponding values are page label dictionaries. Each page index denotes the first page in a labeling range to which the specified page label dictionary applies. The tree must include a value for pageindex 0. (Optional; PDF 1.2) The document’s name dictionary. (Optional; PDF 1.1; must be an indirect reference) A dictionary of names and corresponding destinations. (Optional; PDF 1.2) A viewer preferences dictionary specifying the way the document is to be displayed on the screen. If this entry is absent, applications should use their own current user preference settings. (Optional) A name object specifying the page layout to be used when the document is opened: SinglePage - Display one page at a time. OneColumn - Display the pages in one column. TwoColumnLeft - Display the pages in two columns, with oddnumbered pages on the left. TwoColumnRight - Display the pages in two columns, with oddnumbered pages on the right. TwoPageLeft - (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the left TwoPageRight - (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the right. (Optional) A name object specifying how the document should be displayed when opened: UseNone - Neither document outline nor thumbnail images visible. UseOutlines - Document outline visible. UseThumbs - Thumbnail images visible. FullScreen - Full-screen mode, with no menu bar, windowcontrols, or any other window visible. UseOC - (PDF 1.5) Optional content group panel visible. UseAttachments (PDF 1.6) Attachments panel visible. Default value: UseNone. (Optional; must be an indirect reference) The outline dictionary that is the root of the document’s outline hierarchy. (Optional; PDF 1.1; must be an indirect reference) An array of thread dictionaries representing the document’s article threads. (Optional; PDF 1.1) A value specifying a destination to be displayed or an action to be performed when the document is opened. The value is either an array defining a destination or an action dictionary representing an action. If this entry is absent, the document should be opened to the top of the first page at the default magnification factor. (Optional; PDF 1.4) An additional-actions dictionary defining the actions to be taken in response to various trigger events affecting the document as a whole. (Optional; PDF 1.1) A URI dictionary containing document-level information for URI (uniform resource identifier) actions. (Optional; PDF 1.2) The document’s interactive form (AcroForm) dictionary. (Optional; PDF 1.4; must be an indirect reference) A metadata stream containing metadata for the document. (Optional; PDF 1.3) The document’s structure tree root dictionary. (Optional; PDF 1.4) A mark information dictionary containing information about the document’s usage of Tagged PDF conventions. (Optional; PDF 1.4) A language identifier specifying the natural language for all text in the document except where overridden by language specifications for structure elements or marked content. If this entry is absent, the language is considered unknown. (Optional; PDF 1.3) A Web Capture information dictionary containing state information used by the Acrobat Web Capture (AcroSpider) plugin extension. (Optional; PDF 1.4) An array of output intent dictionaries describing the color characteristics of output devices on which the document might be rendered. (Optional; PDF 1.4) A page-piece dictionary associated with the document. (Optional; PDF 1.5; required if a document contains optional content) The document’s optional content properties dictionary. (Optional; PDF 1.5) A permissions dictionary that specifies user access permissions for the document. (Optional; PDF 1.5) A dictionary containing attestations regarding the content of a PDF document, as it relates to the legality of digital signatures. Gets the KeysMeta for these keys. Pens for all the pre-defined colors. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Gets a pre-defined XPen object. Specifies how the interior of a closed path is filled. Specifies the alternate fill mode. Called the 'odd-even rule' in PDF terminology. Specifies the winding fill mode. Called the 'nonzero winding number rule' in PDF terminology. Represents the combo box field. Initializes a new instance of PdfComboBoxField. Gets or sets the index of the selected item. Gets the KeysMeta of this dictionary type. Predefined keys of this dictionary. The description comes from PDF 1.4 Reference. PDFsharp internal stuff. For more information see Andrew Schulman "Undocumented PDFsharp" :-)) This is an external helper function.