GrapeCity.Documents.Pdf
Defines properties of AcroForm within PDF document.
A set of flags specifying various document-level characteristics related to signature fields.
Gets the object owning this object.
Gets the collection containing document fields.
Gets a value indicating whether the document contains AcroForm fields.
If set, the document contains at least one signature field.
This flag allows a viewer application to enable user interface items (such as menu items or pushbuttons)
related to signature processing without having to scan the entire document for the presence of
signature fields.
If set, the document contains signatures that may be invalidated if the file is saved (written)
in a way that alters its previous contents, as opposed to an incremental update.
Merely updating the file by appending new information to the end of the previous version
is safe (see Section G.6, “Updating Example”).
Viewer applications can use this flag to present a user requesting a full save with an additional
alert box warning that signatures will be invalidated and requiring explicit confirmation before
continuing with the operation.
Represents CheckBox AcroForm field.
Initializes a new instance of the class.
Gets the defining view properties of the button.
Gets or sets the value of .
Gets or sets the default value of .
Represents an item displayed in .
Initializes a new instance of the class.
Initializes a new instance of the class.
The item's text.
Initializes a new instance of the class.
The item's text.
The item's value.
Creates a new object that is a copy of the current instance.
A new object that is a copy of this instance.
Gets or sets the text used to display an item.
Gets or sets the value of item, if not specified then will be used as value.
Base class for choice fields: ComboBox and ListBox.
Initializes a new instance of the class.
Gets the defining view properties of the text field.
Gets the list of items displayed in field.
Gets or sets the index of selected item.
Gets or sets the index of item selected by default.
Gets or sets a value indicating whether 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
Gets or sets a value indicating whether the text entered in the field is spell-checked.
Gets or sets a value indicating whether the new value is committed as soon as a selection is made
with the pointing device.
This option enables applications to perform an action once a selection is made,
without requiring the user to exit the field.
If false, the new value is not committed until the user exits the field.
Represents the ComboBox field.
Initializes a new instance of the class.
Gets or sets the value of ,
value is specified as index of selected item.
Gets or sets the default value of ,
value is specified as index of selected item.
Gets or sets a value indicating whether the combo box includes an editable text box as well as a drop-down list.
Represents the text field divided into as many equally spaced positions, or combs, as the value of MaxLen,
and the text is laid out into those combs.
Initializes a new instance of the class.
Should be implemented by the class owning .
Gets the containing this object.
Represents a collection of objects.
Searches with specified name, search is case insensitive.
The field's name.
Returns found or null if not found.
Gets the with specified name, throws an exception if field not found.
The field's name.
Returns the field with specified name.
Gets a value indicating whether collection contains Signature fields.
Gets the object that owns this collection.
Gets the object that owns this collection.
Gets the object.
Gets the owning this collection.
Defines possible field types.
Button field.
Text field.
Choice field, ComboBox or ListBox.
Signature field.
Represents a collection of objects owned by object.
Gets the object that owns this collection.
Defines possible values of the property.
No flags.
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.
(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 is a set of radio buttons; if clear, the field is a check box.
This flag is meaningful only if the Pushbutton flag is clear.
If set, the field is a pushbutton that does not retain a permanent value.
(PDF 1.5) If set, a group of radio buttons within a radio button field that use the same value
for the on state will turn on and off in unison; that is if one is checked, they are all checked.
If clear, the buttons are mutually exclusive (the same behavior as HTML radio buttons).
If set, the field can 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.
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.
If set, text entered in the field is not spell-checked.
If set, the field does not scroll (horizontally for single-line fields, vertically for multiple-line fields) to accommodate more text than fits within its annotation rectangle.
Once the field is full, no further text is accepted.
Meaningful only if the MaxLen entry is present in the text field dictionary and if the
Multiline, Password, and FileSelect flags are clear.
If set, the field is automatically divided into as many equally spaced positions, or combs,
as the value of MaxLen, and the text is laid out into those combs.
If set, the value of this field should be represented as a rich text string.
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-down list;
if clear, it includes only a drop-down list. This flag is meaningful only if the 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.
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.
If set, the new value is committed as soon as a selection is made with the pointing device.
This option enables applications to perform an action once a selection is made,
without requiring the user to exit the field. If clear,
the new value is not committed until the user exits the field.
Defines AcroForm field.
Indicates whether field's content was changed after loading and it should be rewritten in case of incremental updates.
Initializes a new instance of the class.
Returns an object from collection
which has same DocID as this Field, returns null if there are not one such annotations.
Called when field removed from document.
For internal use.
Returns a value indicating whether the specified flag in is set.
For internal use.
Sets specified flag in to specified value.
Sets the without resetting appearance of linked annotations.
Returns default field value used to initialize and .
Reads "V" and "DV" entries.
Default implementation uses method.
Returns a object which should be mixed with this Field in a single PDF dictionary object.
Gets or sets type of the field.
Gets or sets the field's flags, change this property carefully.
Gets or sets the justification to be used in displaying the field’s text.
Note that this field is used only if is not specified.
Gets the actual justification to be used when displaying the field’s text.
Gets the list of child fields.
Gets the parent field.
Gets the owning this field.
Gets the that owns this object.
Gets the containing this field.
Gets the list of widgets linked with this field.
Gets or sets the field's name.
Gets or sets 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 users with disabilities or for other purposes.
Gets or sets the mapping name to be used when exporting interactive form field data from the document.
Gets the object defining events of this field.
Gets or sets the field's value.
Gets or sets the default field's value.
Gets or sets a value indicating whether 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.
Gets or sets a value indicating whether the field must have a value at the time it is
exported by a action.
Gets or sets a value indicating whether the field must not be exported by a action.
Defines events common for acroform fields with value.
Gets or sets a JavaScript action to be performed when the user types a keystroke into a
text field or combo box or modifies the selection in a scrollable list box.
This action can check the keystroke for validity and reject or modify it.
Gets or sets a JavaScript action to be performed before the field is formatted to display its current value.
This action can modify the field’s value before formatting.
Gets or sets a JavaScript action to be performed when the field’s value is changed.
This action can check the new value for validity.
Gets or sets a JavaScript action to be performed to recalculate the value of this field when
that of another field changes.
Builds default appearance for specified widget.
Draws field's annotation on specified graphics.
Represents the ListBoxField field.
Initializes a new instance of the class.
Gets or sets the index of top visible item.
Gets or sets the indexes of selected items.
Gets or sets the indexes of defaule selected items.
Gets or sets a value indicating whether more than one of the field’s option items may be selected simultaneously.
Represents push button AcroForm field.
Initializes a new instance of the class.
Gets the defining view properties of the button.
Represents group of radio buttons.
Initializes a new instance of the class.
Gets or sets an array of strings containing one entry for each widget annotation.
Defines export values for its constituent radio buttons
Please read more details in PDF specfication.
Gets or sets the value of .
Value can be specified as index of the widget in list,
as string containing name of the widget or as string containing item from array.
Gets or sets the default value of .
Default value can be specified as index of the widget in list,
as string containing name of the widget or as string containing item from array.
Gets or sets a value indicating whether a group of radio buttons within a radio button field
that use the same value for the on state will turn on and off in unison;
that is if one is checked, they are all checked.
If clear, the buttons are mutually exclusive (the same behavior as HTML radio buttons).
Defines possible values of property.
All fields should be processed.
Fields which names are specified in are processed.
Fields which names are NOT specified in are submitted.
Defines range of the objects to be locked when is signed.
Initializes a new instance of the class.
Initializes a new instance of the class.
The type of range.
The list of fields' names to include / exclude.
Enumerates fields processed by this object.
Gets or sets the type of the range.
Gets the list of fields' names which should be included / excluded from processing depending on property.
Represents the signature field.
Initializes a new instance of the class.
Gets the defining view properties of the text field.
Gets or sets the object defining
a set of form fields to be locked when this signature field is signed,
if null then no fields are locked.
Gets or sets the object defining value of this .
Note! Settings this property to null removes signature from document.
Represents the text field.
Initializes a new instance of the class.
Gets or sets the rich text to be displayed in the .
This text can be formatted using html tags, see PDF specification for details.
Note that GcPdf does not automatically regenerates appearance streams for text fields containg RTF text.
Gets or sets the default style string used when the field value is specified using .
See PDF specification for details.
Note that GcPdf does not automatically regenerates appearance streams for text fields containg RTF text.
Gets the defining view properties of the text field.
Gets or sets the value of .
Gets or sets the default value of this ,
applied when the field is reset.
Gets or sets the maximum length of the field’s text, in characters.
Gets or sets a value indicating whether the field can contain multiple lines of text.
Gets or sets a value indicating whether the field is intended for entering a secure password that
should not be echoed visibly to the screen.
Gets or sets a value indicating whether the text entered in the field is spell-checked.
Gets or sets a value indicating whether the field is scrollable to accommodate more text than
fits within its annotation rectangle.
Gets or sets a value indicating whether the value of this field should be represented as a rich text string.
Common interface for and
allows to use it in same way.
Base class for PDF actions which can be performed when user clicks links, document outlines etc.
Returns a value indicating whether this object
points to the object which will be merged during merge operation.
Returns true if all objects referenced by this have DocID equal to
.
Enumerates all nested objects supporting interface,
referenced from this object.
See comments for .
Gets or sets the next or sequence of actions to be performed after this action.
Defines a go-to action changes the view to a specified destination (page, location, and magnification factor),
defined by the object.
Initialize a new instance of the class.
Initialize a new instance of the class.
The object defining the new document view.
Gets or sets the object defining the new document view.
Defines a remote go-to action is similar to an ordinary go-to action
but jumps to a destination in another PDF file instead of the current file.
Initialize a new instance of the class.
Initialize a new instance of the class.
The name of another file.
The object defining the new document view.
A flag specifying whether to open the destination document in a new window.
Initialize a new instance of the class.
The object defining another file.
The object defining the new document view.
A flag specifying whether to open the destination document in a new window.
Gets or sets the object defining the another file.
Gets the object defining the new document view.
Gets a value indicating whether to open the destination document in a new window.
Defines a launch action launches an application or opens or prints a document.
Gets or sets the object defining application to be launched
or the document to be opened or printed.
Gets the object defining windows-specific parameters of the launch action.
Gets or sets a value indicating whether to open the destination document in a new window.
This property is ignored if this action is not a PDF document.
Defines windows-specific launch parameters.
Creates a new object that is a copy of the current instance.
A new object that is a copy of this instance.
Gets or sets the file name of the application to be launched or the document to be opened or printed,
in standard Windows pathname format.
Gets or sets the directory in standard DOS syntax.
Gets or sets the operation to perform.
Gets or sets the parameter to be passed to the application.
Defines possible operations for windows platform.
Open a document.
Print a document.
Represents a hide action, hides or shows one or more s on
screen by setting or clearing their Hidden flag.
Gets or sets an array of objects which are linked with this .
It can be an object or a string defining the fully qualified field name of an
interactive form field whose associated widget annotation or annotations are to be affected.
Gets or sets a flag indicating whether to hide the annotation (if property is true) or show it.
Defines an URI action causes navigation to specified URI.
Initialize a new instance of the class.
Initialize a new instance of the class.
The URI to navigate.
Gets or sets the URI to navigate.
Gets or sets a value indicating whether to track the mouse position when the URI is resolved.
This property applies only to actions triggered by the user’s clicking an annotation;
it is ignored for actions associated with or with a
property.
Defines an action causes a script to be compiled and executed by the JavaScript interpreter.
Initialize a new instance of the class.
Initialize a new instance of the class.
The JavaScript to execute.
Gets or sets the JavaScript to execute.
Base class for and ,
which operates over set of specified fields.
Gets the list of names of fields that should be processed
(or excluded from processing, see ) by this action.
If empty then all fields will be processed.
Gets or sets a value indicating whether to exclude the fields specified in
from processing (by default, this property is false and the specified fields are included).
Defines an action transmits the names and values of selected interactive form fields to a specified
uniform resource locator (URL), presumably the address of a Web server that will process them and send back a response.
Initializes a new instance of the .
Initializes a new instance of the .
The URL of the script at the Web server that will process the submission.
Gets or sets the object defining URL of the script at the Web server that will process the submission.
Gets or sets a value indicating whether the fields without a value should be inclured in request.
Gets or sets a value indicating whether any submitted field values representing dates are converted to
the standard format described in PDF specification.
Gets or sets the format which should be used in request.
Gets or sets additional flags used if is .
Gets or sets additional flags used if is .
Gets or sets additional flags used if is .
Defines possible values of property.
Field names and values are submitted in HTML Form format.
Field names and values are submitted in Forms Data Format (FDF).
Field names and values are submitted as XFDF.
Document is submitted as PDF, using the MIME content type "application/pdf".
Defines possible values of property.
Indicates whether field names and values are submitted using an HTTP GET request,
otherwise they are submitted using a POST request.
Indicates whether the coordinates of the mouse click that caused the submit-form
action are transmitted as part of the form data.
The coordinate values are relative to the upper-left corner of the field’s rectangle.
They are represented in the data in the format
name.x = xval & name.y = yval
where name is the if present; otherwise, name is the field name.
If the value of the is a single space character,
both the name and the dot following it are suppressed, resulting in the format
x = xval & y = yval
Defines possible values of property.
If set, the submitted FDF file includes the contents of all incremental updates to the underlying PDF document,
as contained in the Differences entry in the FDF dictionary.
If clear, the incremental updates are not included.
If set, the submitted FDF file includes all markup annotations in the underlying PDF document.
If clear, markup annotations are not included.
Meaningful only when the flag is set.
If set, it includes only those markup annotations whose matches the name of the current user,
as determined by the remote server to which the form is being submitted.
This allows multiple users to collaborate in annotating a single remote PDF document
without affecting one another’s annotations.
If set, the submitted FDF excludes the F entry.
If set, the F entry of the submitted FDF is a file specification containing an embedded file stream
representing the PDF file from which the FDF is being submitted.
Defines possible values of property.
Indicates whether the PDF document submitted using an HTTP GET request,
otherwise it is submitted using a POST request.
Defines an action resets selected interactive form fields to their default values;
If no default value is defined for a field, its value is cleared.
For fields that can have no value (such as ), the action has no effect.
Defines an action imports Forms Data Format (FDF) data into the document’s interactive form from a specified file.
Initializes a new instance of the .
Initializes a new instance of the .
The object defining FDF file from which to import data.
Gets or sets the FDF file from which to import the data.
Defines an action performs some viewer application action: Go to next / previous page, etc.
Go to the next page of the document.
Go to the previous page of the document.
Go to the first page of the document.
Go to the last page of the document.
Initializes a new instance of the .
Initializes a new instance of the .
The name of the action.
Gets or sets the name of action.
Specifies the possible highlighting modes for various annotations, etc.
No highlighting.
Invert the contents of the annotation rectangle.
Invert the annotation’s border.
Display the annotation as if it were being pushed below the surface of the page.
Represents a collection of objects owned by the object.
Gets the object that owns this collection.
Gets the object that owns this collection.
Specifies the various characteristics of an .
Empty.
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
appearance dictionary, if any.
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.
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.
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.
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.
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.
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.
This flag is ignored for widget annotations; its function is subsumed by the ReadOnly flag of the associated form field.
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.
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.
Do not allow the contents of the annotation to be modified by the user.
This flag does not restrict deletion of the annotation or changes to other annotation properties,
such as position and size.
Specifies the possible line ending styles.
No line ending.
A square filled with the annotation’s interior color, if any.
A circle filled with the annotation’s interior color, if any.
A diamond shape filled with the annotation’s interior color, if any.
Two short lines meeting in an acute angle to form an open arrowhead.
Two short lines meeting in an acute angle as in the OpenArrow style and connected by a third line to form
a triangular closed arrowhead filled with the annotation’s interior color, if any.
A short line at the endpoint perpendicular to the line itself.
Two short lines in the reverse direction from OpenArrow.
A triangular closed arrowhead in the reverse direction from ClosedArrow.
A short line at the endpoint approximately 30 degrees clockwise from perpendicular to the line itself
The abstract base class for all PDF annotation types.
Contains unsupported properties of annotation dictionary.
Indicates whether annotation's content was changed after loading and PDF dictionary representing its content
should be rewritten in case of incremental updates.
Indicates whether appearance properties (apperance streams, default appearance string etc) should be auto generated
for this annotation when document saved.
Initializes a new instance of the class.
Gets a value indicating whether to use property to store .
True by default, can be overriden in descendant class, overrides it for example.
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.
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.
Gets or sets the annotation's color, 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.
Gets or sets the object defining annotation's border.
Gets or sets the 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 pop-up window that appears when the annotation is opened.
Called after reading annotation from PDF stream when it
added to the page, used to update its coords so they become relative
to the top-left corner of the page.
Builds widgets apperance streams and other appearance properties (like ).
Returns a value indicating whether the method should be automatically called
for this when document is saved.
Called when property affecting annotation's appearance was changed.
This method sets to true, so annotation's appearance
properties will be automatically regenerated when document saved.
Called when property defining annotation's appearance was changed.
This method sets to false so annotation's appearance
properties will NOT automatically regenerated.
Writes dictinary properties common for all annotation, specified on the
level.
Tries to parse default appearance string and extract font, font size and font color from it.
If is false then font will not be parsed and always will be null
(it increases performance).
Gets a value indicating whether the annotation should be drawn over page content,
some annotations like with
==
should be rendered before page content.
Gets or sets the annotation rectangle, defining the location of the annotation on a page.
Gets or sets the flags specifying various characteristics of the annotation.
Gets the list of embedded files associated with this .
Gets the owning this annotation.
Gets the containing this object.
Gets or sets the annotation name, a text string uniquely identifying it among all annotations on its page.
Gets the object that allows to define this annotation's appearance streams.
Gets or sets the annotation’s appearance state, which selects the applicable appearance stream
from an appearance subdictionary.
See PDF specification for more details.
Gets or sets a value indicating whether the annotation can be deleted or its properties (including position and size) can be 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.
Represents the appearance of an annotation in normal, rollover and down states.
In the simplest case the appearance can be defined by a single
specified by the property.
In more complex cases it can be defined as a subdictionary
specified by the property.
For example, an annotation representing an interactive check box might have two appearance states named On and Off.
See PDF specification for details.
Clears all defined appearances.
Gets the names of the appearance streams specified for the AnnotationBase
A string array containing the appearance streams' names.
Gets the name of the appearance state that is used to show
RadioButtonField or CheckBoxField in the checked state.
The name of the checked appearance state.
Gets the object owning this object.
Gets or sets the that is used when the widget has separate states.
Gets or sets the object for a specified state.
The state of the annotation.
The associated with the specified state.
Represents a PDF Appearance Streams object.
Clears all appearances.
Gets the object owning this object.
Gets the object defining normal appearance,
used when the annotation is not interacting with the user.
This appearance is also used for printing the annotation.
Gets the object defining rollover appearance,
used when the user moves the cursor into the annotation’s active area without pressing the mouse button.
Gets the object defining down appearance,
used when the mouse button is pressed or held down within the annotation’s active area.
Defines possible border styles for fields.
No border.
Solid border.
Dashed border.
Beveled, a simulated embossed rectangle that appears to be raised above the surface of the page.
Inset, a simulated engraved rectangle that appears to be recessed below the surface of the page.
Underline, a single line along the bottom of the annotation rectangle.
Value is unknown.
Defines properties of the annotation's border.
Copies all property values from another object.
Note! This method does not raise event.
The source object.
Gets or sets the border's width in points (1/72 inch).
Gets or sets the border style.
Gets or sets the dash pattern, used if == .
Gets or sets the border color.
Enumerates the possible types of border effects.
No effect.
The border should appear "cloudy".
Represents an effect to be applied to the border of an annotations.
Copies all property values from another object.
Note! This method does not raise event.
The source object.
Gets or sets a number describing the intensity of the effect. Suggested values range from 0 to 2.
Gets or sets the border effect type.
Represents a circle annotation, which displays a circle on a page.
When opened, they display a pop-up window containing the text of the associated note.
Specifies the type of attachment icon to use.
Paper Clip attachment icon.
Pushpin attachment icon.
Tag attachment icon.
Graph attachment icon.
Represents a reference to a file which typically is embedded in the PDF file.
Initializes a new instance of the class.
Gets or sets the type of the icon used to display the annotation.
Gets or sets the object that defines the referenced file.
Represents a free text annotation that displays text directly on a page.
Unlike an ordinary text annotation (see ),
a free text annotation has no open or closed state.
Instead of being displayed in a pop-up window, the text is always visible.
Gets or sets the structure that defines
the numerical differences between two rectangles:
the and an inner rectangle contained within that rectangle.
The inner rectangle is where the ’s text should be displayed.
Note that if this rectangle is not specified then
is used as the text rectangle.
Gets or sets the default appearance string containing a sequence of valid page-content graphics
or text state operators that define such properties as the field’s text size and color.
See PDF specification for more details.
Gets or sets the justification to be used in displaying the annotation’s text.
See PDF specification for details.
Gets or sets the rich text to be displayed in the annotation.
This text can be formatted using html tags, see PDF specification for details.
Gets or sets the annotation color.
Gets or sets the default style string.
See PDF specification for details.
Gets or sets an array of four or six numbers specifying a callout line attached to the free text annotation.
Six numbers [ x1 y1 x2 y2 x3 y3 ] represent the starting, knee point, and ending coordinates of the line in default user space.
Four numbers [ x1 y1 x2 y2 ] represent the starting and ending coordinates of the line.
Gets or sets the line width in points.
Gets or sets the line dash pattern. Null means a solid line.
Gets or sets the style of end callout line.
Represents a line annotation, that displays a single straight line on a page.
When opened, it displays a pop-up window containing the text of the associated note.
Initializes a new instance of the class.
Gets or sets the line width in points.
Gets or sets the line dash pattern. Null means a solid line.
Gets the list of array of points each array representing a stroked path.
Specifies the possible positions of a text for .
Text is not shown.
Text is centered inside the line.
Text is on top of the line.
Represents a line annotation, that displays a single straight line on a page.
When opened, it displays a pop-up window containing the text of the associated note.
Initializes a new instance of the class.
Gets or sets the start point of the line.
Gets or sets the end point of the line.
Gets or sets the line width in points.
Gets or sets the line dash pattern. Null means a solid line.
Gets or sets the style of line start.
Gets or sets the style of line end.
Gets or sets the interior color with which to fill the annotation’s line endings.
Gets or sets the length of leader lines in default user space that extend from each endpoint of the line perpendicular to the line itself.
A positive value means that the leader lines appear in the direction that is clockwise when traversing
the line from its starting point to its ending point.
A negative value indicates the opposite direction.
Gets or sets a non-negative number representing the length of leader line extensions that extend
from the line proper 180 degrees from the leader lines.
Gets or sets a non-negative number representing the length of the leader line offset,
which is the amount of empty space between the endpoints of the annotation and the beginning
of the leader lines.
Gets or sets the annotation's text positioning.
Gets or sets the horizontal offset along the annotation line from its midpoint,
with a positive value indicating offset to the right and a negative value indicating offset to the left.
Gets or sets the vertical offset perpendicular to the annotation line, with a positive value
indicating a shift up and a negative value indicating a shift down.
Represents a hypertext link.
Initializes a new instance of the class.
Initializes a new instance of the class.
The bounds of the on the containing page.
The to be displayed when the annotation is activated.
Initializes a new instance of the class.
The bounds of the on the containing page.
The to be activated when the annotation is activated.
Gets or sets the to be displayed when this is activated.
If both this property and are specified, then takes precedence
and will be written into the PDF file.
Gets or sets the to be performed when this is activated.
If both and this property are specified, then this property takes precedence
and will be written into the PDF file.
Gets or sets the annotation’s highlighting mode.
Specifies the possible relationships between related annotations.
The current annotation is a reply to a referenced annotation.
The current annotation and a referenced annotation is a single group.
The abstract base class for annotations that are used primarily to mark up PDF documents.
Initializes a new instance of the class.
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 the text to be displayed in the pop-up window when the annotation is opened.
This text can be formatted using html tags, see PDF specification for details.
Gets or sets the date and time when the annotation was created.
Gets or sets the text representing a short description of the subject being addressed by the annotation.
Gets or sets the annotation referenced by this annotation.
Gets or sets the relationship (reference type) between this annotation and the annotation specified by the property.
The referenced annotation should be on the same page with the current annotation.
Gets or sets the annotation for entering or editing text associated with this annotation.
Setting this property changes the property.
A separate allows to define additional properties of
the popup window: color, position etc.
Gets or sets the annotation color,
it used as color of popup window, lines color etc.
Represents a polygon annotation that displays a polygon on a page.
When opened, it displays a pop-up window containing the text of the associated note.
Initializes a new instance of the class.
Gets the object defining the effect applied to the polygon.
Base class for and .
Initializes a new instance of the class.
Gets or sets the points of polygon or polyline.
Gets or sets the line width in points.
Gets or sets the line dash pattern. Null means a solid line.
Represents a polyline annotation.
When opened, it displays a pop-up window containing the text of the associated note.
Gets or sets the style of line start.
Gets or sets the style of line end.
Gets or sets the interior color with which to fill the annotation’s line endings.
The base class for annotations which are used primarily to mark up PDF documents.
Gets the parent of the current annotation.
This property changes when the is changed.
Gets or sets a value specifying whether the pop-up annotation should initially
be displayed open.
Gets or sets the popup window color.
Represents a line annotation, that displays a single straight line on a page.
When opened, it displays a pop-up window containing the text of the associated note.
Initializes a new instance of the class.
Gets a list of structures defining the annotation area.
If not empty, these quadrilaterals denote the content region that is intended to be removed.
If this entry is empty, the entry denotes the content region that is intended to be removed.
Gets or sets the overlay fill color with which to fill the redacted region after the affected
content has been removed.
Gets or sets the overlay text that should be drawn over the redacted region
after the affected content has been removed.
Gets or sets a value indicating whether the text specified by should be repeated
to fill the redacted region after the affected content has been removed.
Gets or sets the default appearance string containing a sequence of valid page-content graphics
or text state operators that define such properties as the overlay text size and color.
See PDF specification for more details.
Gets or sets the justification to be used in displaying the overlay text.
See PDF specification for details.
Gets or sets the outline color used to highlight annotation's rectangle.
Gets or sets the color used to fill annotation's rectangle.
Specifies the predefined icons used by .
The speaker icon.
The microphone icon.
The "ear" icon.
The is analogous to a text annotation except that instead of a text note,
it contains sound recorded from the computer’s microphone or imported from a file.
Gets or sets a string specifying the name of an icon used to display the annotation.
The PDF specification provides a predefined set of icons, those are provided by the class.
Gets or sets a defining the sound to be played when the annotation is activated.
Represents a square annotation which displays a rectangle on a page.
When opened, a square annotation displays a pop-up window containing the text of the associated note.
Initializes a new instance of the class.
Gets the object defining effect applied to the annotation.
Gets or sets the line width in points.
Gets or sets the line dash pattern. Null means a solid line.
Gets or sets the fill color.
Specifies the possible icons used to display a .
Approved icon.
AsIs icon.
Confidential icon.
Departmental icon.
Draft icon.
Experimental icon.
Expired icon.
Final icon.
ForComment icon.
ForPublicRelease icon.
NotApproved icon.
NotForPublicRelease icon.
Sold icon.
TopSecret icon.
Represents an annotation that displays text or graphics
intended to look as if they were stamped on the page with a rubber stamp.
Initializes a new instance of the class.
Gets or sets a string specifying the name of an icon used to display the annotation.
The PDF specification provides a predefined set of icons, those are provided by the enumeration.
In practice though this entry often contains names of custom icons specific to the application that created the document,
hence this property is a string so it can accommodate arbitrary values.
To assign a predefined icon, use code like the following:
Icon = StampAnnotationIcon.Approved.ToString();
Gets or sets a font to draw the stamp.
Gets or sets a value indicating whether to show on the stamp.
Gets or sets a value indicating whether to show on the stamp.
Gets or sets the format which should be used to display .
Gets or sets the border width.
Specifies the possible icons used to display a .
Note icon.
Comment icon.
Key icon.
Help icon.
New paragraph icon.
Paragraph icon.
Insert icon.
Represents a sticky note attached to a point in a PDF document.
Gets or seta a flag specifying whether the annotation should initially be displayed open.
Gets or sets the type of the icon used to display the annotation.
Defines possible text markup types.
Highlighting markup.
Underline markup.
Squiggly markup.
Strikeout markup.
appear as highlights, underlines, strikeouts, or jagged (“squiggly”) underlines in the text of a document.
Initializes a new instance of the class.
Initializes a new instance of the class.
Gets or sets the markup type.
Gets a list of structures defining the markup area.
Defines a graphics that are expected to be printed at a fixed size and position on a page,
regardless of the dimensions of the printed page.
Initializes a new instance of the class.
Gets or sets the text of ,
if both and are specified then
is used as watermark content.
Gets or sets the object defining the text formatting.
Gets or sets the image if ,
if both and are specified then
is used as watermark content.
Gets or sets the matrix used to transform the annotation’s rectangle before rendering.
Gets or sets the amount to translate the associated content horizontally,
as a percentage of the width of the target media (or if unknown,
the width of the page’s MediaBox). 1.0 represents 100% and 0.0 represents 0%.
Negative values are not recommended, since they may cause content to be drawn off the page.
Gets or sets the amount to translate the associated content vertically, as a percentage of
the height of the target media (or if unknown, the height of the page’s MediaBox).
1.0 represents 100% and 0.0 represents 0%. Negative values are not recommended,
since they may cause content to be drawn off the page.
Specifies the relative positions of text and image in an annotation.
No image; caption only.
No caption; image only.
Caption below the image.
Caption above the image.
Caption to the right of the image.
Caption to the left of the image.
Caption overlaid directly on the image.
Specifies the circumstances under which the image should be scaled inside the button rectangle.
Always scale.
Scale only when the image is bigger than the button rectangle.
Scale only when the image is smaller than the button rectangle.
Never scale.
Represents the appearance attributes for a
used when the state of a button field is changed: user presses the button, mouse is over the button.
Gets or sets the button caption.
Gets or sets the image, it can be specified as or as .
Represents image alignment within a rectangle.
Copies all property values from another object.
Note! This method does not raise event.
The source object.
Gets or sets the scaling mode.
Gets or sets a value indicating whether an image should be scaled proportionally.
Gets or sets the position of an image.
The two numbers between 0.0 and 1.0 indicate the fraction of leftover space to allocate at the left and bottom of an image.
A value of (0.0, 0.0) positions the image at the bottom-left corner of the button rectangle.
A value of (0.5, 0.5) centers it within the rectangle.
This value is used only if the image is scaled proportionally.
Gets or sets a value indicating whether a button's appearance should be scaled to fit fully
within the bounds of the annotation without taking into consideration the line width of the border.
Represents the appearance of a when it is linked with a pushbutton or a signature field.
Initializes a new instance of the class.
Gets or sets the button's caption.
Gets or sets the button’s image, it can be specified as or as .
Gets or sets a value indicating how to position the button's caption relative to image.
Gets the object defining the button attributes
used when the mouse button is pressed within its active area.
Gets the object defining the button attributes
used when the user rolls the cursor into its active area without pressing the mouse button.
Gets the object defining attributes of image scaling.
Represents a widget annotation used in interactive forms to represent the appearance of fields and
to manage user interactions.
Initializes a new instance of the class.
Initializes a new instance of the class.
The page containing created annotation.
The annotation's bounds on the page.
Gets or sets the default appearance string containing a sequence of valid page-content graphics
or text state operators that define such properties as the field’s text size and color.
See PDF specification for more details.
Gets or sets the justification to be used in displaying the annotation’s text.
Note that if this property is not specified (the value is null) then is used.
See PDF specification for details.
Gets the actual justification to be used in displaying the annotation’s text.
Gets or sets the name of the annotation.
If is used with then
is used as a value.
Gets the associated with this annotation.
Gets or sets the annotation’s highlighting mode.
Gets or sets the number of degrees by which the annotation is rotated counterclockwise
relative to the page. The value must be a multiple of 90.
Gets or sets the annotation's background color.
Gets or sets the object defining the text formatting.
Gets the object defining events of this annotation.
Gets the object defining view of the widget when
it is linked with Push Button or Signature fields.
Gets or sets a value indicating whether the contents of the annotation can be modified by the user.
This flag does not restrict deletion of the annotation or changes to other annotation properties,
such as position and size.
Defines events common for all acroform fields.
Gets or sets an action to be performed when the annotation is activated.
Gets or sets an action to be performed when the mouse enters the field’s active area.
Gets or sets an action to be performed when the cursor exits the field’s active area.
Gets or sets an action to be performed when the mouse button is pressed inside the field’s active area.
Gets or sets an action to be performed when the mouse button is released inside the field’s active area.
Gets or sets an action to be performed when the annotation receives the input focus.
Gets or sets an action to be performed when the annotation loses the input focus.
Gets or sets an action to be performed when the page containing the annotation is opened
(for example, when the user navigates to it from the next or previous page or by means of a link annotation
or outline item).
Gets or sets an action to be performed when the page containing the annotation is closed
(for example, when the user navigates to the next or previous page, or follows a link annotation or outline item).
Gets or sets an action to be performed when the page containing the annotation becomes visible in
the viewer application’s user interface.
Gets or sets an action to be performed when the page containing the annotation is no longer visible in
the viewer application’s user interface.
Represents a bead of a PDF article thread.
The object that owns this .
The object where this is displayed.
The next .
The previous .
Initializes a new instance of the class.
Initializes a new instance of the class.
The bead's page.
Initializes a new instance of the class.
The bead's page.
The bead's bounds on the page.
Gets the containing this bead.
Gets the object containing this object.
Gets or sets the object where this is displayed.
Gets or sets the location of this on the page.
Represents a PDF article thread.
The first in the thread.
Initializes a new instance of the class.
Gets or sets a object defining first bead in the thread.
Gets a that owns this object.
Gets a collection of the thread's beads.
Gets or sets a object
containing information about the thread, such as its title, author, and creation date.
Gets or sets a object
containing information about the thread, such as its title, author, and creation date.
Represents a collection of objects owned by an .
Enumerates items in the collection, returns item where enumeration was stopped,
i.e. returned false, and null if all collection was enumerated.
Copies the entire collection into a one-dimensional array,
starting at the specified index in the target array.
The one-dimensional array that is the destination of the elements copied from the collection.
The zero-based index in the array at which copying begins.
Gets the number of elements in the collection.
Gets or sets the element at a specified index.
The zero-based index of the element to get or set.
The element at the specified index.
Removes all elements from the collection.
Adds an object to the end of the collection.
The object to be added to the end of the collection.
Inserts an element into the collection at the specified index.
The zero-based index at which item should be inserted.
The object to insert.
Removes the first occurrence of a specific object from the collection.
The object to remove from the collection.
true if item was actually removed, false otherwise.
Removes the element at the specified index of the collection.
The zero-based index of the element to remove.
Determines whether an element is in the collection.
The object to locate in the collection.
true if item is found in the collection; otherwise, false.
Searches for the specified object and returns the zero-based index of the
first occurrence within the entire collection.
The object to locate in the collection.
The zero-based index of the first occurrence of item within the entire collection, if found; otherwise, -1.
Represets the Associated Files collection.
This is collection of objects associated with some document object.
The AIFF stream reader.
Note! AIFC (compressed AIFF) not supported.
Parses AIFF stream and returns object describing it.
Methods for converting between IEEE 80-bit extended double precision
and standard C# double precision.
Converts a C# double precision number to an 80-bit
IEEE extended double precision number (occupying 10 bytes).
The double precision number to convert to IEEE extended.
An array of 10 bytes containing the IEEE extended number.
Converts an IEEE 80-bit extended precision number to a
C# double precision number.
The 80-bit IEEE extended number (as an array of 10 bytes).
A C# double precision number that is a close representation of the IEEE extended number.
Summary description for WaveFormatEncoding.
WAVE_FORMAT_UNKNOWN, Microsoft CorporationWAVE_FORMAT_PCM Microsoft CorporationWAVE_FORMAT_ADPCM Microsoft CorporationWAVE_FORMAT_IEEE_FLOAT Microsoft CorporationWAVE_FORMAT_VSELP Compaq Computer Corp.WAVE_FORMAT_IBM_CVSD IBM CorporationWAVE_FORMAT_ALAW Microsoft CorporationWAVE_FORMAT_MULAW Microsoft CorporationWAVE_FORMAT_DTS Microsoft CorporationWAVE_FORMAT_DRM Microsoft CorporationWAVE_FORMAT_WMAVOICE9 WAVE_FORMAT_OKI_ADPCM OKIWAVE_FORMAT_DVI_ADPCM Intel CorporationWAVE_FORMAT_IMA_ADPCM Intel CorporationWAVE_FORMAT_MEDIASPACE_ADPCM VideologicWAVE_FORMAT_SIERRA_ADPCM Sierra Semiconductor Corp WAVE_FORMAT_G723_ADPCM Antex Electronics Corporation WAVE_FORMAT_DIGISTD DSP Solutions, Inc.WAVE_FORMAT_DIGIFIX DSP Solutions, Inc.WAVE_FORMAT_DIALOGIC_OKI_ADPCM Dialogic CorporationWAVE_FORMAT_MEDIAVISION_ADPCM Media Vision, Inc.WAVE_FORMAT_CU_CODEC Hewlett-Packard Company WAVE_FORMAT_YAMAHA_ADPCM Yamaha Corporation of AmericaWAVE_FORMAT_SONARC Speech CompressionWAVE_FORMAT_DSPGROUP_TRUESPEECH DSP Group, Inc WAVE_FORMAT_ECHOSC1 Echo Speech CorporationWAVE_FORMAT_AUDIOFILE_AF36, Virtual Music, Inc.WAVE_FORMAT_APTX Audio Processing TechnologyWAVE_FORMAT_AUDIOFILE_AF10, Virtual Music, Inc.WAVE_FORMAT_PROSODY_1612, Aculab plcWAVE_FORMAT_LRC, Merging Technologies S.A. WAVE_FORMAT_DOLBY_AC2, Dolby LaboratoriesWAVE_FORMAT_GSM610, Microsoft CorporationWAVE_FORMAT_MSNAUDIO, Microsoft CorporationWAVE_FORMAT_ANTEX_ADPCME, Antex Electronics CorporationWAVE_FORMAT_CONTROL_RES_VQLPC, Control Resources Limited WAVE_FORMAT_DIGIREAL, DSP Solutions, Inc. WAVE_FORMAT_DIGIADPCM, DSP Solutions, Inc.WAVE_FORMAT_CONTROL_RES_CR10, Control Resources LimitedWAVE_FORMAT_MPEG, Microsoft Corporation WAVE_FORMAT_MPEGLAYER3, ISO/MPEG Layer3 Format Tag WAVE_FORMAT_GSMWAVE_FORMAT_G729WAVE_FORMAT_G723WAVE_FORMAT_ACELP
WAVE_FORMAT_RAW_AAC1
Windows Media Audio, WAVE_FORMAT_WMAUDIO2, Microsoft Corporation
Windows Media Audio Professional WAVE_FORMAT_WMAUDIO3, Microsoft Corporation
Windows Media Audio Lossless, WAVE_FORMAT_WMAUDIO_LOSSLESS
Windows Media Audio Professional over SPDIF WAVE_FORMAT_WMASPDIF (0x0164)
Advanced Audio Coding (AAC) audio in Audio Data Transport Stream (ADTS) format.
The format block is a WAVEFORMATEX structure with wFormatTag equal to WAVE_FORMAT_MPEG_ADTS_AAC.
The WAVEFORMATEX structure specifies the core AAC-LC sample rate and number of channels,
prior to applying spectral band replication (SBR) or parametric stereo (PS) tools, if present.
No additional data is required after the WAVEFORMATEX structure.
http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspxSource wmCodec.h
MPEG-4 audio transport stream with a synchronization layer (LOAS) and a multiplex layer (LATM).
The format block is a WAVEFORMATEX structure with wFormatTag equal to WAVE_FORMAT_MPEG_LOAS.
The WAVEFORMATEX structure specifies the core AAC-LC sample rate and number of channels,
prior to applying spectral SBR or PS tools, if present.
No additional data is required after the WAVEFORMATEX structure.
http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspxNOKIA_MPEG_ADTS_AACSource wmCodec.hNOKIA_MPEG_RAW_AACSource wmCodec.hVODAFONE_MPEG_ADTS_AACSource wmCodec.hVODAFONE_MPEG_RAW_AACSource wmCodec.h
High-Efficiency Advanced Audio Coding (HE-AAC) stream.
The format block is an HEAACWAVEFORMAT structure.
http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspxWAVE_FORMAT_DVMWAVE_FORMAT_VORBIS1 "Og" Original stream compatibleWAVE_FORMAT_VORBIS2 "Pg" Have independent headerWAVE_FORMAT_VORBIS3 "Qg" Have no codebook headerWAVE_FORMAT_VORBIS1P "og" Original stream compatibleWAVE_FORMAT_VORBIS2P "pg" Have independent headereWAVE_FORMAT_VORBIS3P "qg" Have no codebook headerWAVE_FORMAT_EXTENSIBLE
Base class for all AudioStream classes.
Derives from stream.
All read and seek operations aligned to BitsPerSample / 8.
Defines the Wave format.
The format type.
The number of channels.
The sample rate.
The average number of bytes used per second.
The block alignment.
The number of bits per sample (usually 16 or 32, sometimes 24 or 8).
Can be 0 for some codecs.
The offset of audio data from the start of the stream.
The length of audio data.
The WAV stream reader.
Parses WAV stream and returns object describing it.
The logical order of bits within a byte.
1 = MSB-to-LSB
2 = LSB-to-MSB (flipped)
Uncompressed mode flag: 1 if uncompressed, 0 if not.
EOL padding flag: 1 if fill bits have been added before an EOL such
that the EOL ends on a byte boundary, 0 otherwise.
Coding dimensionality: 1 for 2-dimensional, 0 for 1-dimensional.
Invokes the superclass method and then sets instance variables on
the basis of the metadata set on this decompressor.
@param fillOrder
The fill order of the compressed data bytes.
@param w
@param h
Specifies text justification to be used when displaying variable text in ,
etc.
Text is left justified.
Text is centered.
Text is right justified.
Defines full ID of PDF object including ID and generation.
The empty structure.
The object's id.
The object's generation.
Initializes a new instance of the structure.
Returns a value indicating whether this struct contains empty object ID.
For internal use.
For internal use.
Base abstract class for classes representing content streams in a .
The content of this , initialized during PDF parsing.
and created from
when requested.
Indicates whether object was changed after loading.
Gets the System.IO.Stream object containing the content of this .
It is the caller's responsibility to dispose the returned stream after usage.Important: this method returns null if the current ContentStream object is empty.
Base class for classes defining destination within document.
Creates copy of this object during documents merging.
indicates whether current is used to
point a position within another document.
Note! This method can return null indicating that this
points to object skipped during merge.
Returns a value indicating whether this object
points to the object which will be merged during merge operation.
Encodes content of object, as example:
[ R 0 1 /XYZ 1 ]
Returns true if all objects referenced by this have DocID equal to
.
A destination defines a particular view of a document, consisting of the following items:
- The page of the document to be displayed
- The location of the document window on that page
- The magnification(zoom) factor to use when displaying the page
Page can be specified as integer - page's index, or as object.
Initialize a new instance of the class.
The page index.
Initialize a new instance of the class.
The page.
Creates copy of this object and copies all properties except for page.
Called when loaded and its page specified via reference.
Converts Y coord when Destination is parsed, called only if is a object.
Converts Y coord when Destination is serialized.
Gets the index of the page where points, returns null
if page was specified as object.
Gets the object where points, returns null
if page was specified as page index in the document.
Display the page designated by page, with the coordinates (left, top) positioned at the upper-left corner
of the window and the contents of the page magnified by the factor zoom.
A null value for any of the parameters left, top, or zoom specifies that the current value
of that parameter is to be retained unchanged. A zoom value of 0 has the same meaning as a null value.
Initialize a new instance of the class.
The page index.
The left coordinate of the document window.
The top coordinate of the document window.
The zoom factor of the document window.
Initialize a new instance of the class.
The page index.
The left coordinate of the document window.
The top coordinate of the document window.
Initialize a new instance of the class.
The page index.
The top coordinate of the document window.
Initialize a new instance of the class.
The page index.
Initialize a new instance of the class.
The page.
The left coordinate of the document window.
The top coordinate of the document window.
The zoom factor of the document window.
Initialize a new instance of the class.
The page.
The left coordinate of the document window.
The top coordinate of the document window.
Initialize a new instance of the class.
The page.
The top coordinate of the document window.
Initialize a new instance of the class.
The page.
Gets the left coordinate of the document window, if null then unchanged.
Gets the top coordinate of the document window, if null then unchanged.
Gets the zoom factor of the document window, if null or zero then unchanged.
Display the page designated by page, with its contents magnified just enough to fit the entire page
within the window both horizontally and vertically.
If the required horizontal and vertical magnification factors are different, use the smaller of the two,
centering the page within the window in the other dimension.
Initialize a new instance of the class.
The page index.
Initialize a new instance of the class.
The page.
Display the page designated by page, with the vertical coordinate top positioned at the top edge of the window
and the contents of the page magnified just enough to fit the entire width of the page within the window.
A null value for top specifies that the current value of that parameter is to be retained unchanged.
Initialize a new instance of the class.
The page index.
The top coordinate of the document window.
Initialize a new instance of the class.
The page.
The top coordinate of the document window.
Gets the top coordinate of the document window, if null then unchanged.
Display the page designated by page, with the horizontal coordinate left positioned at the left edge of the window
and the contents of the page magnified just enough to fit the entire height of the page within the window.
A null value for left specifies that the current value of that parameter is to be retained unchanged.
Initialize a new instance of the class.
The page index.
The left coordinate of the document window.
Initialize a new instance of the class.
The page.
The left coordinate of the document window.
Gets the left coordinate of the document window, if null then unchanged.
Display the page designated by page, with its contents magnified just enough to fit the rectangle
specified by the coordinates left, bottom, right, and topentirely within the window both horizontally and vertically.
If the required horizontal and vertical magnification factors are different, use the smaller of the two,
centering the rectangle within the window in the other dimension.
Initialize a new instance of the class.
The page index.
The rectangle to fit.
Initialize a new instance of the class.
The page.
The rectangle to fit.
Gets the rectangle to fit.
Display the page designated by page, with its contents magnified just enough to fit its bounding box
entirely within the window both horizontally and vertically.
If the required horizontal and vertical magnification factors are different, use the smaller of the two,
centering the bounding box within the window in the other dimension.
Initialize a new instance of the class.
The page index.
Initialize a new instance of the class.
The page.
Display the page designated by page, with the vertical coordinate top positioned at the top edge of the window
and the contents of the page magnified just enough to fit the entire width of its bounding box within the window.
A null value for top specifies that the current value of that parameter is to be retained unchanged.
Initialize a new instance of the class.
The page index.
The top coordinate of the document window.
Initialize a new instance of the class.
The page.
The top coordinate of the document window.
Gets the top coordinate of the document window, if null then unchanged.
Display the page designated by page, with the horizontal coordinate left positioned at the left edge of the window and
the contents of the page magnified just enough to fit the entire height of its bounding box within the window.
A null value for left specifies that the current value of that parameter is to be retained unchanged.
Initialize a new instance of the class.
The page index.
The left coordinate of the document window.
Initialize a new instance of the class.
The page.
The left coordinate of the document window.
Gets the left coordinate of the document window, if null then unchanged.
Defines destination as reference to another destination, referenced destination
can be in Dests dictionary of PDF document or in Dests subtree of Name Tree.
Initialize a new instance of the class.
The name of referenced destination.
Specifies where referenced destination is in Dests dictionary of document or in Dests subtree of Name Tree.
Gets the name of referenced destination in the Dests dictionary of PDF document.
Gets a value indicating whether this references
destination in Dests dictionary of PDF document or in Dests subtree of document's Name Tree.
If this property is null then place of referenced destination determinated on the base of
*current* document.
Base abstract class for classes representing a Dests entry in PDF catalog.
Represents Dests entry in document's catalog.
Represents dictionary of document's named destinations.
This object saved to PDF as Dests entry in Document Catalog or
as Dests entry in Names dictinary of Document Catalog.
Represents Dests entry in the Names dictionary of Document Catalog.
Contains information about the document. This information includes
the document author, title, keywords, etc.
You don't have to provide this information, it is optional. If provided,
it is saved with the document and is available to the reader application.Some reader applications may allow users to search documents by author,
subject, or keyword.
Initializes a new instance of the class.
Gets or sets the title of the document.
Gets or sets the name of the application that created the original document.
Gets or sets the name of the application that created the document.
Gets or sets the name of the person that created the document.
Gets or sets the subject of the document.
Gets or sets keywords (separated by comma) associated with the document.
Gets or sets the creation date and time of the document.
Gets or sets the date and time the document was most recently modified.
Resets properties of this object to default values.
Represents dictionary of document level file attachments.
Represents the EmbeddedFiles entry of Names dictionary.
Represents embedded file stream in PDF.
Gets the containing content of this ,
stream should be disposed after usage.
NOTE! Method can return null if this is empty.
Gets or sets the date and time when the embedded file was created.
Gets or sets the date and time when the embedded file was last modified.
Gets or sets a 16-byte string that is the checksum of the bytes of the uncompressed embedded file.
The checksum is calculated by applying the standard MD5 message-digest algorithm
to the bytes of the embedded file stream.
Checksum calculated automatically when created with
or methods.
Gets or sets the size of the embedded file, in bytes.
Gets or sets the file's MIME type.
Creates a new instance of from the specified file name.
The file data will be read when the GcPdfDocument is saved.
The owner document.
The file name.
The newly created object.
Creates a new instance of from the specified array of bytes.
The owner document.
The file data.
The newly created object.
Represents an exception that occurred while processing a PDF document.
Initializes a new instance of the class.
Initializes a new instance of the class.
Gets the currently executed operations' stack, see for details.
Represents an exception that occurred if an invalid password was used while parsing PDF content.
Initializes a new instance of the class.
Defines ID of PDF file.
Initializes a new instance of the class.
Initializes a new instance of the class.
The permanent ID.
The changing ID.
Creates a new object that is a copy of the current instance.
A new object that is a copy of this instance.
Gets or sets 16-byte array defining a permanent identifier based on the contents of the file at the time it was originally
created and does not change when the file is incrementally updated.
Gets or sets 16-byte array defining a changing identifier based on the file’s contents at the time it was last updated.
Contains string constants with predefined values for property.
Constant shall be used if this is the original
source material for the associated content.
Constant shall be used if this represents information
used to derive a visual presentation, such as for a table or a
graph.
Constant shall be used if this is an alternative
representation of content, for example audio.
Constant shall be used if this file specification represents a
supplemental representation of the original source or data that
may be more easily consumable(e.g.A MathML version of an
equation).
Note. Supplement is to be used only when the file is not the
source or an alternative.
Constant shall be used when the relationship is not known
or cannot be described using one of the other values.
NOTE 2 Unspecified is to be used only when no other value correctly
reflects the relationship.
Represents a PDF File Specification.
The complex architecture of this class is based on the PDF Specification,
for full details please consult that spec.
In many practical scenarios while generating PDFs, using the provided static ctors
on the derived classes (, etc.)
may be enough though.
Initializes a new instance of the class.
Gets a value indicating that this file specification has at least one
associated with it.
Gets a containing the content of this ,
or null if the file specification is empty.
Important: this must be disposed after use.A with the content of this ,
or null if it is empty. If not null, the stream must be disposed after use!
Gets or sets the file system to be used to interpret this file specification.
If this property is present, all other properties are interpreted by the designated file system.
PDF defines only one standard file system name, URL;
an application or plug-in extension can register other names.
Gets the object defining information about referenced file.
Gets the object defining information about referenced file for DOS platform.
NOTE: Using this property is not recomended beggininng with PDF 1.7.
Gets the object defining information about referenced file for Mac OS platform.
NOTE: Using this property is not recomended beggininng with PDF 1.7.
Gets the object defining information about referenced file for Unix platform.
NOTE: Using this property is not recomended beggininng with PDF 1.7.
Gets or sets the object specifying the ID of the referenced file.
This property improves an application’s chances of finding the intended file and allows it to warn
the user if the file has changed since the link was made.
Gets or sets a value indicating whether the file referenced by the file specification is volatile
(changes frequently with time). If the value is true, applications should never cache a copy of the file.
Gets or sets the description of this File Specification.
Gets or sets a value that represents the relationship of this object
to the source that points to it.
Predefined values are Source, Data, Alternative,
Supplement and Unspecified.
Creates a object from a DOS file name.
Creates a object referencing a specified .
Creates a object referencing a specified .
Creates a object representing an URI reference.
Represents information about a file for a particular platform.
Gets a containing the content of this ,
or null if the file specification is empty.
Important: this must be disposed after use.A with the content of this ,
or null if it is empty. If not null, the stream must be disposed after use!
Gets the object owning this object.
Gets or sets the file specification string of the form described in PDF Specification Section 3.10.1, “File Specification Strings”.
Gets or sets the associated with this file specification.
Gets the collection of related files, see PDF Specification for details.
Represents information about a related file.
Initializes a new instance of the class.
The name of the related file.
The file content.
Gets a containing the content of this ,
or null if the file specification is empty.
Important: this must be disposed after use.A with the content of this ,
or null if it is empty. If not null, the stream must be disposed after use!
Gets the object owning this object.
Gets the object owning this object.
Gets the file name of the related file.
Gets a holding the file content.
Represents a collection of objects.
Initializes a new instance of the class.
Gets the object owning this collection.
ASCII85Decode filter, see PDF specification for details.
ASCIIHexDecode filter, see PDF specification for details.
Defines PDF image filters.
No filter.
JPEG baseline format.
JBIG2 encoding for monochrome (1 bit per pixel) image data.
JPEG2000 compression method.
Group 3 or Group 4 CCITT facsimile (fax) encoding.
Base class for PDF decode filters.
Decodes stream.
Reads stream content using appropriate filters and decodeParams.
Reads stream content using appropriate filters.
FlateDecode filter, uses ZIP compression.
Dummy filter used in current implementation to read content
encoded with Image filters:
CCITTFaxDecode, JBIG2Decode, DCTDecode, JPXDecode.
LZWDecode filter, see PDF specification for details.
Based on code from old PdfParser, should be reviewed.
Return the value of the Sub algorithm on the line (compare bytes to
the previous byte of the same color on this line).
Return the value of the up algorithm on the line (compare bytes to
the same byte in the previous line)
Return the value of the average algorithm on the line (compare
bytes to the average of the previous byte of the same color and
the same byte on the previous line)
Return the value of the average algorithm on the line (compare
bytes to the average of the previous byte of the same color and
the same byte on the previous line)
The paeth algorithm
RunLengthDecode filter, see PDF specification for details.
Defines possible modes of the font embedding.
Do not embed a font.
Embed subset of the font with used glyphs.
Embed full font.
Represents a collection of objects.
Gets the associated with a specified .
The raw font.
OUT: the PdfFont object, or null.
True if a PdfFont was found, false otherwise.
Gets an existing associated with a specified ,
or creates a new one if such font does not exist.
The font.
The existing or newly created PdfFont.
Gets a value indicating whether the current collection contains
at least one object with the property set.
Gets the that owns this collection.
Represents and manages a
used in a .
Initializes a new instance of the class.
The associated with the current FontHandler.
Prepares embedded data.
Returns a value indicating whether the owns specified PDF font.
Gets the owning this .
Gets the containing this .
Gets the associated with this .
Gets or sets the font embedding mode.
By default this property is unspecified (null), and the actual embedding mode depends on
whether or not the is one of .For standard fonts, determines the embedding mode.For all other fonts, determines the embedding mode.
Gets a value indicating whether the current font is actually used in the document.
Base abstract class for objects defining PDF function object.
Gets or sets an array of 2 × m numbers, where m is the number of input values.
For each i from 0 to m − 1, Domain2i must be less than or equal to Domain2i+1 ,
and the ith input value, xi , must lie in the interval Domain2i ≤ xi ≤ Domain2i+1.
Input values outside the declared domain are clipped to the nearest boundary value.
Gets or sets an array of 2 × n numbers, where n is the number of output values.
For each j from 0 to n − 1, Range2j must be less than or equal to Range2j+1, and the jth output value, yj,
must lie in the interval Range2j ≤ yj ≤ Range2j+1.
Output values outside the declared range are clipped to the nearest boundary value.
If this entry is absent, no clipping is done.
Defines PDF Exponential Interpolation function (Type 2 function).
Defines an exponential interpolation of one input value and n output values:
f(x) = y0 ... yn-1
Gets or sets an array of n numbers defining the function result when x = 0.0.
Default value: [ 0.0 ].
Gets or sets an array of n numbers defining the function result when x = 1.0.
Default value: [ 1.0 ].
Gets or sets the interpolation exponent.
Each input value x will return n values, given by:
Yj = C0j + Xn × (C1j - C0j), for 0 <= j < n.
Defines PDF PostScript Calculator function (Type 4 function).
PostScript Calculator functions is represented as a stream containing code written
in a small subset of the PostScript language.
Gets or sets the PostScript script used to calculate function.
Defines possible interpolation orders.
Linear interpolation.
Cubic spline interpolation.
Defines PDF sampled function (Type 0 function).
Sampled functions use a sequence of sample values (contained in a stream) to provide
an approximation for functions whose domains and ranges are bounded.
The samples are organized as an m-dimensional table in which each entry has ncomponents.
Gets or sets an array of m positive integers specifying the number of samples in each input dimension
of the sample table.
Gets or sets the number of bits used to represent each sample.
(If the function has multiple output values, each one occupies BitsPerSample bits.)
Valid values are 1, 2, 4, 8, 12, 16, 24, and 32.
Gets or sets the interpolation order of interpolation between samples.
Gets or sets an array of 2 × m numbers specifying the linear mapping of input values into the domain of
the function’s sample table.
Default value (if null): [ 0 (Size0 - 1) 0 (Size1 - 1) ... ].
Gets or sets an array of 2 × n numbers specifying the linear mapping of sample values into the range
appropriate for the function’s output values.
Default value: same as the value of .
Gets or sets the samples table.
Defines PDF Stitching function (Type 3 function).
Define a stitching of the subdomains of several 1-input functions to produce a single new 1-input function.
Since the resulting stitching function is a 1-input function,
the domain is given by a two-element array, [ Domain0 Domain1 ].
Gets or sets an array of k 1-input functions making up the stitching function.
The output dimensionality of all functions must be the same,
and compatible with the value of if it is present.
Gets or sets an array of k − 1 numbers that, in combination with ,
define the intervals to which each function from the array applies.
elements must be in order of increasing value, and each value must be within
the domain defined by .
Gets or sets an array of 2 × k numbers that, taken in pairs,
map each subset of the domain defined by and the
array to the domain of the corresponding function.
This interface is used by to request predefined CMap tables
from external sources.
Returns the predefined object by name.
The CMap name.
The object.
Defines the PDF conformance levels.
Without PDF/A conformance.
PDF/A 1a conformance level.
PDF/A 1b conformance level.
PDF/A 2a conformance level.
PDF/A 2b conformance level.
PDF/A 2u conformance level.
PDF/A 3a conformance level.
PDF/A 3b conformance level.
PDF/A 3u conformance level.
Defines the possible states of a .
None, no special state.
currently executed.
The content of the document currently generated via StartDoc() / EndDoc() methods.
For internal use.
Allows to get owning object implementing this interface.
Gets the owning .
Represents a PDF document.
The object model provided by this class follows the PDF 1.7 Reference specification.To create a PDF document, create an instance of the GcPdfDocument class.
Two approaches are possible for adding content and saving the document:
Direct modeIn this mode, you add pages to the document and draw on them (see below) in arbitrary order.
In particular, you can modify pages that have been already created.
When done, use or method to save the document.
This mode is convenient but uses temporary files, so is somewhat less efficient than sequential mode described next.
Sequential mode
To use this mode, you call prior to any other operations on the document.
You can then add pages and draw on them, but you can only draw on the last (current) page.
All content is immediately added to the underlying stream without the use of temporary files.
To complete creating the document, you must call .
The pages of the document are accessible via the collection.
To add content, use property to get a for a page.
(In sequential mode, only the currently last page of the document can be drawn on.)
You can then use that graphics object to draw the desired content.
The object manages ID of offsets of PDF objects.
The used to generate PDF content,
initializated in the Save() method.
The document's state.
External stream passed in method.
The global, document level, collection of objects which are shared between
all document's pages, rendered with using .
The global dictionary of objects used to render
objects. These objects shared between all document's pages, rendered with using .
The global empty used by , for example, it used
then rendering uncolored tilling patterns.
The collection of PDF CID fonts in document.
The collection of PDF fonts in document.
The list of objects.
Indicates whether object is saved using incremental updates.
The dictionary contains document's named destinations,
saved to PDF as Dests in Document Catalog or as Dests in Names.
Represents Dests entry in Document Catalog.
The dictionary contains document level File Attachments.
The document's Names dictionary.
The counter is incremented each time the document is saved.
All document's objects have the same counters and they are incremented
by method too, it allows to determine
"slate" references, that occur when a document's object references object which actually
does not belong to the document.
Creates a new instance of the class,
optionally specifying a license key.
The license key to use, or null to use an unlicensed instance.
See comments for .
Writes root PDF document object, wit catalog also written:
-) sRGB color profile
-) Viewer preferences
Both written immedeaty AFTER catalog object
Called directly before writing the document, prepares internal objects,
for example, generates appearance streams for annotations if they were not
generated by the user.
Called when document's writing is finished.
Writes document's cross-reference table as XRef table.
Writes document's cross-reference table as Cross-Reference stream.
Saves document in not linearized form.
Sets the minimum PDF version that supports a feature in this document.
E.g. if a property being set on the document was introduced in PDF 1.4,
the property setter should call this with "1.4" as the ver parameter.
The minimum PDF version required by the calling code, such as "1.3" or "1.7".
Gets text value of PDF file version.
The PDF/A conformance level.
The text PDF file version.
Gets the collection of objects used to handle processing
of in .
Extracts and returns all text from the current document.
All text in the current document.
Clears the document, removing all content and resetting all properties and settings to their initial default values.
Adds a blank page to the document.
The size of the new page is defined by the value of the property.If you want the new page to have a different size than the rest of the document,
create the new page first, then set the property.
Saves the current PDF document to a file.
The name of the PDF file to create.
Indicates whether document should be saved using incremental updates.
Saving the PDF document to a file requires that the file be available
for writing. If the file already exists and is in use by an application
(such as the Adobe Acrobat Reader), the method will throw an exception.
Saves the current PDF document to a .
The object to use for saving the document.
Indicates whether document should be saved using incremental updates.
Saving the PDF document to a object is often used in Web
scenarios, when you are creating a response object or storing the document in the
cache, and don't want to create temporary files.
Starts document generation in sequential mode.
In this mode, the content of the document is written directly into the underlying stream
as soon as it is created, without the use of temporary files.
When all content has been added, call to finish creating the document.
The stream to which the PDF document will be written.
Sequential mode may provide better performance,
but it does not allow to modify the already created pages
(which is possible when is not called,
and the document is saved by or
after all content has been added instead.)
Ends document generation in sequential mode.
This call must be preceeded by a call to .
Gets the dictionary of objects.
Each key in this dictionary is the index of the first page in a labelling range.
Gets the list of objects.
Gets or sets the object used when the
needs to find a (e.g. if it is not embedded in the PDF).
If this property is null (the default), then the will be used.
Gets the collection of embedded files associated with whole document.
Typically it is used to identify which embedded file was the source of the PDF document.
Gets the collection of font handlers associated with the current document.
Gets the collection of the current document outlines.
Gets the dictionary of destinations defined in the current document.
The keys in this dictionary are the destinations' names.
Gets the dictionary of document level file attachments.
Gets or sets the metadata associated with this document.
Gets the object defining common properties of the AcroForms in this document.
Gets or sets a value indicating whether the document is PDF/A compliant.
Gets the object that contains options
controlling how images are processed in the current document.
Gets or sets a object that contains information about
this document (author, title, etc).
Note: this property is not null by default (when a is created)
but it can become null after a call to
if the loaded document does not have a document info object.
Gets a object that represents document's logical structure.
Gets a object provides additional information relevant to specialized uses of structured PDF documents.
Gets or sets a to be displayed or an
to be performed when the document is opened.
Gets the object that contains information
specifying how the current document should be displayed.
Gets the object that manages security for
the current document (passwords, etc).
Gets or sets the object defining ID of this PDF document.
Note that this ID is automatically updated if the method is called.
Gets or sets the PDF/A conformance level.
The default is none (the document does not conform to PDF/A).
Gets or sets the font embedding mode.
The default is .Note that this property does not affect the 14 standard PDF fonts,
their embedding is determined by the property.Also note that if the is saved as PDF/A,
and the value of this property is ,
the fonts are embedded anyway using the mode.
Gets or sets the font embedding mode for the 14 standard PDF fonts.
The default is .Note that if the is saved as PDF/A,
and the value of this property is ,
the standard fonts are embedded anyway using the mode.
Gets or sets the compression level. Default value is .
Gets a value indicating whether compression is used when saving the document.
Gets or sets a value indicating whether comments and some optional linebreaks will be added to the generated PDF file.
Primarily useful for debugging.
Gets or sets the default page size for the document (in points).
Gets or sets a value indicating whether newly added pages have landscape orientation.
Gets or sets the page size for the document.
Gets a rectangle that represents the surface of the current page (in points).
This property returns a rectangle located at point (0,0) with
size equal to the size of the current page. It can be used as a starting
point for building rectangles that will be used for drawing on the page.
Gets the collection of objects that make up the document.
Gets or sets the PDF Version of the generated document.
By default the version is determined automatically based on which features are used in this document.
Setting this property to a non-null string in the format "1.X"
(where X is a digit from 0 to 9) overrides the automatic value with the specified one.
Setting this property to null or an empty string reverts to the default behavior.
Gets or sets 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.
For internal use.
Gets or sets a value indicating whether streams should be compressed
using single operation.
For internal use.
Gets or sets a value indicating whether objects in
dictionary should be saved in Dests entry of Names subdictionary of Document Catalog.
Note! This flag is NOT used if loaded document contains named destinations.
Gets or sets an object that implements the interface.
uses that interface to obtain an
if it specified by name in the PDF file.
By default GcPdf tries to initialize this property automatically in the
's constructor with the CMapProvider.Instance
defined in the optional GrapeCity.Documents.Pdf.Resources package
(which in this case needs to be explicitly referenced by the application).
For internal use.
Gets or sets the format string applied to float values written to PDF stream.
Sets the license key.
The license key to set.
Fires periodically while data is written into the PDF document.
The event handler may check the number of pages created so far by
accessing the property.
Raises the event.
that contains the event data.
Provides data for the progress changed event.
Initializes a new instance of the progress changed .
The percentage of an asynchronous task that has been completed.
A unique user state.
Gets the asynchronous task progress percentage.Gets a unique user state.
Fires while pages are written to the PDF stream after a call to the method.
Raises the event.
that contains the event data.
Returns original object which represented in document by specified .
Note! This method returns NOT null value only for fonts which were produced by class.
Gets the list of fonts in this .
The list of fonts present in this document.
Gets the list of images in this .
Note that for large documents this method can take a while to complete,
as it enumerates the content streams of all pages in the document.
The horizontal resultion used to calculate the bounds of images on pages.
The vertical resultion used to calculate the bounds of images on pages.
The list of images present in this document.
Exports the document's form data to a stream in FDF format.
The destination stream.
The object defining the export options.
Exports the document's form data to a file in FDF format.
The destination file.
The object defining the export options.
Exports the document's form data to a stream in XFDF format.
The destination stream.
The object defining the export options.
Exports the document's form data to a file in XFDF format.
The destination file.
The object defining the export options.
Exports the document's form data to a stream in XML format.
The destination stream.
The object defining the export options.
Exports the document's form data to a file in XML format.
The destination file.
The object defining the export options.
Imports the document's form data from a stream in XFDF format.
The source stream.
Imports the document's form data from a file in XFDF format.
The source file.
Imports the document's form data from a stream in XML format.
The source stream.
Imports the document's form data from a file in XML format.
The source file.
Imports the document's form data from a stream in FDF format.
The source stream.
Imports the document's form data from a file in FDF format.
The source file.
Gets the license handler for the current document.
Use it to test whether to limit licensed actions.
Draws licensed warning.
The length of generic hint table in bytes,
see page 1048 PDF1.7
List of objects referenced from Named Destinations
which should be serialized separatelly in linearized mode.
List of objects serialized separatelly in linearized mode.
Returns length of the extended hint table in bytes.
Saves the current PDF document to a int linearized form.
Internal method indicating whether generated document should be saved in linearized format,
in current version GcPdf can only generate linearized documents from scratch.
Gets or sets a value indicating whether the loaded document is linearized,
or whether the document should be generated and saved as linearized.
If creating a linearized document is desired, this property should be set
prior to adding any content to the document, and must not be changed
until the document has been saved.
The linked page.
Length of page's objects in bytes.
Count of page's objects, including page's dict itself.
Offset of the content stream object relative to page object offset.
Length of the content stream object.
The object number of the first object in the group.
The location of the first object in the group.
The number of objects in the group.
The length of the object group in bytes.
The Document Catalog PDF dictionary.
Initialized when document loaded from a stream.
For internal use.
The used to log PDF parser operations.
By default this field is null, set it to instance of if you want
to get possible parser warnings, info messages etc.
Reads PDF Root dictionary.
Returns true if document was loaded from a stream.
Loads the current document from a specified intput stream,
overwriting the current content of the document.
The stream should contain valid PDF data,
and must be kept open while reading or modifying the document.
If the document is modified, it can be saved using the or method.
The object used for loading the document content.
The password used to open the document.
For internal use.
Returns the object representing data of specified PDF stream object,
returns null if object with specified ID does not exist.
Merges all or some pages from a specified
into the current document.
The source document which is to be merged into the current document.
Options controlling what and how to merge.
For internal use.
The used to log PDF render operations.
By default this field is null, set it to instance of if you want
to get possible render warnings, info messages etc.
Saves the document pages as images in PNG format, one page per output file.
The parameter is used as a .NET format string,
with current page number (1-based) passed to it as the value to be formatted.
Note that if does not contain a format item (such as "{0}"),
all pages will be saved into the same file name, the last page overwriting everything else.
The output file path.
The object that defines which pages of the document should be saved.
The object.
Saves the document pages as images in BMP format, one page per output file.
The parameter is used as a .NET format string,
with current page number (1-based) passed to it as the value to be formatted.
Note that if does not contain a format item (such as "{0}"),
all pages will be saved into the same file name, the last page overwriting everything else.
The output file path.
The object that defines which pages of the document should be saved.
The object.
Saves the document pages as images in JPEG format, one page per output file.
The parameter is used as a .NET format string,
with current page number (1-based) passed to it as the value to be formatted.
Note that if does not contain a format item (such as "{0}"),
all pages will be saved into the same file name, the last page overwriting everything else.
The output file path.
The object that defines which pages of the document should be saved.
The object.
Saves the document pages as images in GIF format, one page per output file.
The parameter is used as a .NET format string,
with current page number (1-based) passed to it as the value to be formatted.
Note that if does not contain a format item (such as "{0}"),
all pages will be saved into the same file name, the last page overwriting everything else.
The output file path.
The object that defines which pages of the document should be saved.
The object.
Saves the document pages as images to a stream in TIFF format, one page per frame.
The output stream.
The object that defines which pages of the document should be saved.
The object.
Saves the document pages as images to a file in TIFF format, one page per frame.
The output file path.
The object that defines which pages of the document should be saved.
The object.
For internal use.
The value used to generate timestamp token, if null them it will be generated based on current time.
Used when the document is signed with Sign(...) method.
Contains offset of Contents property of generated signature.
Used when the document is signed with Sign(...) method.
Contains offset of ByteRange property of generated signature.
object passed in Sign(...) method.
Signs and saves the current document.
Note that must support read and seek operations.
Properties of the signature used to sign the document.
The output stream (must support read and seek operations).
Indicates whether the document should be saved using incremental updates.
Signs and saves the current document.
Properties of the signature used to sign the document.
The name of the PDF file to create.
Indicates whether the document should be saved using incremental updates.
Searches for a text in the document's pages.
The text searching parameters.
The search scope.
Provides access to an image in a PDF document.
Gets a value indicating whether the image is an inline image defined directly in a content stream.
Gets a value indicating whether the image is defined as a stencil mask for painting in the current color.
Gets the object associated with the current object.
Important: this must be disposed after use.
In a PDF images can be specified as "image mask" (see ), in that case
the image data is used as a stencil mask for painting in the current color
specified by ,
specifies the color of the area excluded from filling
(it is transparent in most cases).
The current color used to fill unmasked area.
The masked color specifies the color of the area that is excluded from filling (typically transparent).
The object (must be disposed after use!).
Called when content stream rendered
Represents an image and its locations in a PDF document.
Gets the object representing the image.
Gets the list of objects defining positions in the document where this image is present.
Represents a position of an image in a PDF document.
Gets a that references the image.
Gets the bounds of the image on relative to top-left corner.
Represents options used by
,
,
,
,
and
methods.
Gets or sets a value indicating whether values of fields with
the property set to true should be exported.
Specifies how outlines are handled when merging two documents.
Outlines from the source document are ignored.
All outlines from the source document will be copied to the destination document.
Only outlines linked with merged objects will be copied to the destination document.
Represents the various options controlling the behavior of the
method.
Gets or sets a value indicating whether do NOT parse content streams and copy all objects referenced
from resource streams.
Gets or sets the starting position in the destination document
at which the pages of the source document will be inserted.
-1 (the default) indicates that the pages will be added to the end of the document.
Gets or sets the object specifying the range of the pages
in the source document that should be merged into the destination document.
Null (the default) indicates that all pages will be merged.
Gets or sets a value indicating whether to copy .
By default this property is false.
Note that if the source document contains destinations with same names
as in the target document, then those destinations will be skipped.
A more complex logic can be implemented programmatically.
Gets or sets a value indicating whether to copy files embedded in the source document
to the collection.
The default is false.
Gets or sets a value indicating whether to copy Acroform fields.
The default is true.
Gets or sets the outline merge mode.
The default is .
Gets or sets the
to which the outlines from the source document linked to the merged pages
will be copied.
Gets or sets a value indicating whether to merge structure trees.
The default is false.
Gets or sets the
to which the structure elements from the source document
will be copied.
Indicates whether an object supports CreateForMerge() and AssignForMerge() methods.
Note! All implement this method.
Creates a new instance of object to use in another document.
Assigns properties to the object created by
from .
Common interface for objects owning content streams and resource dictionary used by these content streams.
Used in documents merge operations.
Gets or sets the owned by this .
Enumerates content streams owned by this .
Contains information used in document's merge operation.
The merge options.
The source .
The destination .
List of delegates which will be called when merging finished.
Used to map objects in source document to their copies in destination document ().
The current which should be used if some object
does not have resources.
Indicates whether to parse content streams to determine objects which are really used.
Generates unique name for the field.
Contains information about differed action which should be performed when merging finished.
The source object in .
The destination onject in .
The callback delegate.
Represents options used by the SaveAs* methods on and ,
such as ,
, etc.
Gets or sets the background color. The default is white.
Gets or sets the resolution of the generated images. The default is 96.
Gets or sets a value indicating whether to render annotations. The default is true.
Gets or sets a value indicating whether to render form fields. The default is true.
Defines signature formats supported by .
No data is encapsulated in the PKCS#7 signed-data field.
SubFilter value of PDF signature is "adbe.pkcs7.detached".
The SHA1 digest of the byte range is encapsulated in the PKCS#7 signed-data field with ContentInfo of type Data.
SubFilter value of PDF signature is "adbe.pkcs7.sha1".
Defines digest algorithms used to generate signatures.
The SHA1 algorithm.
The SHA256 algorithm.
The SHA384 algorithm.
The SHA512 algorithm.
Represents properties used to generate signature appearance when a document is signed.
For internal use.
The date format used to build signature text when signing document.
For internal use.
The used to build signature text when signing document.
Initializes a new instance of the class.
Gets or sets the back color, if not specified then will be used.
Gets or sets the border, if null then will be used.
Gets or sets the signature's caption.
This field can be empty, in this case caption is generated as:
{SignatureProperties.SignerName} ({SignatureProperties.Location})\r\n{SignatureProperties.SigningDateTime}
Gets or sets the object defining text format.
can be 0 in this case text will be fit in available bounds.
Gets or sets the signature’s image.
Gets or sets a value indicating how to position the signature's caption relative to image.
Encapsulates the information that is used to include timestamps
from a Time Stamping Authority into digital signatures in PDF documents.
Initializes a new instance of the class.
The value of .
Initializes a new instance of the class.
The value of .
The value of .
The value of .
Gets or sets the uniform resource identifier for the Time Stamping Authority (TSA) server providing the timestamp.
Gets or sets the user ID to send to the Time Stamping Authority (TSA) server.
Gets or sets the user password to send to the Time Stamping Authority (TSA) server.
Represents properties used to sign a PDF document.
Initializes a new instance of the class.
Gets or sets the object used to include
a timestamp in the digital signature of a PDF.
Gets or sets a certificate used to generate a digital signature.
Gets or sets an acroform field used to store a digital signature.
If is not null, then a visual appearance will be generated
based on the values of properties , etc.
Gets or sets the name of the person or authority signing the document.
NOTE: This value is used only if it is not possible to extract the name from the signature,
for example from the certificate of the signer.
By default this property is initialized with .
Ges or sets the time of signing.
NOTE: This value is used only if the time of signing is not available in the signature.
For example, a time stamp can be embedded in a PKCS#7 binary data object.
By default this property is initalized with the current date and time.
Gets or sets the CPU host name or physical location of the signing.
By default this property is initalized with .
Gets or sets the reason for the signing, such as "I agree...".
Gets or sets the information provided by the signer to enable a recipient to contact the signer
to verify the signature (for example, a phone number).
Gets or sets the format of the signature.
Gets or sets the signature digest algorithm.
NOTE: If is ,
then this property is ignored and is used.
Gets or sets a document's access permissions granted by this signature.
This property can be specified only for one and first signature in the document,
this signature will be "certification signature".
Gets or sets a object defining the visual appearance
of the generated signature.
By default this property is initialized with a default instance of the class.
Defines a position in the page of the where a text was found.
The defining the and position in it.
Compares two objects.
Gets the page index.
Gets the text near the found position.
Gets the zero-based position of the found string in .
Gets the bounds of the found position.
Represents find text parameters.
Initializes a new instance of the class.
The text to find.
Indicates whether to match whole words only.
Indicates whether to match case.
The horizontal resultion used to calculate bounds of the found text on the page.
The vertical resultion used to calculate bounds of the found text on the page.
Gets the text to find.
Gets a value indicating whether to match whole words only.
Gets a value indicating whether to match case.
Gets the horizontal resultion used to calculate bounds of the found text on the page.
Gets the vertical resultion used to calculate bounds of the found text on the page.
Specifies how to render images into a rectangle.
Selects the source color, ignoring the backdrop.Multiplies the backdrop and source color values.
The result color is always at least as dark as either of the two constituent colors.
Multiplying any color with black produces black; multiplying with white leaves the
original color unchanged. Painting successive overlapping objects with a color other
than black or white produces progressively darker colors.
Multiplies the complements of the backdrop and source color values, then complements the result.
The result color is always at least as light as either of the two constituent colors.
Screening any color with white produces white; screening with black leaves
the original color unchanged. The effect is/ similar to projecting multiple
photographic slides simultaneously onto a single screen.
Multiplies or screens the colors, depending on the backdrop color.
Source colors overlay the backdrop while preserving its highlights and shadows. The backdrop color
is not replaced but is mixed with the source color to reflect the lightness or darkness of the backdrop.
Selects the darker of the backdrop and source colors.
The backdrop is replaced with the source where the source is darker; otherwise, it is left unchanged.
Selects the lighter of the backdrop and source colors.
The backdrop is replaced with the source where the source is lighter; otherwise, it is left unchanged.
Brightens the backdrop color to reflect the source color. Painting with black produces no change.Darkens the backdrop color to reflect the source color. Painting with white produces no change.Multiplies or screens the colors, depending on the source color value.
If the source color is lighter than 0.5, the backdrop is lightened as if it were screened; this is useful for adding highlights to a scene.
If the source color is darker than 0.5, the backdrop is darkened; this is useful for adding shadows to a scene.
The degree of lightening or darkening is proportional to the difference between the source color and 0.5; if it is equal to 0.5, the backdrop is unchanged.
Painting with pure black or white produces pure black or white. The effect is similar to shining a harsh spotlight on the backdrop.
Darkens or lightens the colors, depending on the source color value.
If the source color is lighter than 0.5, the backdrop is lightened as if it were dodged; this is useful for adding highlights to a scene.
If the source color is darker than 0.5, the backdrop is darkened as if it were burned in. The degree of lightening or darkening is proportional.
Subtracts the darker of the two constituent colors from the lighter color.
Painting with white inverts the backdrop color; painting with black produces no change.
Produces an effect similar to that of the Difference mode but lower in contrast.
Painting with white inverts the backdrop color; painting with black produces no change.
This mode does not exist in specification but exists in PDF files :(.
Specifies the shape to be used at the ends of open subpaths (and dashes, if any) when they are stroked.
The stroke is squared off at the endpoint of the path.
There is no projection beyond the end of the path.
A semicircular arc with a diameter equal to the line width is drawn around
the endpoint and filled in.
The stroke continues beyond the endpoint of the path for a distance
equal to half the line width and is squared off.
Specifies the shape to be used at the corners of paths that are stroked.
Join styles are significant only at points where consecutive segments of a path connect at an angle;
segments that meet or intersect fortuitously receive no special treatment.
The outer edges of the strokes for the two segments are extended until they meet at an angle,
as in a picture frame.
If the segments meet at too sharp an angle
(as defined by the miter limit parameter—see “Miter Limit,” above), a bevel join is used instead.
An arc of a circle with a diameter equal to the line width is drawn around the point where
the two segments meet, connecting the outer edges of the strokes for the two segments.
This pieslice-shaped figure is filled in, producing a rounded corner.
The two segments are finished with butt caps (see “Line Cap Style” on page 216) and
the resulting notch beyond the ends of the segments is filled with a triangle.
Defines possible PDF rendering intents.
Colors are represented solely with respect to the light source;
no correction is made for the output medium’s white point (such as the color of unprinted paper).
Thus, for example, a monitor’s white point, which is bluish compared to that of a printer’s paper,
would be reproduced with a blue cast. In-gamut colors are reproduced exactly;
out-of-gamut colors are mapped to the nearest value within the reproducible gamut.
This style of reproduction has the advantage of providing exact color matches from one output medium to another.
It has the disadvantage of causing colors with Y values between the medium’s white point and 1.0 to be out of gamut.
A typical use might be for logos and solid colors that require exact reproduction across different media.
Colors are represented with respect to the combination of the light source and the output medium’s
white point (such as the color of unprinted paper).
Thus, for example, a monitor’s white point would be reproduced on a printer by simply leaving the paper unmarked,
ignoring color differences between the two media. In-gamut colors are reproduced exactly;
out-of-gamut colors are mapped to the nearest value within the reproducible gamut.
This style of reproduction has the advantage of adapting for the varying white points of different output media.
It has the disadvantage of not providing exact color matches from one medium to another.
A typical use might be for vector graphics.
Colors are represented in a manner that preserves or emphasizes saturation.
Reproduction of in-gamut colors may or may not be colorimetrically accurate.
A typical use might be for business graphics, where saturation is the most important attribute of the color.
Colors are represented in a manner that provides a pleasing perceptual appearance.
To preserve color relationships, both in-gamut and out-of-gamut colors are generally
modified from their precise colorimetric values. A typical use might be for scanned images.
PDF text rendering mode.
Fill text.
Stroke text.
Fill, then stroke text.
Neither fill nor stroke text (invisible).
Fill text and add to path for clipping (see above).
Stroke text and add to path for clipping.
Fill, then stroke text and add to path for clipping.
Add text to path for clipping.
Specifies how the intersecting areas of Path objects
are combined to form the area of the Path.
Rule that determines whether a point is in the fill region by drawing a ray
from that point to infinity in any direction and counting the number of path
segments within the given shape that the ray crosses. If this number is odd,
the point is inside; if even, the point is outside.
Rule that determines whether a point is in the fill region of the path by
drawing a ray from that point to infinity in any direction and then examining
the places where a segment of the shape crosses the ray. Starting with a
count of zero, add one each time a segment crosses the ray from left to right
and subtract one each time a path segment crosses the ray from right to left.
After counting the crossings, if the result is zero then the point is outside
the path. Otherwise, it is inside.
Defines PDF dash pattern.
Gets the defining solid line.
Initializes a new instance of the class.
Initializes a new instance of the class.
Gets the dash's array .
Gets the dash phase specifies the distance into the dash pattern at which to start the dash.
Allows to receive callback notifications when a
is rendered on a .
Called when a text block associated with the specified tag is started.
The target graphics.
The text layout.
The tag.
Called when a text block is finished.
The target graphics.
The text layout.
The tag.
Adds a rectangular area associated with a text.
Represents a graphics object that can be used to draw on a PDF page.
The origin (0,0) is in the top left corner of the page, the axis go right and down.
All coordinates and sizes are expressed in printer points (1/72 of an inch) by default.
This can be changed using the property.
The .
The to use.
The used to generate content.
Current transformation matrix which is based on the base of _dpiX, _dpiY, _canvasSize, _transform
Matrix build on the base of , .
Stack of applied clip regions.
Indicates whether "Q" operator should be written.
Indicates whether , or
were changed and should be written.
Called when disposed.
The method returns underlying .
The graphics state of at the moment when it was returned using .
Initializes a new instance of the class.
Called when disposed.
The method returns object to write data.
Initial non stroke color.
Initial stroke color.
Checks whether is not null.
Called before any write operation.
Used for horizontal text.
Used for vertical text when glyph are vertically oriented, for japan or chinese.
Used for vertical text when glyphs rotated by 90 degrees.
For internal use only.
For internal use only.
Flushes all unwritten content to underlying stream.
Sets metrics of this object.
The structure defining the metrics.
Draws Stamp annotation.
Draws signature.
Draws content.
Gets the underlying object.
Gets the used by this graphics.
Returns the "DA" string for specified text.
Begins Marked Content. Writes (BMC or BDC) operator to content stream,
each call of should be enclosed with
.
The tag indicating the role or significance of the marked-content element to the processing application.
Begins Marked Content. Writes (BMC or BDC) operator to content stream,
each call of should be enclosed with
.
The object indicating the role or significance of the marked-content element to the processing application.
Ends Marked Content. Writes EMC operator to content stream.
Draws a using specified bounds and image alignment.
The output parameter receives
the actual bounds of the drawn object(s).
The to draw.
The destination rectangle.
The clipping rectangle, or null for no clipping.
The image alignment.
OUT: The actual bounds of the drawn image(s) (can be more than one if the image is tiled).
Draws a using specified bounds and image alignment.
The to draw.
The destination rectangle.
The clipping rectangle, or null for no clipping.
The image alignment.
Gets or sets an object which will receive
notifications from the when is rendered.
Gets the resolution of the current graphics.
Gets the size of the drawing area.
Gets or sets the current transformation matrix. The default is Identity matrix.
Gets or sets the object defining current Soft Mask.
Run is vertical.
Glyphs in run are vertically oriented, chinese, japanese.
Run has glyphs with custom advances.
Run has glyphs with not zero XPlacement or YPlacement.
Represents PDF graphics state parameters dictionary used
by when generating PDF content.
This class supports limited set of properties (see for details)
required for .
I have no idea why, but graphics state dictionary entries LW, LC, LJ, M, D
do not work as expected, but same values specified via separate PDF commands like "d" or "J" - work.
The graphics state parameter values.
Contains values supported by .
Currenty alpha constant for stroking operations.
Current alpha constant for non stroking operations.
Current Soft Mask.
Defines metrics of .
Gets or sets resolution.
Gets or sets the size of canvas in pixels, resolution
specified by the property.
Define color point in CIE color space.
Define color matrix in CalRGB color space.
Abstract base class for CIE Color spaces.
Base class for colors in color spaces derived from .
Initializes a new instance of the class.
The of the color.
Defines color in color space.
The gray color value.
Initializes a new instance of the class.
The of the color.
The color gray value.
Defines the color in color space.
The red value of the color.
The green value of the color.
The blue value of the color.
Initializes a new instance of the class.
The of the color.
The red value of the color.
The green value of the color.
The blue value of the color.
Defines color in color space.
The L value of the color.
The A value of the color.
The B value of the color.
Initializes a new instance of the class.
The color space of the color.
The L value of the color.
The A value of the color.
The B value of the color.
Defines color in color space.
The values of the color.
Initializes a new instance of the class.
The color space of the color.
The values of the color.
Abstract base class for PDF color spaces.
Enumerates all nested objects supporting interface,
referenced from this object.
Used during parsing PDF Content Stream, returns default color for this color space,
for example, returns .
See PDF 1.7 specification page 287 for details.
Used during parsing PDF Content Stream, builds using arguments from .
NOTE! Returns null if contains invalid / unsupported arguments.
Called from image decoders and used to convert pixels's color components to
ABGR color value, this method called if Soft Mask specified for the image.
Called from image decoders, returns default Decode entry for color space,
see PDF specification for details, PDF1.7 page 344.
Gets count of color components per pixels.
Base class for colors associated with some .
Note! All derived classes override Equals(...) method.
Writes an operator defining the color value to the PDF content stream.
The destination content stream.
The current resource dictionary.
Indicates whether color used for stroke operations or not.
Writes only color value to the PDF content stream.
Compares this and value.
Note! Alpha channel of not analysed.
Converts the object to native color.
Note! Not all color spaces supports this operation, in this case method returns false.
Gets the of this color.
Returns a value indicating whether two color values represent same color.
Note! Alpha channel of not analysed.
Abstract base class for Device Color spaces.
Defines color in color space.
Gets the black color.
The gray value of the color.
Initializes a new instance of the value.
Defines color in color space.
Gets the black color.
The red value of the color.
The green value of the color.
The blue value of the color.
Initializes a new instance of the class.
The red value of the color.
The green value of the color.
The blue value of the color.
Initializes a new instance of the class.
The color value.
Defines color in color space.
Gets the black color.
The C value of the color.
The M value of the color.
The Y value of the color.
The K value of the color.
Initializes a new instance of the class.
The C value of the color.
The M value of the color.
The Y value of the color.
The K value of the color.
The ICC profile.
Abstract base class for CIE Color spaces.
Defines color in color space.
Gets the black color.
Gets the name of pattern resource used by this color.
Initializes a new instance of the class.
The pattern resource name.
Defines color in color space.
The color space used by this color.
Gets the name of pattern resource used by this color.
Gets the color used by color space.
Initializes a new instance of the class.
The color space of the color.
The pattern resource name.
The base color.
Defines the color in color space.
The color space used by this color.
Gets the index of the color value.
Initializes a new instance of the class.
The color space of the color.
The index of the color value.
Defines the color in color space.
The color space of the color.
The values of the color.
Initializes a new instance of the class.
The color space of the color.
The values of the color.
Represents a PDF Form XObject.
Initializes a new instance of the class.
The in which the new will be used.
The bounds of the FormXObject.
Initializes a new instance of the class.
The in which the new will be used.
The bounds of the FormXObject.
The resource dictionary.
Initializes a new instance of the class using a specified page as the source.
Note that and properties
are automatically adjusted to take into account the property of the source page.
The target where the new will be used.
The source the content of which is copied to the .
The source page can belong to another document.
Returns the used to build content of this .
This method is called from the
immedeaty before some writing operation.
Gets the list of fonts referenced by this .
The list of fonts referenced by this .
Creates a list of objects using a specified list of pages as the source.
Note that and properties
are automatically adjusted to take into account the property of the source page.
The target where the new objects will be used.
The list of the source objects. These pages can belong to another document.
The list of created objects.
Gets the list of embedded files associated with this .
Gets the owning this object.
Gets or sets the bounds of this .
Gets or sets the that maps form space into user space.
Gets an instance of that can be used to generate content of this .
Represents graphics state during rendering PDF content.
Do not mix up this with it defines PDF Graphics State dictionary object.
Current transform matrix.
The line width.
The shape of the endpoints for any open path that is stroked.
The shape of joints between connected segments of a stroked path.
The maximum length of mitered line joins for stroked paths.
The dash pattern to be used when paths are stroked, null indicates solid line.
See PDF1.7 page 217 for details.
The blend mode to be used in the transparent imaging model.
Currenty alpha constant for stroking operations.
Current alpha constant for non stroking operations.
Color used for stroking operations.
Color for nonstroking operations.
The Rendering Intent, see PDF 1.7 for details.
The flatness tolerance in the graphics state (see Section 6.5.1, “Flatness Tolerance”).
This is a number in the range 0 to 100;
a value of 0 specifies the output device’s default flatness tolerance.
The Smoothness Tolerance. See PDF 1.7 page 509.
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).
The text knockout flag, which determines the behavior of overlapping glyphs within a text object
in the transparent imaging model (see Section 5.2.7, “Text Knockout”).
Indicates whether to apply overprint. See Section 4.5.6, “Overprint Control”
Indicates whether to apply overprint for non stroking operations. See Section 4.5.6, “Overprint Control”
The overprint mode, see specification for details. See Section 4.5.6, “Overprint Control”
The object which maps the interval [ 0.0 1.0 ] to the interval [ 0.0 1.0 ],
see PDF specification for details.
The object which maps the interval [ 0.0 1.0 ] to the interval [ −1.0 1.0 ],
see PDF specification for details.
The which maps the interval [ 0.0 1.0 ] to the interval [ 0.0 1.0 ],
see PDF specification for details.
The object defining current Soft Mask.
The font.
The name of font resource.
The font size.
"Tc" Character spacing.
A number expressed in unscaled text space units.
Character spacing is used by the Tj, TJ, and ' operators. Initial value: 0.
"Tw" Word spacing.
A number expressed in unscaled text space units.
Word spacing is used by the Tj, TJ, and ' operators. Initial value: 0.
Processed as but only for space character (character with code 32).
"Tz" The horizontal scaling.
A number specifying the percentage of the normal width. Initial value: 100 (normal width).
"Tl" Text leading.
A number expressed in unscaled text space units.
Text leading is used only by the T*, ', and " operators. Initial value: 0.
"Tr" Text rendering mode.
"Ts" Text rise.
The distance, in unscaled text space units, to move the baseline up or down from
its default location.
Positive values of text rise move the baseline up.
Adjustments to the baseline are useful for drawing superscripts or subscripts.
"Tm" Current text matrix.
Current text line matrix.
Creates stroke pen to outline a text's glyphs.
Tries to interpret current nonstroke color as simple .
Tries to interpret current stroke color as simple .
Copies properties from another object.
Creates copy of this object.
Resets properties of to default values as they described in PDF specification.
Base abstract class for classes representing PDF graphics state parameter dictionary.
Gets or sets the thickness of the line used to stroke a path.
Gets or sets the shape to be used at the ends of open subpaths (and dashes, if any) when they are stroked.
Gets or sets the shape to be used at the corners of paths that are stroked.
Gets or sets the miter limit imposes a maximum on the ratio of the miter length to the line width.
When the limit is exceeded, the join is converted from a miter to a bevel.
Gets or sets the .
Gets or sets the PDF rendering intent. See PDF specification for details.
Gets or sets a value indicating whether to apply overprint specified by the .
Gets or sets a value indicating whether to apply overprint specified by the
for non stroke operations. If not specified then is used for
non stroke operations.
Gets or sets overprint mode, see PDF specification for details.
Gets or sets the defining font's properties.
Gets or sets object which maps the interval [ 0.0 1.0 ] to the interval [ 0.0 1.0 ],
see PDF specification for details.
Gets or sets object which maps the interval [ 0.0 1.0 ] to the interval [ −1.0 1.0 ],
see PDF specification for details.
Gets or sets which maps the interval [ 0.0 1.0 ] to the interval [ 0.0 1.0 ],
see PDF specification for details.
Gets or sets the maximum permitted distance in device pixels between the mathematically
correct path and an approximation constructed from straight line segments.
Gets or sets the value controls the quality of smooth shading (type 2 patterns and the sh operator)
and thus indirectly controls the rendering performance.
Gets or sets a value indicating whether to apply automatic stroke adjustment,
see PDF specification for details.
Gets or sets the blend mode,
see PDF specification for details.
Gets or sets the color alpha for stroking operations.
Gets or sets the color alpha for nonstroking operations.
Gets or sets the value indicating whether the current soft mask and alpha constant are to be interpreted as shape values.
Gets or sets the flag flag, which determines the behavior of overlapping
glyphs within a text object in the transparent imaging model.
See PDF specification for details.
Gets or sets object defining Soft Mask.
Defines the array of PDF functions which can be used in Graphics State.
Gets the object used to specify Default value.
Gets the object used to specify Identity value.
Initializes a new instance of the class.
Gets the array of used in calculation.
Gets the special type of the object , .
Defines possible custom values of .
Denoting the transfer function that was in effect at the start of the page
The identity function
The property defines the functions used in calculation.
Defines the PDF function which can be used in Graphics State.
Gets the instance indicating "Default" value.
Initializes a new instance of the class.
Gets the used in calculation, if NULL
then denoting the function that was in effect at the start of the page.
Represents PDF graphics state parameter dictionary,
instances of this class created during parsing PDF content.
Represents group attributes dictionary.
Represents transparency group attributes.
(Sometimes required, see PDF specification for details)
The group color space.
(Optional)
A flag specifying whether the transparency group is isolated (see Section 7.3.4, “Isolated Groups”).
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.
(Optional)
A flag specifying whether the transparency group is a knockout group (see Section 7.3.5, “Knockout Groups”).
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.
Represents a PDF color mask object.
See PDF specification for details.
Gets the list of color ranges defining the mask.
Defines the color range, all colors fall in this range should not be painted.
Initializes a new instance of the class.
Gets or sets the minimum of the color range.
Gets or sets the maximum of the color range.
Used internally to generate Hatch Tilling patterns.
Represents PDF Image XObject loaded from PDF content.
Gets an array of component values specifying the matte color with which the image data in the parent image
has been preblended. The array consists of nnumbers, where n is the number of components in the color space
specified by the ColorSpace entry in the parent image’s image dictionary;
the numbers must be valid color components in that color space. If this entry is absent,
the image data is not preblended.
Gets an array of numbers describing how to map image samples into the range of values appropriate for
the image’s color space. See PDF specification for details.
Gets the number of bits used to represent each color component in a sample.
Valid values are 1, 2, 4, 8, and (in PDF 1.5) 16. Default value: 8.
Gets a flag indicating whether the image is to be treated as an image mask
(see Section 4.8.5, “Masked Images”). 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.
Gets image's mask, it can be defined by object or another object.
Gets image's soft mask.
Gets image's color space.
Gets an object containing image's data.
Base abstract class for classes defining PDF images.
Gets the list of embedded files associated with this .
Gets a value indicating whether the image defined as stencil mask for painting in the current color.
Gets a value indicating whether the image is an inline image defined directly in content stream.
Gets the width of the image in pixels.
Gets the height of the image in pixels.
Gets the horizontal resolution of the image.
If this property returns value less or equal 0 then horizontal resolution is not specified for an image.
Gets the vertical resolution of the image.
If this property returns value less or equal 0 then vertical resolution is not specified for an image.
Returns an object, it should be disposed after usage.
In PDF images can be specified as "image mask", the image data is to be used
as a stencil mask for painting in the current color, defines
current, defines color of area excluded from filling,
transparent in most cases.
The current color used to fill unmasked area.
The masked color defines color of area excluded from filling, typically transparent.
The object.
Keyed collection of objects.
Adds image to the collection, returns existing if collection
already contains with same combination of and .
Gets the object that owns this collection.
Defines wrapper around allows work with it as with trivial .
Gets the owning this object.
Gets native object managed by this object.
Gets the image's opacity.
Represents PDF Inline Image, it defined via BI, ID and EI operators in PDF content stream.
Gets an array of numbers describing how to map image samples into the range of values appropriate for
the image’s color space. See PDF specification for details.
Gets the number of bits used to represent each color component in a sample.
Valid values are 1, 2, 4, 8, and (in PDF 1.5) 16. Default value: 8.
Gets image's color space.
Gets a flag indicating whether the image is to be treated as an image mask
(see Section 4.8.5, “Masked Images”). 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.
Gets the width of the image in pixels.
Gets the height of the image in pixels.
Gets object containing image's data.
Note! Returned object should be disposed after usage.
Creates an object from this inline image.
Defines possible pattern types.
Abstract base class for PDF patterns.
Defines PDF shading pattern.
Defines possible tilling types of the .
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.
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.
Pattern cells are spaced consistently as in tiling type 1 but with additional distortion
permitted to enable a more efficient implementation.
Defines PDF tilling pattern.
Common interface for and .
Defines PDF resource dictionary.
The collection of font resources.
The collection of graphics state resources.
The collection of XObject resources.
The collection of shading resources.
The collection of pattern resources.
The collection of Color Space resources.
See PDF specification for details.
Creates with default "DevRGBCS"
color space.
Returns resource name of specified font.
Returns resource name of specified graphics state params.
Returns resource name of specified XObject.
Returns resource name of specified shading.
Returns resource name of specified pattern.
Returns resource name of specified color space.
Returns by resouce name.
Returns by resource name.
Returns by resource name.
Returns by resource name.
Returns by resource name.
Returns by resource name.
Defines base class of PDF resource collection.
Enumerates collection's items as indirect PDF objects.
Writes item's value.
Writes resource dictionary property corresponding to this collection.
Returns count of objects in the collection which were written as indirect PDF objects.
Returns a value indicating whether collection contains specified object.
Adds object to the collection.
Returns name of specified resource, if resource does not exists in the collection
it will be added with newly generated unique name.
Returns object by resource name.
Collection of resource objects supporting interface.
The resource type, type should support interface.
Collection of objects.
Base class for axial and radial shadings.
The list of PDF functions calculating gradient.
See PDF specification for details.
See PDF specification for details.
Indicates whether to extend the shading beyond the starting point.
See PDF specification for details.
Indicates whether to extend the shading beyond the ending point.
See PDF specification for details.
Defines axial PDF shading.
The start gradient point, coordinates are expressed in the pattern's target coordinate space.
The end gradient point, coordinates are expressed in the pattern's target coordinate space.
Defines axial PDF shading.
The coordinates of the center of the starting circle, coordinates are expressed in the pattern's target coordinate space.
The radius of the starting circle, expressed in the pattern's target coordinate space.
The coordinates of the center of the ending circle, coordinates are expressed in the pattern's target coordinate space.
The radius of the ending circle, expressed in the pattern's target coordinate space.
Base class for shading PDF objects used to define gradients.
The bounds of the shading in shading's target coordiate space.
The color space in which color values are expressed.
This may be any device, CIE-based, or special color space except a Pattern space.
Gets the shading type, see enum.
Base class for Type4 - Type7 shadings.
The abstract base class representing a PDF Soft Mask.
According to the PDF specification, a soft mask can be specified as a PDF name object or as a dictionary,
see and .
Gets a instance representing an empty soft mask.
Represents a soft mask defined as a PDF name object.
Used to represent predefined values, e.g. "None".
Gets the name of this soft mask.
Defines the possible types of a soft mask.
Represents a PDF Soft Mask as described in the PDF spec 1.7, page 552.
A subtype specifying the method to be used in deriving the mask values from
the transparency group specified by the .
A transparency group to be used as the source of alpha or color values for deriving the mask.
Gets the transparency group to be used as the source of alpha
or color values for deriving the mask.
Creates a object.
The in which the new will be used.
The bounds where the soft mask should be applied.
The created object.
Decodes images with CCITTFaxDecode filter.
Decodes images with DCTDecode filter.
Common interface for and .
Used by to build image from PDF image definition.
Can be: , or null.
See PDF 1.7 page 555 for details.
See PDF 1.7 page 344 for details.
Used in formula:
colorSpaceColorComponent = Dmin + (imageColorComponent * (Dmax - Dmin) / (2^BitsPerComponent - 1))
Dmin.
Contains precalculated value of (Dmax - Dmin) / (2^BitsPerComponent - 1).
Contains methods used to build from PDF image object defined by
interface.
Creates from , can
throw an exception if defines unknown / unsupported data.
Decodes images with IsImageMask == true and Stream.Format == Raw.
Decodes images with JBIG2Decode filter.
Base class for and .
RAW image decoder.
Represents options controlling how native images are processed when inserted in a PDF file.
Resets all properties to their default values.
Copies all property values from another object.
The source object.
Gets or sets a value indicating whether all images should be converted to JPEG format
when added to the PDF. The default is false.
Note that any transparency (if present in the original image) is lost if this property is set to true.
This property does not affect images added as .
Gets or sets the JPEG image quality, in percent.
This value must be between 0 (lowest quality, maximum compression) to 100 (highest quality, no compression).
The default is 75.
Gets or sets the alpha threshold value.
If all pixels of an image with the alpha channel have alpha values greater than or equal to this value,
the alpha channel will not be saved, thus making the image and the whole PDF smaller.
The default is 0xFF (i.e. all transparency is preserved).
This property is ignored if is true.
Gets or sets a value indicating whether to apply a slight compression to color values.
Unlike JPEG, this preserves transparency while still reducing the image size.
The default is false.
Represents a "map" of images in the document.
Builds using specified .
Count of pages loaded when GcPdfDocument.LicensedState == Unlicensed.
Analyzes content stream.
Calculates *real* bounds of the PDF content stream using its drawing commands.
Parses Default Appearance String (DA) and fills appropriate properties.
Implements methods to parse default appearance string (DA entry of WidgetAnnotation for example) and feels
appropriate properties of passed object.
Parses Default Appearance String (DA) and fills appropriate properties.
Represents utility class used to convert object to / from enum during PDF parsing.
Builds list of fonts referenced from content stream including nested objects.
Various extension methods for GcGraphics.
Draws CheckBox, checkbox mark is drawn using standard ZapfDingbats font, and it fits into specified bounds.
Draws ComboBox.
Draws CombTextBox control.
Draws ListBox control.
Draws Image at specified bounds.
Draws PushButton at specified bounds.
Draws RadioButton control.
Draws TextBox control.
Draws TextBox control.
Draws RichTextBox control.
Creates the using specified TextFormat and text.
Creates the using specified TextFormat and text.
Contains, constants, utility methods common for GcPdf.
In GcGraphics method the dash pattern specified same as in WinForms, WPF etc
i.e. the dashes' sizes depending on width of current line, but in
PDF size of dashes INDEPENDENT from line width.
So, this method recalculates dashes depending on line width.
Returns rectangle containing all specified points.
Checks whether a point specified by and
is in a , updates the
to fit the point if needed.
Returns "our" name used as default value in and .
Returns true if contains code of HEX digit.
Returns number for two hex digits.
Tries to convert to DateTime, see PDF1.7 page 160 for details
about DateTime representation in PDF.
YYYYMMDDHHmmSSOHH'mm'
Tries to convert specified value to PDF int value.
Tries to convert specified value to PDF boolean value.
Tries to convert specified value to PDF boolean nullable value.
Tries to convert specified value to PDF float value.
Tries to convert specified value to PDF float nullable value.
Tries to convert specified value to PDF name value.
Tries to convert specified value to PDF string value.
Tries to convert specified value to PDF array.
Tries to convert specified value to PDF dictionary.
Returns text description of PDF value.
Converts string to byte array using simple "(byte)s[i]" conversion.
Reads specified amount of bytes (max 8) using big-endian order.
Writes specified amount of bytes (max 8) using big-endian order.
Reads specified amount of bytes (max 4) using big-endian order.
Reads specified amount of bytes (max 4) using big-endian order.
Reads value from bytes list.
Reads chars in UTF-16 encoding from bytes list.
Contains information about resources referenced from content stream.
Instance of this class is created by the .
Returns a value indicating whether all collections of this is empty.
Builds list of resources referenced from content stream.
Provides same behavior as but allows to access internal array,
only items of underlying array are significant.
The array containing list's data.
Initialize a new instance of the class.
The initial capacity.
Initialize a new instance of the class.
Adds element to the list.
Clears the list.
Get the count of active elements.
Gets or sets the element this specified index.
A strongly-typed resource class, for looking up localized strings, etc.
Returns the cached ResourceManager instance used by this class.
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
Looks up a localized string similar to BitsPerSample of audio files should be multiple of 8..
Looks up a localized string similar to Unknown Audio Format..
Looks up a localized string similar to Value should be a non-negative..
Looks up a localized string similar to Properties of [{0}] font can not be changed because it is used in document..
Looks up a localized string similar to Font [{0}] can not be encoded as standard Type1 font, to many glyphs is used from this font, to avoid this error embed font to document setting PdfFont.Embed to true..
Looks up a localized string similar to Font [{0}] can not be removed becayse it is used in document..
Looks up a localized string similar to The current value of GcPdfDocument.Linearized is true. The attempted operation is incompatible with that value. To avoid this exception, set Linearized to false prior to the operation..
Looks up a localized string similar to GcPdfDocument.Linearized can not be true when StartDoc() / EndDoc() methods is used to generate document..
Looks up a localized string similar to Click to Sign.
Looks up a localized string similar to Content Stream {0} can not be changed..
Looks up a localized string similar to FormXObject should belongs to same GcPdfDocument as GcPdfGraphics..
Looks up a localized string similar to Invalid FDF stream, can not find Catalog object..
Looks up a localized string similar to Field [{0}] not found..
Looks up a localized string similar to Fonts collection can not be cleared because it contains used fonts..
Looks up a localized string similar to Color space ({0}) has invalid count of color components ({1}) for CCITTFax filter, should be 1..
Looks up a localized string similar to ColorSpace [{0}] cannot be used to define an image..
Looks up a localized string similar to Image decoding for [{0}] color space is not implemented..
Looks up a localized string similar to ColorSpace not specified for image..
Looks up a localized string similar to Count of color components in Jpeg image ({0}) does not match count of color components defined by ColorSpace of PDF image ({1})..
Looks up a localized string similar to Unsupported count of color components in Jpeg image ({0})..
Looks up a localized string similar to Decoder [{0}] does not support image masks..
Looks up a localized string similar to Decoder [{0}] does not support soft image masks..
Looks up a localized string similar to Unsupported DeviceN color space..
Looks up a localized string similar to Alternate color space not specified for ICCBased color space..
Looks up a localized string similar to Color Profile not specified for ICCBased color space..
Looks up a localized string similar to Indexed color space has invalid data..
Looks up a localized string similar to Image has invalid Height [{0}]..
Looks up a localized string similar to Invalid image data..
Looks up a localized string similar to Image has invalid Width [{0}]..
Looks up a localized string similar to Image used as mask for another image should have ImageMask parameter with true value..
Looks up a localized string similar to Unsupported colorant [{0}] for Separation color space..
Looks up a localized string similar to Image has unsupported BitsPerComponent value [{0}]..
Looks up a localized string similar to Unsupported image format..
Looks up a localized string similar to Image was disposed before saving the GcPdfDocument..
Looks up a localized string similar to Incorrect certificate (must be private key)..
Looks up a localized string similar to Stream passed to GcPdfDocument.Save() method should support read and seek operations..
Looks up a localized string similar to Item [{0}] already has owner [{1}]..
Looks up a localized string similar to [{0}] belongs to a different document..
Looks up a localized string similar to [{0}] with name [{1}] already exists..
Looks up a localized string similar to Name of a [{0}] cannot be empty.".
Looks up a localized string similar to In StartDoc() / EndDoc() mode only properties of last page can be changed..
Looks up a localized string similar to In StartDoc() / EndDoc() mode only properties of last page content stream can be changed..
Looks up a localized string similar to Page.ContentStreams collection can not be changed when document generated via StartDoc() / EndDoc() methods..
Looks up a localized string similar to GcPdfDocument.Pages collection can not be changed when document generated via StartDoc() / EndDoc() methods..
Looks up a localized string similar to PageContentStream can not be used with specified page because it uses another resource dictionary..
Looks up a localized string similar to Expected key in dictionary object..
Looks up a localized string similar to Exception occurred while building decrypt Security Handler.
{0}.
Looks up a localized string similar to Expected end of array..
Looks up a localized string similar to Expected end of dictionary object..
Looks up a localized string similar to Expected end of HEX string..
Looks up a localized string similar to %%EOF marker is not found..
Looks up a localized string similar to Expected end of literal string..
Looks up a localized string similar to Decode Filter [{0}] not found..
Looks up a localized string similar to {0} is linked with a "hanging" object [{1}] and this object can not be associated with document's content..
Looks up a localized string similar to Expected HEX string or dictionary object..
Looks up a localized string similar to Image filter [{0}] should be last in the "Filter" property of Stream object..
Looks up a localized string similar to Array item [{0}] has invalid/unsupported value [{1}]. [{2}]..
Looks up a localized string similar to Array item [{0}] has value [{1}] which can not be converted to [{2}]..
Looks up a localized string similar to Invalid char [{0}] in ASCII85 stream..
Looks up a localized string similar to Invalid char [{0}] in ASCIIHex stream..
Looks up a localized string similar to Invalid CMap stream..
Looks up a localized string similar to Invalid Cross-Reference stream object..
Looks up a localized string similar to Invalid Cross-Reference table..
Looks up a localized string similar to Invalid value [{0}] specified as Page for Destination object..
Looks up a localized string similar to Dictionary key [{0}] has invalid/unsupported value [{1}]. [{2}]..
Looks up a localized string similar to Dictionary key [{0}] has value [{1}] which can not be converted to [{2}]..
Looks up a localized string similar to Document Catalog not specified..
Looks up a localized string similar to Invalid/Unknown encrypt definition..
Looks up a localized string similar to Expected second '>' as end of dictionary..
Looks up a localized string similar to Value [{0}] connot be converted to enum [{1}]..
Looks up a localized string similar to Invalid File ID..
Looks up a localized string similar to Invalid HEX string..
Looks up a localized string similar to Invalid Inline Image object definition..
Looks up a localized string similar to Invalid length of File ID item..
Looks up a localized string similar to [{0}] is invalid number, 0 is used as value..
Looks up a localized string similar to Invalid Object Stream {0}..
Looks up a localized string similar to Invalid password..
Looks up a localized string similar to PDF reference [{0} R] references value [{1}] which can not be converted to [{2}]..
Looks up a localized string similar to Invalid Standard Security Handler definition..
Looks up a localized string similar to Invalid startxref value..
Looks up a localized string similar to Invalid stream object..
Looks up a localized string similar to Value [{0}] was converted to [{1}], it can not be converted to [{2}]..
Looks up a localized string similar to PDF object [{0}] was already converted to [{1}], it can not be converted to [{2}]..
Looks up a localized string similar to Value [{0}] can not be converted to [{1}]..
Looks up a localized string similar to PDF dictionary does not contain [{0}] value..
Looks up a localized string similar to Object Stream {0} is not found..
Looks up a localized string similar to Expected PDF object..
Looks up a localized string similar to Cross-Reference table specified in "Prev" entry is not found..
Looks up a localized string similar to Unsupported revision [{0}] of StandardSecurityHandler..
Looks up a localized string similar to startxref marker is not found..
Looks up a localized string similar to startxref offset is not found..
Looks up a localized string similar to Trailer dictionary not found..
Looks up a localized string similar to Unexpected exception occurred while parsing PDF document.
{0}.
Looks up a localized string similar to Unknown action type [{0}]..
Looks up a localized string similar to Unknown encryption algorithm [{0}]..
Looks up a localized string similar to Unknown entry type [{0}] in Cross-Reference stream object..
Looks up a localized string similar to Unknown PDF content..
Looks up a localized string similar to Unknown type of Security Handler: [{0}]..
Looks up a localized string similar to Child item of StructElement has unknown type [{0}]..
Looks up a localized string similar to Value [{0}] is too big..
Looks up a localized string similar to Value [{0}] is too small..
Looks up a localized string similar to Can not render PDF image of another PDF document..
Looks up a localized string similar to EncriptionKeyLength must be a multiple of 8, in the range 40 to 128..
Looks up a localized string similar to EncriptionKeyLength must be 128 if EncryptionAlgorithm is AES..
Looks up a localized string similar to Invalid Standard Security Handler revision 5..
Looks up a localized string similar to Standard Security Handler Revision 5 supports only AES encryption..
Looks up a localized string similar to Standard Security Handler Revision 5 supports only 256 bit key length..
Looks up a localized string similar to Password is too long. According to PDF specification, password should be converted to byte array using UTF8 encoding and only the first 127 bytes are used for encryption..
Looks up a localized string similar to Authenticated attribute is missing the digest..
Looks up a localized string similar to Cannot decode PKCS7SignedData object..
Looks up a localized string similar to "Cannot find signing certificate with serial [{0}]..
Looks up a localized string similar to Failed to get response from TSA server {0}..
Looks up a localized string similar to Invalid TSA response from {0}..
Looks up a localized string similar to No timetoken in TSA response from {0}..
Looks up a localized string similar to Not a valid PKCS#7 object - not a sequence..
Looks up a localized string similar to Not a valid PKCS#7 object - not signed data..
Looks up a localized string similar to This PKCS#7 object has multiple SignerInfos - only one is supported at this time..
Looks up a localized string similar to Signature is empty..
Looks up a localized string similar to Unsupported signature type [{0}]..
Looks up a localized string similar to APPROVED.
Looks up a localized string similar to AS IS.
Looks up a localized string similar to CONFIDENTIAL.
Looks up a localized string similar to DEPARTMENTAL.
Looks up a localized string similar to DRAFT.
Looks up a localized string similar to EXPERIMENTAL.
Looks up a localized string similar to EXPIRED.
Looks up a localized string similar to FINAL.
Looks up a localized string similar to FOR COMMENT.
Looks up a localized string similar to FOR PUBLIC RELEASE.
Looks up a localized string similar to NOT APPROVED.
Looks up a localized string similar to NOT FOR PUBLIC RELEASE.
Looks up a localized string similar to SOLD.
Looks up a localized string similar to TOP SECRET.
Looks up a localized string similar to All StructElement objects in document's structure tree should have unique IDs..
Looks up a localized string similar to Unsupported image type [{0}]..
Looks up a localized string similar to Object [{0}] can not be used in ActionHide..
Looks up a localized string similar to Value should be IImage or FormXObject..
For internal use.
Can be used for logging the currently executed operations.
The stack of currently executed operations.
The list of log messages.
Clears the log.
Adds object to .
Creates and adds object to .
Creates and adds object to .
Creates and adds object to .
Pops last operation object from .
Adds log message.
Gets or sets the maximum log size, if log exceeds specified value then all warning and info will not be added.
Defines possible severity of log entry.
For internal use.
For internal use.
For internal use.
For internal use.
Defines the base class for log entries.
Initializes a new instance of the class.
Gets the severity of log entry.
Get the message of log entry.
Defines the log entry based on custom message.
Initializes a new instance of the class.
Initializes a new instance of the class.
Defines the log entry based on custom exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
Initializes a new instance of the class.
Gets the exception.
Defines the log entry about some operation performed during document processing.
Initializes a new instance of the class.
Gets the associated object.
Defines "operation begin" the log entry.
Initializes a new instance of the class.
Defines "operation end" the log entry.
Initializes a new instance of the class.
Indicates that reference to specified PDF object can not be resolved.
Initializes a new instance of the class.
Gets the ID of referenced PDF object.
Base class for log entries indicating invalid value obtained during parsing PDF document.
Initializes a new instance of the class.
Gets the value.
Base class for log entries indicating invalid value obtained during parsing PDF document
with some description about error.
Initializes a new instance of the class.
Gets the description why value is invalid.
Indicates invalid value obtained from PDF dictionary.
Initializes a new instance of the class.
Gets the value key in PDF dictionary.
Indicates invalid value obtained from PDF array.
Initializes a new instance of the class.
Gets the index in PDF array.
Indicates that value obtained during parsing PDF document has invalid / unsupported type.
Initializes a new instance of the class.
Initializes a new instance of the class.
Gets the expected type of the value.
Indicates that value obtained from PDF dictionary has invalid / unsupported type.
Initializes a new instance of the class.
Initializes a new instance of the class.
Gets the value key in PDF dictionary.
Indicates that value obtained from PDF array has invalid / unsupported type.
Initializes a new instance of the class.
Initializes a new instance of the class.
Gets the value index in PDF array.
Indicates warning occurs during parsing the PDF content stream.
Initializes a new instance of the class.
Indicates warning occurs during parsing the PDF content stream.
Initializes a new instance of the class.
Initializes a new instance of the class.
Defines list of objects.
Defines some operation performed during document processing.
Indicates whether this opertion was added to .
Gets the operation description.
Parse PDF object with specified ID.
Initializes a new instance of the class.
Initializes a new instance of the class.
Gets the description of PDF object, it can be type of PDF object or something else allows to determine that exactly read.
Gets the ID of PDF object read in this operation.
Parse value and create some object from it.
Initializes a new instance of the class.
Gets the type of object created from value.
Gets the desciption of value from which object read.
Defines the stack of currently executed operations.
Fr internal use.
For internal use.
Abstract base class for parameterized Marked Content Tags.
Returns tag's name used in BDC / BMC commands.
Gets a value indicating whether the current tag object has additional properties.
Abstract base class for tags that use to store properties.
Gets the object containing the current tag's properties.
Represents a common custom tag, which can be prepared to represent any tag.
Gets or sets this tag's name.
Represents a standard MCID tag.
Initializes a new instance of the class.
Initializes a new instance of the class.
The value of the property.
The value of the property.
Gets or sets the type of a structure item that owns the content represented by this MCID tag.
Gets or sets the ID of this marked content sequence.
Represents a standard Artifact tag.
Specifies the well-known values of an artifact tag's .
Pagination.
TypeLayout.
TypePage.
TypeBackground.
Specifies the well-known values of an artifact tag's .
Header.
Footer.
Watermark.
Gets or sets the type of this artifact.
If present, must be one of the names "Pagination", "Layout", "Page", or (PDF 1.7) "Background".
Gets or sets the subtype of this artifact.
This entry applies only when the property is "Pagination".
Valid values are "Header", "Footer" and "Watermark".
Additional values can be defined for this property, see PDF specification for details.
Gets or sets this artifact’s bounding box (the rectangle that completely encloses its visible extent).
Represents XMP metadata associated with a document.
Initializes a new instance of the class.
Called when property of is changed, used to track situation when
object should be rewritten in case of incremental updates.
Gets or sets the PDF/A conformance version.
Gets or sets the PDF/UA conformance version.
Null indicates that the document is not PDF/UA compliant.
Gets or sets the document's producer. Maps to PDF 'Producer' property.
The default is the versioned name of the GcPdf library.
Gets or sets the document's title. Maps to Dublin Core 'title' property.
Gets the list of document creators. Maps to Dublin Core 'creator' property.
Gets or sets the document description. Maps to Dublin Core 'description' property.
Gets the list of document keywords, or subjects. Maps to Dublin Core 'subject' property.
Gets the list of document contributors. Maps to Dublin Core 'contributor' property.
Gets or sets the document coverage. Maps to Dublin Core 'coverage' property.
Gets or sets the document identifier. Maps to Dublin Core 'identifier' property.
Gets the list of document languages. Maps to Dublin Core 'language' property.
Gets the list of document publishers. Maps to Dublin Core 'publisher' property.
Gets the list of document relations. Maps to Dublin Core 'relation' property.
Gets or sets the document copyright. Maps to Dublin Core 'rights' property.
Gets or sets the document source. Maps to Dublin Core 'source' property.
Gets the list of document types. Maps to Dublin Core 'type' property.
Gets the list of document dates. Maps to Dublin Core 'date' property.
Gets or sets the creation date. Maps to XMP 'CreateDate' property.
If null, the current date/time is used.
Gets or sets the modification date. Maps to XMP 'ModifyDate' property.
If null, the current date/time is used.
Gets or sets the metadata date. Maps to XMP 'MetadataDate' property.
If null, the current date/time is used.
Gets or sets the creator tool, in PDF/A compatible documents this value should be
the same as .
Gets or sets a value indicating whether the metadata is marked as read-only.
Gets the content of the current metadata as a .
The which owns the current metadata.
A representing the current metadata.
Gets the content of the current metadata as a .
The which owns the current metadata.
An representing the current metadata.
Resets values of this object to default values.
Adds a property to metadata.
Note that only allowed namespaces are:
"http://purl.org/dc/elements/1.1/" (Dublin Core Properties)"http://ns.adobe.com/xap/1.0/" (XMP Core Properties)"http://ns.adobe.com/pdf/1.3/" (PDF Properties)
Trying to add a property with another namespace will throw an exception.
XML namespace.
Property name.
Property value.
Formats a DateTime value for writing to metadata.
A DateTime value to format.
Formatted string.
Represents document's Name Dictionary, see PDF 1.7 page 150 for details.
Defines the collection of objects.
Gets the owning this collection.
Root, document-level collection of objects.
Writes "Outlines" dictionary to the PDF document.
Defines the outline node within PDF document.
Initializes a new instance of the class.
Initializes a new instance of the class.
The title of .
Initializes a new instance of the class.
The title of .
The to be activated when this clicked.
The initial expanded state of .
Initializes a new instance of the class.
The title of .
The to be activated when this clicked.
The initial expanded state of .
Gets the collection containing this object.
Gets the owning this object.
Gets the parent .
Gets or sets the title of the outline node.
Gets or sets the text color of the outline node.
Gets or sets the text style of the outline node.
Gets or sets the to be displayed when this is activated.
If both and are specified when
wil be written to PDF file.
Gets or sets the to be performed when this is activated.
If both and are specified when
wil be written to PDF file.
Gets or sets a value indicating whether this expanded and its child nodes are visible.
Gets the collection containing child nodes.
Gets a value indicating whether collection is not empty.
Defines possible styles of outline text.
Regular.
Italic style.
Bold style.
Provides a means for matching the color characteristics of a PDF document with those of a target
output device or production environment in which the document will be printed.
Gets or sets the output intent subtype.
Gets or sets a string concisely identifying the intended output device or production condition
in human-readable form.
This is the preferred method of defining such a string for presentation to the user.
Gets or sets a string identifying the intended output device or production condition in
human- or machine-readable form.
If human-readable, this string may be used in lieu of an OutputCondition string for presentation to the user.
Gets or sets a string (conventionally a uniform resource identifier, or URI) identifying
the registry in which the condition designated by OutputConditionIdentifier is defined.
Gets or sets a string containing additional information or comments about the intended target
device or production condition.
Gets or sets an color space defining the transformation from the PDF document’s source colors
to output device colorants.
A collection of objects that make up a PDF document.
Creates a new and adds it to the end of the document.
The newly created page.The size of the new page is determined by the
property of the parent document.You can also add pages to a by calling the
method.
Creates a new with the specified size and adds it to
the end of the document.
The size of the new page, in points.
The newly created page.You can also add pages to a by calling the method.
Creates a new of the specified and adds it to
the end of the document.
The determining the size of the new page.
The newly created page.You can also add pages to a by calling the method.
Creates a new page and inserts it at a specific position in the document.
The position where the new page will be inserted.
The newly created page.The size of the new page is determined by the property
of the parent document.
Creates a new page with the specified size and inserts it at a specific
position in the document.
The position where the new page will be inserted.
The size of the new page, expressed in points.
The newly created page.
Creates a new page with the specified size and inserts it at a specific
position in the document.
The position where the new page will be inserted.
The size of the new page, expressed as a .
The newly created page.
Gets the object owning this collection.
Gets the last page in the collection.
Defines possible values for annotations tabs order.
Row order.
Column order.
Structure order.
Represents a page in a .
The parent of page, used when count of pages exceeds the c_MaxPDFAArraySize,
Initializes a new instance of the class.
Called when page removed from document.
Called in sequential mode (StartDoc / EndDoc).
Writes NOT empty content stream objects,
returns ObjID of first not empty content stream or if all are empty.
Writes other nested objects: annotations etc
The used by this page.
Creates new , its initialized with new instance of .
Creates new , its initialized with new instance of .
Creates new , its initialized with new instance of .
Saves the page as an image to a stream in PNG format.
The output stream.
The object.
Saves the page as an image to a file in PNG format.
The output file path.
The object.
Saves the page as an image to a stream in BMP format.
The output stream.
The object.
Saves the page as an image to a file in BMP format.
The output file path.
The object.
Saves the page as an image to a stream in GIF format.
The output stream.
The object.
Saves the page as an image to a file in GIF format.
The output file path.
The object.
Saves the page as an image to a stream in JPEG format.
The output stream.
The object.
Saves the page as an image to a file in JPEG format.
The output file path.
The object.
Saves the page as an image to a stream in TIFF format.
The output stream.
The object.
Saves the page as an image to a file in TIFF format.
The output file path.
The object.
Draws the page on a .
The on which to draw the page.
The draw bounds.
Indicates whether to draw the annotations.
Indicates whether to draw the form fields.
Draws specified annotations on a .
Note that the specified annotations must belong to the current page.
The on which to draw the annotations.
The draw bounds.
The list of annotations to draw.
Draws all page annotations on a .
The on which to draw the annotations.
The draw bounds.
Gets the object that specifies the label of this page,
or null if no such range exists.
The that corresponds to this page.
Returns the page label specified via ,
returns empty string if page does not belong to document.
The page label.
Gets the list of fonts referenced from content streams on this page.
The list of fonts referenced from this page.
Builds and returns a for this page.
The horizontal resolution of the map, the default is 72dpi.
The vertical resolution of the map, the default is 72dpi.
An object containing the page text map.
Retrieves all text on the current page.
The page text, or null if the page does not contain any text.
Gets the size of the page on a device with specified horizontal and vertical resolutions.
The horizontal device resolution.
The vertical device resolution.
Returns the matrix used to convert coordinates in content stream of this page to device coordinates.
The horizontal device resolution.
The vertical device resolution.
Gets a containing the content of this .
Notes:The stream returned by this method should be disposed after use.This method can return null if the current page is empty.In sequential generate mode this method is not supported and will throw an exception.A stream with the current page's content.
Gets the list of images on this page.
The horizontal resultion used to calculate the bounds of images on the page.
The vertical resultion used to calculate the bounds of images on the page.
The list of images on the current page.
Gets or sets the page’s display duration (also called its advance timing):
the maximum length of time, in seconds, that the page shall be displayed during presentations
before the viewer application shall automatically advance to the next page
Default: null (the viewer shall not advance automatically).
Gets or sets the object describing the transition effect
that shall be used when displaying the page during presentations
Gets the list of objects displayed on this page.
Gets the list of embedded files associated with this page.
Gets or sets a positive number greater than 1 giving the size of default user space units, in multiples of 1/72 inch.
Default value: 1.0 (user unit is 1/72 inch).
As of December 2018, it seems that only Adobe Acrobat readers respect this property.
Gets or sets the tab order to be used for annotations on the page.
Gets an instance of GcPdfGraphics that can be used to draw on the current page,
graphics created from the last page content stream, if
collection is empty then new
automatically added.
Gets the containing content streams representing
content of this page.
Note that while manipulating the collection
(inserting, removing or moving elements) is allowed, the result of such
manipulations may produce an invalid PDF if the original document was created
or modified by a tool other than GcPdf. Generally speaking, it is safe to
insert new content streams at the first position in the collection,
or add them to the end of it, provided any content in the new stream(s)
was created by rendering on .
Any other operations on this collection in documents that were not created
by GcPdf might yield invalid PDFs.
Gets the object owning this object.
Gets the index of the page in its document.
Gets the collection containing this .
Gets the bounds of the current page in points.
The return value is the same as returned by .
Gets or sets the bounds of the page in points.
Gets or sets a rectangle, in points, 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 is .
Gets or sets a rectangle, in points, defining the region to which the contents of the page
should be clipped when output in a production environment.
Default value is .
Gets or sets a rectangle, in points, defining the intended dimensions of the finished page after trimming
Default value is .
Gets or sets a rectangle, in points, defining the extent of the page's meaningful content
(including potential white space) as intended by the page's creator.
Default value is .
Gets or sets the size of the current page in points.
Gets or sets the paper kind of the current page.
Gets or sets a value indicating whether the current page has landscape orientation.
Gets or sets an arbitrary application-defined object associated with the current page.
Gets the list annotations associated with the current page.
Gets or sets 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.
Represents a collection of objects owned by object.
Gets the object that owns this collection.
Defines collection of objects.
Returns true if collection contains NOT empty content streams.
Gets the object owning this collection.
Gets the object owning this collection.
Gets the last in the collection.
Creates a new and adds it to this .
The newly created page.
Creates a new and inserts it at a specific position in this .
The position where the new page will be inserted.
The newly created page.
Defines content stream of the page of .
Used during sequential writing, contains ID of PDF object containing length of page content stream.
Used during sequential writing, contains offset in document stream where page content started.
Used during sequential writing, indicates that should be disposed
when closed.
Initializes a new instance of the class.
The owning this object.
Called when PageContentStream removed from document.
Returns an instance of that can be used to generate content
of this .
The containing this .
Gets the System.IO.Stream containing the content of this object.
It is the caller's responsibility to dispose the returned stream after usage.Note 1: this method returns null if the current ContentStream object is empty.Note 2: in StartDoc/EndDoc mode this method is not supported and will throw an exception.Note 3: In some rare cases a page's content stream can break inside an operator, for example,
some operands are in Page.ContentStreams[0] and other operands are in Page.ContentStreams[1].
This is weird but does not contradict the PDF Specification. To avoid such situations use .
Gets the owning this object.
Defines possible numbering styles.
Decimal Arabic numerals.
Uppercase Roman numerals.
Lowercase Roman numerals.
Uppercase letters (A to Z for the first 26 pages, AA to ZZ for the next 26, and so on).
Lowercase letters (a to z for the first 26 pages, aa to zz for the next 26, and so on).
Value is not specified.
Value is unknown.
Represents a page labeling range.
A document is divided into labelling ranges, each of which is a series of consecutive pages
using the same numbering system.
Labelling ranges shall not overlap, so that each page shall have only one label.
Pages within a range shall be numbered sequentially in ascending order.
A page’s label consists of a numeric portion based on its position within its labelling range,
optionally preceded by a label prefix denoting the range itself.
Initializes a new instance of the class.
Initializes a new instance of the class.
Returns the label for a page with a specified index.
The page index in a document.
The page label.
Gets the index of the page from which this starts.
Gets or sets the label prefix for page labels in this range.
Gets or sets the value of the numeric portion for the first page label in the range.
Subsequent pages shall be numbered sequentially from this value,
which shall be greater than or equal to 1. Default value: 1.
Gets or sets the numbering style that shall be used for the numeric portion of each page label.
There is no default numbering style; if is
, page labels
shall consist solely of a label prefix with no numeric portion.
Returns a for specified page index.
Base class for content stream processors which can be used for:
rendering, text searching etc.
Base class for content stream processors which can be used for:
rendering, text searching etc.
Sets current text font and size, called when executing "Tf" operator.
Callback method, called when defined as resource defined as current
color space via "SC" or "sc" commands.
Callback method, called when new color setted as current color via "SC", "sc", "SCN" or "scn" commands.
Common processing for "CS" and "cs" operators.
Common processing for "SC" and "sc".
Common processing for "SCN" and "scn".
Common processing for "G" and "g".
Common processing for "RG" and "rg".
Common processing for "K" and "k".
Draws specified path, called by OpXXXPath() methods.
Intersects current clipping path with specified path, called by "W" and "W*" operators.
Removes last path added by method.
Override this method to render a text.
Current text rendering matrix can be requested via
method.
NOTE, this method should advance text matrix, see methods.
Processes an image.
Draws a shading.
Processes nested .
Sets graphics state.
Saves current graphics state to the stack.
Restores graphics state from the stack.
"q"
Save the current graphics state on the graphics state stack
(see “Graphics State Stack” on page 214).
"Q"
Restore the graphics state by removing the most recently saved state from the stack
and making it the current state (see “Graphics State Stack” on page 214).
"cm"
Modify the current transformation matrix (CTM) by concatenating the specified matrix
(see Section 4.2.1, “Coordinate Spaces”).
Although the operands specify a matrix, they are written as six separate numbers, not as an array.
"w"
Set the line width in the graphics state (see “Line Width” on page 215).
It is a non-negative number expressed in user space units;
stroking a path entails painting all points whose perpendicular distance from the
path in user space is less than or equal to half the line width.
"J"
Set the line cap style in the graphics state (see “Line Cap Style” on page 216).
"j"
Set the line join style in the graphics state (see “Line Join Style” on page 216).
"M"
Set the miter limit in the graphics state (see “Miter Limit” on page 217).
"d"
Set the line dash pattern in the graphics state (see “Line Dash Pattern” on page 217).
"ri"
(PDF 1.1) Set the color rendering intent in the graphics state
(see “Rendering Intents” on page 260).
"i"
Set the flatness tolerance in the graphics state (see Section 6.5.1, “Flatness Tolerance”).
flatness is a number in the range 0 to 100; a value of 0 specifies the output device’s
default flatness tolerance.
"gs"
(PDF 1.2) Set the specified parameters in the graphics state.
dictName is the name of a graphics state parameter dictionary
in the ExtGState subdictionary of the current resource dictionary (see the next section).
"m"
Begin a new subpath by moving the current point to coordinates (x, y),
omitting any connecting line segment.
If the previous path construction operator in the current path was also m,
the new moverrides it; no vestige of the previous m operation remains in the path.
"l"
Append a straight line segment from the current point to the point (x, y).
The new current point is (x, y).
"c"
Append a cubic Bézier curve to the current path.
The curve extends from the current point to the point (x3 , y3 ), using (x1 , y1 ) and (x2 , y2 )
as the Bézier control points (see “Cubic Bézier Curves,” below).
The new current point is (x3 , y3 ).
"v"
Append a cubic Bezier curve to the current path.
The curve extends from the current point to the point (x3 , y3 ),
using the current point and (x2 , y2 ) as the Bézier control points
(see “Cubic Bézier Curves,” below). The new current point is (x3 , y3 ).
"y"
Append a cubic Bezier curve to the current path.
The curve extends from the current point to the point (x3 , y3 ), using (x1 , y1 ) and (x3 , y3 )
as the Bézier control points (see “Cubic Bézier Curves,” below).
The new current point is (x3 , y3 ).
"h"
Close the current subpath by appending a straight line segment from the current point
to the starting point of the subpath. If the current subpath is already closed, h does nothing.
This operator terminates the current subpath.
Appending another segment to the current path begins a new subpath,
even if the new segment begins at the endpoint reached by the h operation.
"re"
Append a rectangle to the current path as a complete subpath,
with lower-left corner (x, y) and dimensions width and height in user space. The operation
x y width height re
is equivalent to:
x y m
(x + width ) y l
(x + width ) ( y + height ) l
x(y + height ) l
h
"S"
Stroke the path.
"s"
Close and stroke the path. This operator has the same effect as the sequence h S.
"f"
Fill the path, using the nonzero winding number rule to determine the region to fill
(see “Nonzero Winding Number Rule” on page 232).
Any subpaths that are open are implicitly closed before being filled.
Also this method executes "F" command.
Equivalent to f; included only for compatibility. Although PDF consumer applications
must be able to accept this operator, PDF producer applications should use finstead.
"f*"
Fill the path, using the even-odd rule to determine the region to fill
(see “Even-Odd Rule” on page 233).
"B"
Fill and then stroke the path, using the nonzero winding number rule to determine the region
to fill. This operator produces the same result as constructing two identical path objects,
painting the first with f and the second with S. Note, however, that the filling and
stroking portions of the operation consult different values of several graphics state parameters,
such as the current color.
See also “Special Path-Painting Considerations” on page 569.
"B*"
Fill and then stroke the path, using the even-odd rule to determine the region to fill.
This operator produces the same result as B, except that the path is filled as
if with f* instead of f.
See also “Special Path-Painting Considerations” on page 569.
"B"
Fill and then stroke the path, using the nonzero winding number rule to determine the region
to fill. This operator produces the same result as constructing two identical path objects,
painting the first with f and the second with S. Note, however, that the filling and
stroking portions of the operation consult different values of several graphics state parameters,
such as the current color.
See also “Special Path-Painting Considerations” on page 569.
"B*"
Fill and then stroke the path, using the even-odd rule to determine the region to fill.
This operator produces the same result as B, except that the path is filled as
if with f* instead of f.
See also “Special Path-Painting Considerations” on page 569.
"n"
End the path object without filling or stroking it.
This operator is a path-painting no-op, used primarily for the side effect of changing
the current clipping path (see Section 4.4.3, “Clipping Path Operators”).
"W"
Modify the current clipping path by intersecting it with the current path,
using the nonzero winding number rule to determine which regions lie inside the clipping path.
"W*"
Modify the current clipping path by intersecting it with the current path,
using the even-odd rule to determine which regions lie inside the clipping path.
"BT"
Begin a text object, initializing the text matrix, Tm , and the text line matrix, Tlm,
to the identity matrix. Text objects cannot be nested; a second BT cannot appear before an ET.
"ET"
End a text object, discarding the text matrix.
"Tc"
Set the character spacing, Tc , to charSpace, which is a number expressed in unscaled text
space units. Character spacing is used by the Tj, TJ, and ' operators. Initial value: 0.
"Tw"
Set the word spacing, Tw , to wordSpace, which is a number expressed in unscaled text space units.
Word spacing is used by the Tj, TJ, and ' operators. Initial value: 0.
"Tz"
Set the horizontal scaling, Th , to (scale ÷ 100). scale is a number specifying
the percentage of the normal width. Initial value: 100 (normal width).
"TL"
Set the text leading, Tl , to leading, which is a number expressed in unscaled text space units.
Text leading is used only by the T*, ', and " operators. Initial value: 0.
"Tf"
Set the text font, Tf , to font and the text font size, Tfs, to size.
font is the name of a font resource in the Font subdictionary of the current resource dictionary;
size is a number representing a scale factor.
There is no initial value for either font or size;
they must be specified explicitly by using Tf before any text is shown.
"Tr"
Set the text rendering mode, Tmode , to render, which is an integer. Initial value: 0.
"Ts"
Set the text rise, Trise, to rise, which is a number expressed in unscaled text space units. Initial value: 0.
"Td"
Move to the start of the next line, offset from the start of the current line by (tx , ty ).
tx and ty are numbers expressed in unscaled text space units.
More precisely, this operator performs the following assignments:
| 1 0 0 |
Tm = Tlm = | 0 1 0 | * Tlm
| tx ty 1 |
"TD"
Move to the start of the next line, offset from the start of the current line by (tx , ty ).
As a side effect, this operator sets the leading parameter in the text state.
This operator has the same effect as the following code:
−ty TL
tx ty Td
"Tm"
Set the text matrix, Tm , and the text line matrix, Tlm:
Tm = Tlm = m
The matrix specified by the operands is not concatenated onto the current text matrix, but replaces it.
"T*"
Move to the start of the next line. This operator has the same effect as the code
0 Tl Td
where Tl is the current leading parameter in the text state.
"Tj"
Show a text string.
"'"
Move to the next line and show a text string. This operator has the same effect as the code:
T*
str Tj
"""
Move to the next line and show a text string, using aw as the word spacing and ac as
the character spacing (setting the corresponding parameters in the text state).
aw and ac are numbers expressed in unscaled text space units.
This operator has the same effect as the following code:
aw Tw
ac Tc
str '
"TJ"
Show one or more text strings, allowing individual glyph positioning
(see implementation note 58 in Appendix H).
Each element of array can be a string or a number.
If the element is a string, this operator shows the string.
If it is a number, the operator adjusts the text position by that amount;
that is, it translates the text matrix, Tm.
The number is expressed in thousandths of a unit of text space
(see Section 5.3.3, “Text Space Details,” and implementation note 59 in Appendix H).
This amount is subtracted from the current horizontal or vertical coordinate,
depending on the writing mode.
In the default coordinate system, a positive adjustment has the effect of
moving the next glyph painted either to the left or down by the given amount.
"CS"
(PDF 1.1) Set the current color space to use for stroking operations.
The operand name must be a name object.
"cs"
(PDF 1.1) Same as CS but used for nonstroking operations.
"SC"
(PDF 1.1) Set the color to use for stroking operations in a device,
CIE-based (other than ICCBased), or Indexed color space.
The number of operands required and their interpretation depends
on the current stroking color space.
"sc"
(PDF 1.1) Same as SC but used for nonstroking operations.
"SCN"
Same as SC but also supports Pattern, Separation, DeviceN, andICCBased color spaces.
"scn"
(PDF 1.1) Same as SCN but used for nonstroking operations.
"G"
Set the stroking color space to DeviceGray
(or the DefaultGray color space; see “Default Color Spaces” on page 257)
and set the gray level to use for stroking operations.
gray is a number between 0.0 (black) and 1.0 (white).
"g"
Same as G but used for nonstroking operations.
"RG"
Set the stroking color space to DeviceRGB (or the DefaultRGB color space; see “Default Color Spaces” on page 257)
and set the color to use for stroking operations.
Each operand must be a number between 0.0 (minimum intensity) and 1.0 (maximum intensity).
"rg"
Same as RG but used for nonstroking operations.
"K"
Set the stroking color space to DeviceCMYK (or the DefaultCMYK color space;
see “Default Color Spaces” on page 257) and set the color to use for stroking operations.
Each operand must be a number between 0.0 (zero concentration) and 1.0 (maximum concentration).
The behavior of this operator is affected by the overprint mode
(see Section 4.5.6, “Overprint Control”).
"k"
Same as K but used for nonstroking operations.
"d0"
Set width information for the glyph and declare that the glyph description specifies both its shape and its color.
"d1"
Set width and bounding box information for the glyph and declare that the glyph description specifies only shape, not color.
llx and lly are the coordinates of the lower-left corner, and urx and ury the upper-right corner, of the glyph bounding box.
"sh"
(PDF 1.3) Paint the shape and color shading described by a shading dictionary,
subject to the current clipping path.
The current color in the graphics state is neither used nor altered.
The effect is different from that of painting a path using a shading pattern as the current color.
name is the name of a shading dictionary resource in the Shading subdictionary of
the current resource dictionary(see Section 3.7.2, “Resource Dictionaries”).
"Do"
An external object (commonly called an XObject) is a graphics object
whose contents are defined by a self-contained content stream,
separate from the content stream in which it is used.
"MP"
Designate a marked-content point. is a name object indicating the role or significance of the point.
"DP"
Designate a marked-content point with an associated property list. is a name object indicating the role or significance of the point.
"BMC"
Begin a marked-content sequence terminated by a balancing EMC operator. is a name object indicating the role or significance of the sequence.
"BDC"
Begin a marked-content sequence with an associated property list, terminated by a balancing EMC operator.
"EMC"
End a marked-content sequence begun by a BMC or BDC operator.
"BX"
Begin a compatibility section. Unrecognized operators (along with their operands) are ignored without error until the balancing EX operator is encountered.
"EX"
End a compatibility section begun by a balancing BX operator.
"EI"
Ends inline image, defined using "BI" "ID" "EI" operators.
Returns matrix which converts unscaled text coordinate space to device coordinate space.
Processes content stream.
Gets the current graphics state.
Defines graphics state during processing of PDF content stream.
Count of objects added using with method.
Creates stroke pen to draw paths.
Calculates horizontal offset which should be applied to after drawing a string with specified props.
The summary width of chars in string in glyph coordinate space divided by 1000.
The count of chars in string.
The count of spaces in string.
Applies offset to the for a string with specified props.
The summary width of chars in string in glyph coordinate space divided by 1000.
The count of chars in string.
The count of spaces in string.
Applies offset to the for a string with specified props.
Calculates vertical offset which should be applied to
after drawing a string with specified props.
The summary width of chars in string in glyph coordinate space divided by 1000.
The count of chars in string.
The count of spaces in string.
Applies vertical offset to the for a string with specified props.
The summary width of chars in string in glyph coordinate space divided by 1000.
The count of chars in string.
The count of spaces in string.
Applies vertical offset to the for a string with specified props.
Describes PDF path.
X coordinate of the current point.
Y coordinate of the current point.
List of subpaths in path.
Begin a new subpath by moving the current point to coordinates (x, y),
omitting any connecting line segment.
If the previous path construction operator in the current path was also m,
the new moverrides it; no vestige of the previous m operation remains in the path.
Append a straight line segment from the current point to the point (x, y).
The new current point is (x, y).
Append a cubic Bézier curve.
The curve extends from the current point to the point (x3 , y3 ), using (x1 , y1 ) and (x2 , y2 )
as the Bézier control points (see “Cubic Bézier Curves,” below).
The new current point is (x3 , y3 ).
Append a cubic Bezier curve.
The curve extends from the current point to the point (x3 , y3 ),
using the current point and (x2 , y2 ) as the Bézier control points
(see “Cubic Bézier Curves,” below). The new current point is (x3 , y3 ).
Append a cubic Bezier curve.
The curve extends from the current point to the point (x3 , y3 ), using (x1 , y1 ) and (x3 , y3 )
as the Bézier control points (see “Cubic Bézier Curves,” below).
The new current point is (x3 , y3 ).
"h"
Close the current subpath by appending a straight line segment from the current point
to the starting point of the subpath. If the current subpath is already closed, h does nothing.
This operator terminates the current subpath.
Appending another segment to the current path begins a new subpath,
even if the new segment begins at the endpoint reached by the h operation.
Append a rectangle as a complete subpath,
with lower-left corner (x, y) and dimensions width and height in user space. The operation
x y width height re
is equivalent to:
x y m
(x + width ) y l
(x + width ) ( y + height ) l
x(y + height ) l
h
Decribes the PDF subpath.
X coordinate of starting point.
Y coordinate of starting point.
Indicates whether the subpath is closed and no new segments can be added to it.
Segments of subpath.
Base class for segments of PDF subpath: line, bezier.
Line in subpath.
X coordinate of line's end.
Y coordinate of line's end.
Bezier in subpath.
X coordinate of first Bezier control point.
Y coordinate of first Bezier control point.
X coordinate of second Bezier control point.
Y coordinate of second Bezier control point.
X coordinate of third Bezier control point.
Y coordinate of third Bezier control point.
Base class for content stream processors.
"q"
Save the current graphics state on the graphics state stack
(see “Graphics State Stack” on page 214).
"Q"
Restore the graphics state by removing the most recently saved state from the stack
and making it the current state (see “Graphics State Stack” on page 214).
"cm"
Modify the current transformation matrix (CTM) by concatenating the specified matrix
(see Section 4.2.1, “Coordinate Spaces”).
Although the operands specify a matrix, they are written as six separate numbers, not as an array.
"w"
Set the line width in the graphics state (see “Line Width” on page 215).
It is a non-negative number expressed in user space units;
stroking a path entails painting all points whose perpendicular distance from the
path in user space is less than or equal to half the line width.
"J"
Set the line cap style in the graphics state (see “Line Cap Style” on page 216).
"j"
Set the line join style in the graphics state (see “Line Join Style” on page 216).
"M"
Set the miter limit in the graphics state (see “Miter Limit” on page 217).
"d"
Set the line dash pattern in the graphics state (see “Line Dash Pattern” on page 217).
"ri"
(PDF 1.1) Set the color rendering intent in the graphics state
(see “Rendering Intents” on page 260).
"i"
Set the flatness tolerance in the graphics state (see Section 6.5.1, “Flatness Tolerance”).
flatness is a number in the range 0 to 100; a value of 0 specifies the output device’s
default flatness tolerance.
"gs"
(PDF 1.2) Set the specified parameters in the graphics state.
dictName is the name of a graphics state parameter dictionary
in the ExtGState subdictionary of the current resource dictionary (see the next section).
"m"
Begin a new subpath by moving the current point to coordinates (x, y),
omitting any connecting line segment.
If the previous path construction operator in the current path was also m,
the new moverrides it; no vestige of the previous m operation remains in the path.
"l"
Append a straight line segment from the current point to the point (x, y).
The new current point is (x, y).
"c"
Append a cubic Bézier curve to the current path.
The curve extends from the current point to the point (x3 , y3 ), using (x1 , y1 ) and (x2 , y2 )
as the Bézier control points (see “Cubic Bézier Curves,” below).
The new current point is (x3 , y3 ).
"v"
Append a cubic Bezier curve to the current path.
The curve extends from the current point to the point (x3 , y3 ),
using the current point and (x2 , y2 ) as the Bézier control points
(see “Cubic Bézier Curves,” below). The new current point is (x3 , y3 ).
"y"
Append a cubic Bezier curve to the current path.
The curve extends from the current point to the point (x3 , y3 ), using (x1 , y1 ) and (x3 , y3 )
as the Bézier control points (see “Cubic Bézier Curves,” below).
The new current point is (x3 , y3 ).
"h"
Close the current subpath by appending a straight line segment from the current point
to the starting point of the subpath. If the current subpath is already closed, h does nothing.
This operator terminates the current subpath.
Appending another segment to the current path begins a new subpath,
even if the new segment begins at the endpoint reached by the h operation.
"re"
Append a rectangle to the current path as a complete subpath,
with lower-left corner (x, y) and dimensions width and height in user space. The operation
x y width height re
is equivalent to:
x y m
(x + width ) y l
(x + width ) ( y + height ) l
x(y + height ) l
h
"S"
Stroke the path.
"s"
Close and stroke the path. This operator has the same effect as the sequence h S.
"f"
Fill the path, using the nonzero winding number rule to determine the region to fill
(see “Nonzero Winding Number Rule” on page 232).
Any subpaths that are open are implicitly closed before being filled.
Also this method executes "F" command.
Equivalent to f; included only for compatibility. Although PDF consumer applications
must be able to accept this operator, PDF producer applications should use finstead.
"f*"
Fill the path, using the even-odd rule to determine the region to fill
(see “Even-Odd Rule” on page 233).
"B"
Fill and then stroke the path, using the nonzero winding number rule to determine the region
to fill. This operator produces the same result as constructing two identical path objects,
painting the first with f and the second with S. Note, however, that the filling and
stroking portions of the operation consult different values of several graphics state parameters,
such as the current color.
See also “Special Path-Painting Considerations” on page 569.
"B*"
Fill and then stroke the path, using the even-odd rule to determine the region to fill.
This operator produces the same result as B, except that the path is filled as
if with f* instead of f.
See also “Special Path-Painting Considerations” on page 569.
"B"
Fill and then stroke the path, using the nonzero winding number rule to determine the region
to fill. This operator produces the same result as constructing two identical path objects,
painting the first with f and the second with S. Note, however, that the filling and
stroking portions of the operation consult different values of several graphics state parameters,
such as the current color.
See also “Special Path-Painting Considerations” on page 569.
"B*"
Fill and then stroke the path, using the even-odd rule to determine the region to fill.
This operator produces the same result as B, except that the path is filled as
if with f* instead of f.
See also “Special Path-Painting Considerations” on page 569.
"n"
End the path object without filling or stroking it.
This operator is a path-painting no-op, used primarily for the side effect of changing
the current clipping path (see Section 4.4.3, “Clipping Path Operators”).
"W"
Modify the current clipping path by intersecting it with the current path,
using the nonzero winding number rule to determine which regions lie inside the clipping path.
"W*"
Modify the current clipping path by intersecting it with the current path,
using the even-odd rule to determine which regions lie inside the clipping path.
"BT"
Begin a text object, initializing the text matrix, Tm , and the text line matrix, Tlm,
to the identity matrix. Text objects cannot be nested; a second BT cannot appear before an ET.
"ET"
End a text object, discarding the text matrix.
"Tc"
Set the character spacing, Tc , to charSpace, which is a number expressed in unscaled text
space units. Character spacing is used by the Tj, TJ, and ' operators. Initial value: 0.
"Tw"
Set the word spacing, Tw , to wordSpace, which is a number expressed in unscaled text space units.
Word spacing is used by the Tj, TJ, and ' operators. Initial value: 0.
"Tz"
Set the horizontal scaling, Th , to (scale ÷ 100). scale is a number specifying
the percentage of the normal width. Initial value: 100 (normal width).
"TL"
Set the text leading, Tl , to leading, which is a number expressed in unscaled text space units.
Text leading is used only by the T*, ', and " operators. Initial value: 0.
"Tf"
Set the text font, Tf , to font and the text font size, Tfs, to size.
font is the name of a font resource in the Font subdictionary of the current resource dictionary;
size is a number representing a scale factor.
There is no initial value for either font or size;
they must be specified explicitly by using Tf before any text is shown.
"Tr"
Set the text rendering mode, Tmode , to render, which is an integer. Initial value: 0.
"Ts"
Set the text rise, Trise, to rise, which is a number expressed in unscaled text space units. Initial value: 0.
"Td"
Move to the start of the next line, offset from the start of the current line by (tx , ty ).
tx and ty are numbers expressed in unscaled text space units.
More precisely, this operator performs the following assignments:
| 1 0 0 |
Tm = Tlm = | 0 1 0 | * Tlm
| tx ty 1 |
"TD"
Move to the start of the next line, offset from the start of the current line by (tx , ty ).
As a side effect, this operator sets the leading parameter in the text state.
This operator has the same effect as the following code:
−ty TL
tx ty Td
"Tm"
Set the text matrix, Tm , and the text line matrix, Tlm:
Tm = Tlm = m
The matrix specified by the operands is not concatenated onto the current text matrix, but replaces it.
"T*"
Move to the start of the next line. This operator has the same effect as the code
0 Tl Td
where Tl is the current leading parameter in the text state.
"Tj"
Show a text string.
"'"
Move to the next line and show a text string. This operator has the same effect as the code:
T*
str Tj
"""
Move to the next line and show a text string, using aw as the word spacing and ac as
the character spacing (setting the corresponding parameters in the text state).
aw and ac are numbers expressed in unscaled text space units.
This operator has the same effect as the following code:
aw Tw
ac Tc
str '
"TJ"
Show one or more text strings, allowing individual glyph positioning
(see implementation note 58 in Appendix H).
Each element of array can be a string or a number.
If the element is a string, this operator shows the string.
If it is a number, the operator adjusts the text position by that amount;
that is, it translates the text matrix, Tm.
The number is expressed in thousandths of a unit of text space
(see Section 5.3.3, “Text Space Details,” and implementation note 59 in Appendix H).
This amount is subtracted from the current horizontal or vertical coordinate,
depending on the writing mode.
In the default coordinate system, a positive adjustment has the effect of
moving the next glyph painted either to the left or down by the given amount.
"CS"
(PDF 1.1) Set the current color space to use for stroking operations.
The operand name must be a name object.
"cs"
(PDF 1.1) Same as CS but used for nonstroking operations.
"SC"
(PDF 1.1) Set the color to use for stroking operations in a device,
CIE-based (other than ICCBased), or Indexed color space.
The number of operands required and their interpretation depends
on the current stroking color space.
"sc"
(PDF 1.1) Same as SC but used for nonstroking operations.
"SCN"
Same as SC but also supports Pattern, Separation, DeviceN, andICCBased color spaces.
"scn"
(PDF 1.1) Same as SCN but used for nonstroking operations.
"G"
Set the stroking color space to DeviceGray
(or the DefaultGray color space; see “Default Color Spaces” on page 257)
and set the gray level to use for stroking operations.
gray is a number between 0.0 (black) and 1.0 (white).
"g"
Same as G but used for nonstroking operations.
"RG"
Set the stroking color space to DeviceRGB (or the DefaultRGB color space; see “Default Color Spaces” on page 257)
and set the color to use for stroking operations.
Each operand must be a number between 0.0 (minimum intensity) and 1.0 (maximum intensity).
"rg"
Same as RG but used for nonstroking operations.
"K"
Set the stroking color space to DeviceCMYK (or the DefaultCMYK color space;
see “Default Color Spaces” on page 257) and set the color to use for stroking operations.
Each operand must be a number between 0.0 (zero concentration) and 1.0 (maximum concentration).
The behavior of this operator is affected by the overprint mode
(see Section 4.5.6, “Overprint Control”).
"k"
Same as K but used for nonstroking operations.
"d0"
Set width information for the glyph and declare that the glyph description specifies both its shape and its color.
"d1"
Set width and bounding box information for the glyph and declare that the glyph description specifies only shape, not color.
llx and lly are the coordinates of the lower-left corner, and urx and ury the upper-right corner, of the glyph bounding box.
"EI"
Ends inline image, defined using "BI" "ID" "EI" operators.
"sh"
(PDF 1.3) Paint the shape and color shading described by a shading dictionary,
subject to the current clipping path.
The current color in the graphics state is neither used nor altered.
The effect is different from that of painting a path using a shading pattern as the current color.
name is the name of a shading dictionary resource in the Shading subdictionary of
the current resource dictionary(see Section 3.7.2, “Resource Dictionaries”).
"Do"
An external object (commonly called an XObject) is a graphics object
whose contents are defined by a self-contained content stream,
separate from the content stream in which it is used.
"MP"
Designate a marked-content point. is a name object indicating the role or significance of the point.
"DP"
Designate a marked-content point with an associated property list. is a name object indicating the role or significance of the point.
"BMC"
Begin a marked-content sequence terminated by a balancing EMC operator. is a name object indicating the role or significance of the sequence.
"BDC"
Begin a marked-content sequence with an associated property list, terminated by a balancing EMC operator.
"EMC"
End a marked-content sequence begun by a BMC or BDC operator.
"BX"
Begin a compatibility section. Unrecognized operators (along with their operands) are ignored without error until the balancing EX operator is encountered.
"EX"
End a compatibility section begun by a balancing BX operator.
Gets the owning processed content stream.
Defines stack of operands while parsing PDF content stream.
Gets the count of operands.
Gets the enumerator owning this object.
Gets value from top of the stack.
Defines interface to enumerate PDF content streams.
Moves to the next operator, returns false if EOF.
Gets a name of the current operator or null if EOF.
Gets a list of operands for the current operator or null if EOF.
Gets the owning enumerated content stream.
Gets a value indicating whether inline images are parsed.
Contains extension methods for interface.
Defines parser of PDF content stream.
Reads value from the current position it can be any valid PDF identifier: number, string, dictionary etc.
Reads next operator from underlying PDF content.
Gets a value indicating whether inline images should be parsed, if false
then stack will be empty for EI operator.
Gets the operator where this is positioned by the method.
Gets the operands for the current .
Custom identificator in PDF content stream, operator for example.
Represents an exception that is thrown when a value with a specified key does not exist in a PDF dictionary.
Initializes a new instance of the class.
The key that caused the exception.
Gets the key that could not be found.
Represents an exception that is thrown when a value in a PDF dictionary has invalid or unexpected type.
Initializes a new instance of the class.
The dictionary key.
The value that caused the exception.
The expected type.
Gets the value key.
Gets the property value.
Gets the expected type of value.
Represents an exception that is thrown when a value in a PDF array has invalid or unexpected type.
Initializes a new instance of the class.
The value index.
The value that caused the exception.
The expected type.
Initializes a new instance of the class.
The value index.
The value that caused the exception.
The expected type.
Gets the value index.
Gets the property value.
Gets the expected type of value.
Represents common exception occurs during parsing FDF content.
Initializes a new instance of the class.
Initializes a new instance of the class.
Parses FDF stream into dictionary of PDF objects.
The dictionary of parsed PDF objects.
The FDF version.
The FDF catalog object.
Performs parsing of PDF document stream.
Base class for PDF document streams parsers.
Indicates whether strings should be decrypted.
The ID of the currently read PDF object, used in decryption.
Reads PDF number or PDF reference (like "10 0 R"), assumes that stream positioned on first digit.
Reads the object's header "10 0 obj", assumes stream is positioned on header of object like "10 0 obj" or on whitespace
before this header.
Reads PDF object, assumes stream is positioned on header of object like "10 0 obj" or on whitespace
before this header.
Skips all white-space and comments, reads all not white-space characters into string.
Reads value from the current position it can be any valid PDF identifier: number, string, dictionary etc.
Provides uniform and convient way to convert PDF values and PDF objects to "real objects"
which represent GcPdf object model.
The class which should be created from PDF value.The type of PDF value required for this parser.
Should be overriden in derived class.
Creates instance of from .
If is an object then can be:
,
,
,
,
,
,
,
.
Creates instance of from .
can be:
,
,
,
,
,
,
,
or
descendant of .
If is then reference resolved to .
If is or
then method checks was object already parsed or not and returns already parsed object if possible.
Creates instance of from .
can be:
,
,
,
,
,
,
,
or
descendant of .
If is then reference resolved to .
If is or
then method checks was object already parsed or not and returns already parsed object if possible.
Represents common exception occurs during parsing PDF content.
Initializes a new instance of the class.
Initializes a new instance of the class.
Gets the position in the stream where exception occurs.
Parses the PDF stream.
Document owning this parser.
The cross-reference table created during parsing Cross-Reference table/stream.
The list of objects, generated during structure parsing.
Contains IDs of objects which does not require decryption.
Indicating whether Signature object is currently read.
Position of main cross-reference table or stream.
Type of main cross-reference (Table or Stream).
The list of callback methods called when document's parsin is fihished.
Contains a list of currently resolving references, used to handle circular references.
Skips the object's header, assumes stream is positioned on header of object like "10 0 obj" or on whitespace
before this header.
Get position of Cross-Reference Table or Cross-Reference Stream.
Reads Cross-Reference table, assumes stream is positioned after "xref" token.
Reads Cross-Reference stream object, assumes stream is positioned on object header like "10 0 obj".
Reads PdfObject with specifed id.
Reads list of PDF objects, can throw an exception if stream contains invalid / unknown data.
Returns which can be used to read stream's data of specified .
NOTE! Image filters: CCITTFaxDecode, JBIG2Decode, DCTDecode, JPXDecode are NOT applied,
if these filters used somewhere *within* Filter array (not the last in this array) then
NotImplemented exception occurs.
NOTE! Returned stream should be disposed after usage.
NOTE! This method affects of this .
Sets to specified value.
Returns .
Associates object with specified ID.
Gets already parsed object with specified ID.
Allows to register callback method which will be called when
object with specified ID is parsed.
Associates object ID in generated PDF content specified by with parsed object's ID.
The type of cross-reference entry.
Cross-reference table.
Cross-reference stream.
Defines information about callback method which should be called when document's parsing is finished.
Indicates whether the entry was added during parsing hybrid-reference file,
and corresponding should be added even if its ID marked as free.
Defines single entry of Index array in Cross-Reference stream.
Defines the parsed PDF "Object stream" object.
See PDF1.7, 3.4.6 Object Streams.
The used to create instance of this .
The entries for compressed objects.
The reader used to parse content.
NOTE! Stream used by the Reader should be disposed.
Defines entry of "compressed object" within "Object Stream".
The ID of compressed object, generation always 0.
Offset from the beginning of stream.
Defines list of object.
Base class for classes defining singe entry of Cross-Reference table or Cross-Reference stream.
The object's id.
The object which was created from PDF object identified by this .
The ID of object in new generated PDF stream.
This field is used if PDF object identified by this
was NOT parsed during loading .
Callback methods called when reference is resolved.
Indicates whether object's parsing is started,
used during parsing to deterct circular references between objects.
See:
,
.
Returns object's ID in *generated* PDF content corressponds to object identified this .
Reads PDF object identified by this .
Defines "normal" entry of Cross-Reference table or Cross-Reference stream,
identifying an object in main PDF stream.
The offset of the object in main PDF stream.
Defines "compressed object" entry in Cross-Reference stream.
The PDF "object stream" object referenced by this entry.
The index of compressed object in list.
Defines cross-reference table build during parsing Cross-Reference table or Cross-Reference stream.
NOTE! In current implementation table contains only ACTUAL references with latest generation.
Base class for PDF streams readers.
Stream to read.
Contains last byte readed from or -1 if EOF.
The cached instance of used in read operations.
The cached instance of used in read operations.
The name of PDF dict entry currently read.
Reads PDF "dictionary object", assumes that stream positioned on SECOND '<' char.
NOTE! This method assumes that s contains VALID number, but number can be too big
for PdfInt, warning added to the in this case.
Skips all white-space bytes, returns .
Skips all bytes till CR or LF character.
Skips PDF comment, including EOL and white-spaces after comment,
assumes that stream positioned on first comment char '%'.
Reads all non white-space bytes and combines them into string.
Reads PDF "name object", assumes stream is positioned on '/'.
Reads PDF "string object", assumes stream is positioned on '('.
Reads PDF "hex string object", assumes stream is positioned AFTER '<'.
Reads PDF number int or float, assumes stream is positioned on first char of number.
Reads PDF "array object", assumes stream is positioned on '['.
Sets position in underlying stream.
Sets position in underlying stream.
Reads value from the current position it can be any valid PDF identifier: number, string, dictionary etc,
assumes stream is positioned on white-space or first char of object.
Gets position in underlying stream.
Gets the owning this stream.
Represents a PDF DateTime type.
The PDF Specification does not define a special type for DateTime values,
such values are stored as strings in a special format, similar to (D:YYYYMMDDHHmmSSOHH'mm'),
see the spec for details (PDF 1.7 chapter 3.8.3).
But there are many PDF documents in which DateTime strings are specified
in some custom format, for example using a regional format.
GcPdf uses this struct when processing such values.
Where possible, the value is converted to ,
otherwise it preserves the original string value.
Initializes a new instance of the struct
using a value.
The value.
Initializes a new instance of the struct
using a string.
The passed string is converted to if possible.
The string representing a date time value.
Converts this to string,
using a specified format if the current struct holds a DateTime value.
The date time format.
Checks whether this is equal to another .
The value to compare to.
True if values are equal, false otherwise.
Gets a value indicating whether this struct
contains a string value which cannot be converted to .
Gets the value representing local time.
Throws an exception if this is represented by an unparsed string.
Gets the value defined by this .
Throws an exception if this is represented by an unparsed string.
Converts a value to .
Equality operator.
Unequality operator.
Converts a value to a string in PDF format
as described in PDF 1.7 specification chapter 3.8.3.
The value.
Returns string with formatted datetime.
Converts a value to a string in PDF format
as described in PDF 1.7 specification chapter 3.8.3.
The value.
Returns string with formatted datetime.
Tries to convert a string to .
See PDF 1.7 specification chapter 3.8.3.
The string in the format D:YYYYMMDDHHmmSSOHH'mm'.
OUT: The parsed value.
True if convertion succesed, false otherwise.
Represents a PDF enumeration type.
The PDF Specification defines many propertes with values represented by a limited set of predefined values.
Such values are stored as PDF name objects, which is very similar to enumerations in C#.
But there are many PDF documents in which some of such properties have arbitrary custom values
that are not defined in the PDF specification.
GcPdf uses this struct when processing such values.
Where possible, the value is converted to the underlying enum type ,
otherwise the original string value is preserved.
Initializes a new instance of the struct
using a value.
The value.
Initializes a new instance of the struct
using a string.
The passed string is converted to if possible.
The string representing a value.
Checks whether this is equal to another .
The value to compare to.
True if the values are equal, false otherwise.
Gets a value indicating whether this struct
contains a string value which cannot be converted to .
Gets the value defined by this .
Throws an exception if this is represented by an unparsed string.
Converts a value to .
The value to convert.
Converts a value to .
The value to convert.
Equality operator.
Unequality operator.
Represents a PDF language identifier.
Initializes a new instance of the class.
The string containing language identifier.
Checks whether this is equal to another .
The value to compare to.
True if values are equal, false otherwise.
Gets the representing this language identifier.
Converts a value to .
Converts value to .
Equality operator.
Unequality operator.
Contains utilities to work with PDF name trees.
Parses name tree represented by PdfDict.
Callback method called to parse value associated with the name.
Contains utilities to work with PDF number trees.
Parses number tree represented by PdfDict.
Callback method called to parse value associated with the number.
A strongly-typed resource class, for looking up localized strings, etc.
Returns the cached ResourceManager instance used by this class.
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
Looks up a localized string similar to aa.
Specifies a format of .
JPEG image.
JPEG2000 image.
Represents an image natively supported by the PDF format.
Raw images are inserted into PDF as is, without any processing.
Creates a new instance of the class from a disk file,
supports only JPEG or JPEG2000 image formats.
The image file name.
The format of the image.
The width of the image in pixels.
The height of the image in pixels.
The horizontal resolution.
The vertical resolution.
Creates a new instance of the class from a stream,
supports only JPEG or JPEG2000 image formats.
The stream containing image data.
The format of the image.
The width of the image in pixels.
The height of the image in pixels.
The horizontal resolution.
The vertical resolution.
Creates a new instance of the class from a byte array,
supports only JPEG or JPEG2000 image formats.
The byte array containing image data.
The format of the image.
The width of the image in pixels.
The height of the image in pixels.
The horizontal resolution.
The vertical resolution.
Gets the image data.
Gets the format of the image.
Gets the width of the image in pixels.
Gets the height of the image in pixels.
Gets the horizontal resolution of the image.
Gets the vertical resolution of the image.
Algorithm available for signatures since PDF 1.3
Algorithm available for signatures since PDF 1.6
Algorithm available for signatures since PDF 1.7
Algorithm available for signatures since PDF 1.7
Algorithm available for signatures since PDF 1.7
Maps the digest IDs with the human-readable name of the digest algorithm.
Maps the name of a digest algorithm with its ID.
Creates a MessageDigest object that can be used to create a hash.
@param hashAlgorithm the algorithm you want to use to create a hash
@param provider the provider you want to use to create the hash
@return a MessageDigest object
@throws NoSuchAlgorithmException
@throws NoSuchProviderException
@throws GeneralSecurityException
Creates a hash using a specific digest algorithm and a provider.
@param data the message of which you want to create a hash
@param hashAlgorithm the algorithm used to create the hash
@param provider the provider used to create the hash
@return the hash
@throws GeneralSecurityException
@throws IOException
Gets the digest name for a certain id
@param oid an id (for instance "1.2.840.113549.2.5")
@return a digest name (for instance "MD5")
Returns the id of a digest algorithms that is allowed in PDF,
or null if it isn't allowed.
The name of the digest algorithm.
An oid.
Generates signature using private key.
Implements RC4 algorithm.
Initializes a new instance of the class.
Initializes a new instance of the class.
Sets key used to encode/decode data.
Sets key used to encode/decode data.
Encodes/decodes data.
Encodes/decodes data.
Provides security and encryption services and manages permissions for
objects.
Gets the object owning this object.
Gets the used to decrypt PDF document during loading.
Gets or sets the used to encrypt PDF document during saving.
Same can not be used for and
, use .
Defines possible types of streams in context of encryption.
Default stream.
XML metadata stream.
Embedded file stream.
Cross-Reference Stream
Base abstract class defining PDF Security Handler.
For internal use.
The name of security handler.
"Filter" entry of encryption dictionary.
For internal use.
The "SubFilter" entry of encryption dictionary.
For internal use.
A code specifying the algorithm to be used in encrypting and decrypting the document.
"V" entry of encryption dictionary.
For internal use.
Length of encryption key.
Initializes a new instance of the class.
Releases unmanaged resources and performs other cleanup operations before the is reclaimed by garbage collection.
Releases the unmanaged resources used by the and optionally releases the managed resources.
Creates instance of from specified ,
can throw an exception if PDF dictionary has wrong or unknown format.
Releases all resources used by the .
Copies all property values from another object.
The source object.
Create copy of this .
For internal use.
Gets the name of security handler.
"Filter" entry of encryption dictionary.
For internal use.
The "SubFilter" entry of encryption dictionary.
For internal use.
Gets the code specifying the algorithm to be used in encrypting and decrypting the document.
"V" entry of encryption dictionary.
Defines access permissions granted by a signature to the signed document.
No changes to the document are permitted; any change to the document invalidates the signature.
Permitted changes are filling in forms, instantiating page templates, and signing;
other changes invalidate the signature.
Permitted changes are the same as for , as well as annotation creation, deletion, and modification;
other changes invalidate the signature.
Represents a digital signature in a PDF.
List of objects, see PDF 1.7 page 728.
Called from method when document's
content is generated, writes ByteRange and Contents properties of the signature.
Gets or sets the name of the preferred signature handler to use when validating this signature.
Gets or sets a name that describes the encoding of the signature value and key information in the signature dictionary.
Gets or sets the signature value.
Gets or sets an array of byte strings representing the X.509 certificate chain used when signing and verifying
signatures that use public-key cryptography, or a byte string if the chain has only one entry.
The signing certificate must appear first in the array;
it is used to verify the signature value in Contents, and the other certificates are
used to verify the authenticity of the signing certificate.
Required when SubFilter is adbe.x509.rsa_sha1.
If SubFilter is adbe.pkcs7.detached or adbe.pkcs7.sha1, this entry is not used,
and the certificate chain must be put in the PKCS#7 envelope in Contents.
Gets or sets an array of structs defining the content
used to calculate .
Gets or sets the name of the person or authority signing the document.
This value should be used only when it is not possible to extract the name from the signature;
for example, from the certificate of the signer.
Gets or sets 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.
This value should be used only when the time of signing is not available in the signature;
for example, a time stamp can be embedded in a PKCS#7 binary data object (see “PKCS#7 Signatures” on page 738).
Gets or sets the version of the signature handler that was used to create the signature.
Gets or sets the version of the signature dictionary format.
It corresponds to the usage of the signature dictionary in the context of the value of SubFilter.
The value is 1 if the Reference dictionary is considered critical to the validation of the signature.
Default value: 0.
Gets or sets the number of seconds since the signer was last authenticated.
It is intended to be used in claims of signature repudiation. It should be omitted if the value is unknown.
Gets or sets the method used to authenticate the signer.
It is intended to be used in claims of signature repudiation.
Valid values include PIN, Password, and Fingerprint.
Verifies the signature.
True if the signature was verified successfully, false otherwise.
Gets the owning this object.
Gets the name of the person or authority signing the document.
Gets the time of signing.
Gets the CPU host name or physical location of the signing.
Gets the reason for the signing, such as "I agree...".
Gets the information provided by the signer to enable a recipient to contact the signer
to verify the signature (for example, a phone number).
A name identifying the algorithm to be used when computing the digest. Valid values are MD5 and SHA1.
When present, the computed value of the digest.
An array of two integers specifying the location in the PDF file of the DigestValue string.
The integers represent the starting offset and length in bytes, respectively.
The transform method, see documentation for details. PDF1.7 page 730.
PKCS#9 contentType attribute
PKCS#9 messageDigest attribute
PKCS#9 signingTime attribute
PKCS#1 RSAES-PKCS-v1_5 signature scheme
PKCS#1 RSASSA-PSS signature scheme
PKCS#1 MGF1 mask generation function
PKCS#7 data content type
PKCS#7 signed-data content type
The SHA1 hash algorithm
The SHA256 hash algorithm
The SHA384 hash algorithm
The SHA512 hash algorithm
This code based on PdfPKCS7 of iText library.
All the X.509 certificates in no particular order.
The X.509 certificate that is used to sign the digest.
All the X.509 certificates used for the main signature.
Certificate Revocation Lists
The signed digest as calculated by this class (or extracted from an existing PDF).
Class from the Java SDK that provides the functionality of a digital signature algorithm.
The ID of the digest algorithm, e.g. "2.16.840.1.101.3.4.2.1".
The encryption algorithm.
SubFilter property of PDF Signature object.
True if there's a PAdES LTV time stamp.
Version of the PKCS#7 object.
The digest algorithms.
Version of the PKCS#7 "SignerInfo" object.
Signature attributes
Signature attributes (maybe not necessary, but we use it as fallback)
The digest attributes
BouncyCastle BasicOCSPResp
BouncyCastle TimeStampToken.
The object that will create the digest
Encrypted digest
The RSA data
Use if you want to verify a signature using the sub-filter adbe.x509.rsa_sha1.
Used to verify PKCS#7 signatures.
Helper method that creates the BasicOCSPResp object.
@param seq
@throws IOException
Helper method that creates the collection of certificates
used for the main signature based on the complete list
of certificates and the sign certificate.
Helper method that tries to construct the CRLs.
Update the digest with the specified bytes.
Verify the digest.
Maps IDs of encryption algorithms with its human-readable name.
Gets the algorithm name for a certain id.
@param oid an id (for instance "1.2.840.113549.1.1.1")
@return an algorithm name (for instance "RSA")
@since 2.1.6
Defines possible access types to the PDF document.
Invalid password specified.
User access.
Owner access.
Defines base class for Standard Security Handlers.
These security handlers allow access permissions and up to two passwords to be specified for a document:
an owner password and a user password.
Used in internal calculations.
The encryption key generated with using Algorithm 3.2
used in RC4 algorithm.
The MD5 hash algorithm used by this security handler.
The RC4 encryption algorithm used by this security handler.
The encryption key generated with using Algorithm 3.2
used with AES algorithm.
The AES encryption algorithm used by this security handler.
For internal use.
Flags defines access permissions.
For internal use.
Revision of standard security handler.
"R" entry of standard security handler dictionary.
For internal use.
Indicates whether XML metadata stream should be encrypred.
For internal use.
Pad or truncate the password string to exactly 32 bytes.
If the password string is more than 32 bytes long, use only its first 32 bytes;
if it is less than 32 bytes long, pad it by appending the required number of additional bytes from
the beginning of the string.
Calculate what the U value should consist of given a particular key and
document configuration.Correponds to Algorithms 3.4 and 3.5 of the
PDF Reference version 1.7
Determine what the general encryption key is, given a configuration.
This corresponds to Algorithm 3.2 of PDF Reference version 1.7.
Establish the key to be used for the generation and validation
of the user password via the O entry.Corresponds to steps 1-4 in
Algorithm 3.3 of the PDF Reference version 1.7.
Checks whether password is a valid user password,
see Algorithm 3.6 of PDF1.7.
Calculate what the O value of the Encrypt dict should look like given a
particular configuration.Not used, but useful for reference; this
process is reversed to determine whether a given password is the
owner password.Corresponds to Algorithm 3.3 of the PDF Reference
version 1.7.
Check to see whether a given password is the owner password. Corresponds
to algorithm 3.6 of PDF Reference version 1.7.
Contains the user password which should be used to read document's content.
Sets called from setter of UserPassword property.
Sets called from setter of OwnerPassword property.
Decrypts data.
Encrypts data.
Gets the access type granted by this , or null.
This property is initialized when a document is loaded.
Gets the revision of this .
Gets or sets the password required to open the PDF document.
Gets or sets the password required to change permissions for the PDF document.
For internal use.
Definies possible access permissions.
Full permissions.
Permissions require Revision 3 or greater of .
Combination of and .
Combination of , ,
and .
Combination of and .
(Revision 2) Print the document.
(Revision 3 or greater) Print the document (possibly not at the highest quality level, depending on whether bit 12 is also set).
Modify the contents of the document by operations other than those controlled by bits 6, 9, and 11.
(Revision 2) Copy or otherwise extract text and graphics from the document, including extracting text and graphics (in support of accessibility to users with disabilities or for other purposes).
(Revision 3 or greater) Copy or otherwise extract text and graphics from the document by operations other than that controlled by bit 10.
Add or modify text annotations, fill in interactive form fields, and, if bit 4 is also set, create or modify interactive form fields (including signature fields).
(Revision 3 or greater) Fill in existing interactive form fields (including signature fields), even if bit 6 is clear.
(Revision 3 or greater) Extract text and graphics (in support of accessibility to users with disabilities or for other purposes).
(Revision 3 or greater) Assemble the document (insert, rotate, or delete pages and create bookmarks or thumbnail images), even if bit 4 is clear.
(Revision 3 or greater) Print the document to a representation from which a faithful digital copy of the PDF content could be generated. When this bit is clear (and bit 3 is set), printing is limited to a low-level representation of the appearance, possibly of degraded quality.
Defines Standard Security Handler Revision 2.
This handler uses RC4 encryption with key 40 bit length.
Initialize a new instance of the class.
Gets or sets whether the user can print the Pdf document.
Gets or sets whether the user can edit the contents of the Pdf document.
Gets or sets whether the user can copy contents from the Pdf document.
Gets or sets whether the user can edit annotations in the Pdf document.
Enumerates possible permissions that control the printing of a document.
Printing is enabled with maximum quality.
Printing is disabled.
Printing is limited to a low-level representation of the appearance, possibly of degraded quality.
Flags specifying possible permissions that control the editing of a document.
Editing is enabled.
Editing is disabled.
Allows to create or modify interactive form fields.
Allows to add or modify text annotations, fill in interactive form fields.
Allows to fill in existing interactive form fields (including signature fields).
Allows to assemble the document (insert, rotate, or delete pages and create bookmarks or thumbnail images).
Enumerates possible permissions that control the ability to copy a document's content.
Content copying is enabled.
Content copying is disabled.
Represents a Standard Security Handler Revision 3.
This handler uses RC4 encryption with key from 40 to 128 bit length and allows
to define additional permission flags.
Initialize a new instance of the class.
For internal use.
Gets or sets a value controlling how a document can be printed.
Gets or sets a value controlling how a document can be edited.
Gets or sets a value controlling how a document's content can be copied or extracted.
Gets or sets the length of the encryption key, in bits.
The value must be a multiple of 8, in the range from 40 to 128.
IMPORTANT NOTE: can use RC4 or AES encryption,
and according to specification, with RC4 any key length in the range from 40 to 128 can be used.
But tests show that current/recent versions of Adobe Acrobat Reader DC and Adobe Acrobat Pro DC
cannot handle files encrypted with RC4 if the key length is not equal to 128.
Older versions of Acrobat Reader handle such files without issues, so it looks like a bug in
the newer versions of Acrobat Reader.
So it is recommended that is used
in cases when RC4 encryption with key length other than 128 is required.
Defines possible encryption algorithms.
The RC4 algorith.
The AES algorithm.
Represents Standard Security Handler Revision 4.
This handler can use RC4 encryption with key 40-128 bit or AES encryption with 128 bit key and allows
to define additional permission flags.
Initialize a new instance of the class.
Gets or sets a value indicating whether the document-level metadata stream
is to be encrypted.
Gets or sets the encryption algorithm to use.
Gets or sets a value indicating whether strings should be encrypted.
Gets or sets a value indicating whether streams should be encrypted.
Gets or sets a value indicating whether embedded file streams should be encrypted.
NOTE: It looks like Acrobat Reader processes EFF key in
the encryption dictionary incorrectly so this property was changed from public to internal and
GcPdf does not write EFF entry at all.
See DOC-1351, DOC-1352 for details.
For internal use.
Represents Standard Security Handler Revision 5.
This handler always use AES encryption with key length of 256 bit,
it is described in Adobe Supplement to the ISO 32000.
Initialize a new instance of the class.
always use AES encryption.
always use 256 key length.
For internal use.
The 4 bytes used to calculate Perms entry. If not specified then will be randomly generated.
For internal use.
The User Validation Salt is used when encoding document. If not specified then will be randomly generated.
For internal use.
The User Key Salt is used when encoding document. If not specified then will be randomly generated.
For internal use.
The Owner Validation Salt is used when encoding document. If not specified then will be randomly generated.
For internal use.
The Owner Key Salt is used when encoding document. If not specified then will be randomly generated.
For internal use.
The File Encryption Key is used when encoding document. If not specified then will be randomly generated.
Generates signature using standard X509 certificate.
Generates timestamp token.
Defines audio formats supported by .
Auto detect audio format.s
The WAV format.
The AIFF format.
Defines possible encoding formats for sample data in a .
Unspecified or unsigned values in the range 0 to 2^BitsPerSample-1.
Twos-complement values.
u-law-encoded samples.
A-law-encoded samples.
Represents a sound object, which is a stream containing sample values
that define a sound to be played through the computer’s speakers.
Initializes a new instance of the class.
Gets or sets the sampling rate, in samples per second.
Gets or sets the number of sound channels.
Gets or sets the number of bits per sample value per channel.
Gets or sets the encoding format for the sample data, see .
Gets a object containing the audio data.
IMPORTANT: that the stream should be disposed after usage.The containing audio data, should be disposed after usage.
Sets the audio data stream.
IMPORTANT: the stream will be read when the document is saved,
so it should be available at that time.
The containing audio data.
Creates a from a specified file.
Note that only a limited set of audio formats is supported, see for details.
The file with the audio.
The audio format.
The created .
Creates a from a specified stream.
Note that only a limited set of audio formats is supported, see for details.
The stream with audio data.
The audio format.
The created .
Allows to work with and in same way.
Gets the array of values.
Gets the PDF object's ID, returns in case of .
Iterate over all values in the array and if value specified as
reference replaces it with actual value.
Converts this to array of int, throws an exception if
some elements can not be converted.
Convert this to array of int,
uses for items which can not be converted to int.
Tries to convert this to array of int,
returns null if some items can not be converted to int.
Converts this to array of bool, throws an exception if
some elements can not be converted.
Convert this to array of bool,
uses for items which can not be converted to bool.
Tries to convert this to array of bool,
returns null if some items can not be converted to int.
Converts this to array of float, throws an exception if
some elements can not be converted.
Convert this to array of float,
uses for items which can not be converted to float.
Tries to convert this to array of float,
returns null if some items can not be converted to int.
Converts this to array of PDF names, throws an exception if
some elements can not be converted.
Convert this to array of PDF names,
uses for items which can not be converted to float.
Tries to convert this to array of PDF names,
returns null if some items can not be converted to int.
Tries to convert this to array of PDF strings,
returns null if some items can not be converted to int.
Tries to convert this to array of PDF strings,
each string converted to using
returns null if some items can not be converted to int.
Converts this to array of PDF references, throws an exception if
some elements can not be converted.
Tries to convert this to array of PDF references,
returns null if some items can not be converted to int.
Converts this to array of objects, throws an exception if
some elements can not be converted.
Convert this to array of objects,
uses for items which can not be converted to float.
Tries to convert this to array of objects,
returns null if some items can not be converted to int.
Converts this to array of PDF dicts, throws an exception if
some elements can not be converted.
Convert this to array of PDF dicts,
uses for items which can not be converted to PDF dict.
Tries to convert this to array of PDF dicts,
returns null if some items can not be converted to PDF dict.
Allows to work with and in same way.
Gets the dictionary of properties.
Gets the PDF object's ID, returns in case of .
Copies properties specified in to .
Parameter can be null in this case it will be initialized.
Copies ALL properties to EXCLUDING properties specified in .
Parameter can be null in this case it will be initialized.
Returns real PDF value, if key specifies PdfRef then reference resolved and
returned referenced value.
Converts value of with key
to real object using .
Converts value of with key
to real object using .
Iterates over specified properties and if their value specified as
reference replaces it with actual value.
Iterates over specified properties and if their value specified as
reference replaces it with actual value.
Assumes that is a reference to another object,
returns referenced object, if referenced object is a PdfRefObject itself
then reference resolved and returned referenced object.
Assumes that is a reference to another object,
returns referenced object, if referenced object is a PdfRefObject itself
then reference resolved and returned referenced object.
Returns PdfRef with specified key.
Base abstract class for objects representing PDF objects.
The object's ID.
Initializes a new instance of the class.
The object's ID.
Writes object to the PDF stream, assumes that object was already started with BeginObj() method.
Returns value of this .
Base abstract generic class for all PDF objects.
The type of underlying value.
The object's value.
Initializes a new instance of the class.
The object's ID.
The object's value.
Represents the PDF Bool object.
Initializes a new instance of the type.
The object's ID.
The object's value.
Represents the PDF Int object.
Initializes a new instance of the type.
The object's ID.
The object's value.
Represents the PDF Number object.
Initializes a new instance of the type.
The object's ID.
The object's value.
Represents the PDF String object.
Initializes a new instance of the type.
The object's ID.
The object's value.
Represents the PDF Null object.
Initializes a new instance of the type.
The object's ID.
Represents the PDF Name object.
Initializes a new instance of the type.
The object's ID.
The object's value.
Base class for PDF objects with value supporting interface.
The type of the value, should support .
Initializes a new instance of the type.
The object's ID.
The object's value.
Gets the owning object.
Represets the PDF Reference object.
Initializes a new instance of the type.
The object's ID.
The object's value.
Represents the PDF Array object.
Initializes a new instance of the type.
The object's ID.
The object's value.
Represents the PDF Dictionary object.
Initializes a new instance of the type.
The object's ID.
The object's value.
Represents the PDF Stream object.
The offset of the object's content in the stream.
The type of PDF stream in context of encryption.
Initializes a new instance of the type.
The offset of of the object in the document' stream.
The object's ID.
The object's value.
For internal use.
Returns the containing data of this
NOTE! Image filters: CCITTFaxDecode, JBIG2Decode, DCTDecode, JPXDecode are NOT applied,
if these filters used somewhere *within* Filter array (not the last in this array) then
NotImplemented exception occurs.
NOTE! Returned stream should be disposed after usage.
NOTE! This method affects of object producing this
.
Returns true if this object is a Cross-Reference stream object.
Specifies the string constants defining the names of PDF types.
The Boolean type.The nullable Boolean type.The integer type.The string type.The name type.The floating point type.The nullable floating point type.The dictionary type.The array type.The DateTime type.The integer array type.The floating point array type.The Boolean array type.The name array type.The string array type.The object array type.The dictionary array type.The reference array type.The device RGB color type.The color type.The reference type.
Represents the PDF Null type.
The instance of the object.
Represents the PDF String type.
Technically a PDF string is an array of bytes. Its interpretation depends on the context.
The PDF specification describes the following types:
byte stringtext stringunicode stringStarts with Unicode Prefix, two bytes 254 and 254.etc.See more details in the PDF specification.
Initializes a new instance of the class.
Initializes a new instance of the class.
The initial value
Initializes a new instance of the class.
The initial value.
Converts this object to the unicode string.
The string representing this object.
The common interface for PDF types that reference a parsed .
Gets the that owns the current object.
Represents a PDF Reference type.
The ID of the referenced PDF object.
The that owns the current object.
Initializes a new instance of the object.
The ID of referenced PDF object.
The parsed .
Tries to get the referenced .
If the current references a ,
all references in the chain are resolved until the actual referenced object is found.
OUT: the referenced object, or null if it could not be found.
True if the referenced object was found (then contains that object),
or false if the referenced object could not be found.
Gets the referenced .
If the current references a ,
all references in the chain are resolved until the actual referenced object is found.
The actual referenced object, or null.
Tries to get the referenced value, returns false if a value cannot be returned.
In the output parameter an object of one of the following types can be returned:
True if the value was found, false otherwise.
Returns the referenced value, null indicates that reference can not be resolved.
If the value was found, it can be of one of the following types:
The referenced value, or null.
Tries to get the referenced PDF dictionary, returns false if a value cannot be returned.
OUT: the referenced dictionary, or null.
True if the referenced dictionary was found, false otherwise.
Tries to get the referenced PDF stream, returns false if a value cannot be returned.
OUT: the referenced stream , or null.
True if the referenced stream was found, false otherwise.
Gets the object used by the owner .
Checks whether two objects are the same.
Represents a PDF Array type object.
The that owns the current object.
Initializes a new instance of the class.
that owns the current object.
Initializes a new instance of the class.
that owns the current object.
The to encode as array.
Represents a PDF Dictionary type object.
The that owns the current object.
Initializes a new instance of the class.
that owns the current object.
Contains 14 Standard PDF fonts.
Helvetica Regular font.
Helvetica Italic font.
Helvetica Bold font.
Helvetica Bold Italic font.
Times Regular font.
Times Italic font.
Times Bold font.
Times Bold Italic font.
Courier Regular font.
Courier Italic font.
Courier Bold font.
Courier Bold Italic font.
Symbol Regular font.
Wingding Regular font.
Contains information about PDF standard font.
The name of standard font: "Times-Roman", "Helvetica-Oblique"
The Type1 font representing this standard font.
The representing this standard font.
The created from .
The length in bytes of the clear-text portion of the Type 1 font program.
The length in bytes of the encrypted portion of the Type 1 font program.
The length in bytes of the fixed-content portion of the Type 1 font program.
The font's data.
Creates object from stream.
Retpresents a PDF stream object.
Gets format of the data in underlying stream.
Gets a providing additional decode parameters used if is not ,
can be null.
Gets an underlying object.
Allows to get object.
Returns an object containing stream data.
Note! Returned object should be disposed after usage.
Note! Returned should be used for reading only.
Returns a object containing stream data.
Note! Returned object should be disposed after usage.
Note! Returned object should be used for reading only.
Represents PDF file stream.
The format of the data in the stream.
The decode params for , can be null.
Represents PDF file stream.
The file name.
Represents PDF memory stream.
The format of the data in the stream.
The decode params for , can be null.
Represents PDF memory stream.
The format of the data in the stream.
The decode params for , can be null.
The underlying data.
Implements over standard object.
The underlying stream.
Wrapper around standard object.
Note! does NOT dispose underlying object.
The format of the data in the stream.
The decode params for , can be null.
The underlying object.
Indicates whether will be disposed when this disposed.
Represents the range of bytes.
Defines the stream allows to access to some range within another stream,
does not support writing.
Represets a collection of objects.
Represents a base structure attribute.
Initializes a new instance of the class.
Gets a dictionary containing attribute's properties.
Value of property can be:
numberbool represents PDF name.
Contains a structure attribute's ( object) class name and its revision.
Initializes a new instance of the class.
The attribute class name.
The revision of attribute, 0 by default.
Creates a new object that is a copy of the current instance.
A new object that is a copy of this instance.
Gets the containing this object.
Gets the owning this object.
Gets the attribute class.
Gets or sets the attribute's revision.
Represents a collection of objects.
Adds a attribute class to the collection with default zero revision.
The attribute class to add.
The created object.
Gets the owning object.
Represents a structure attribute ( object) and its revision.
Initializes a new instance of the class.
The underlying object.
The revision of the attribute, 0 by default.
Gets the containing this object.
Gets the owning this object.
Gets the underlying object.
Gets or sets the attribute's revision.
Represents a collection of objects.
Adds an empty attribute to the collection with default zero revision.
The created object.
Adds an attribute to the collection with default zero revision.
The object to add.
The created object.
Gets the owning object.
Common interface for objects which can be added to a document's Structure Tree
as content items, these include ,
, etc.
For internal use.
For internal use.
For internal use.
Represents a collection of objects.
Gets the owning this collection.
Abstract base class for types representing a content item in a PDF document's structure tree.
Each is associated with a document object
that supports the interface, typically it is ,
, etc.
Returns the document's object associated with the ,
it can be Page, FormXObject, AnnotationBase, Image etc.
Gets the collection containing this object.
Gets the owning this object.
Represents a content item specified via MCID and owning a .
Initializes a new instance of the class.
The identificator of a Marked Content Sequence in the page specified by .
Gets the identificator of a Marked Content Sequence in the page specified by .
Abstract base class for and representing MCR and OBJR PDF objects.
Gets or sets the object where this content item is located.
Represents a Marked-Content Sequence as a Content Item in a PDF structure tree (MCR PDF object).
Gets or sets the content stream containing the marked-content sequence.
This entry should be present only if the marked-content sequence resides in a content stream other
than the content stream for the page - for example,
in a form XObject or an annotation’s appearance stream.
If this entry is absent, the marked-content sequence is contained in the content stream of the page
identified by
(either in the marked-content reference dictionary or in the parent structure element).
Gets or sets the object owning the content stream identified by the property.
Gets or sets the marked-content identifier of the marked-content sequence within its content stream.
Represents a custom PDF object as a Content Item in a PDF structure tree (OBJR PDF object).
Initializes a new instance of the class.
Initializes a new instance of the class.
The associated object.
Sets without firing an event.
Gets or sets the referenced object.
Represents a mark information dictionary.
Gets or sets a flag indicating whether the document conforms to Tagged PDF conventions.
Gets or sets a flag indicating the presence of structure elements that contain user properties attributes.
Gets or sets a flag indicating the presence of tag suspects.
Represents a collection of objects.
Gets the owning this collection.
Represents a structure element of a document's structure tree.
Initializes a new instance of the class.
Initializes a new instance of the class.
The element's type.
Gets the list of embedded files associated with this .
Gets the containing this object.
Gets or sets the structure type,
which is a string identifying the nature
of the structure element and its role within the document,
such as chapter, paragraph, or footnote.
Gets the parent object.
Gets the root object.
Gets or sets the element identifier, a byte array designating this structure element.
The value must be unique among all elements in the document’s structure hierarchy.
Gets or sets a object used as the default page
for the content items owned by this .
Gets a value indicating whether the collection
contains any items.
Gets the collection of objects.
Gets a value indicating whether the collection
contains any items.
Gets the collection of child object.
Gets a value indicating whether collection
contains any items.
Gets the collection of attributes associated with this structure element.
Gets a value indicating whether the collection
contains any items.
Gets the collection of attribute classes associated with this element.
Gets or sets the current revision number of this structure element.
Gets or sets the title of the structure element,
which is a text string representing it in human-readable form.
The title should characterize the specific structure element, such as Chapter 1,
rather than merely a generic element type, such as Chapter.
Gets or sets the alternate description of the structure element and its children in human-readable form,
which is useful when extracting a document’s content in support of accessibility to users with
disabilities or for other purposes.
Gets or sets the expanded form of an abbreviation.
Gets or sets a text that is an exact replacement for the structure element and its children.
This replacement text (which should apply to as small a piece of content as possible)
is useful when extracting a document’s content in support of accessibility
to users with disabilities or for other purposes.
The standard structure types.
Artifact.
Grouping elements are used solely to group other structure elements;
they are not directly associated with content items.
Document. A complete document.
This is the root element of any structure tree containing multiple parts or multiple articles.
Part. A large-scale division of a document.
This type of element is appropriate for grouping articles or sections.
A relatively self-contained body of text constituting a single narrative or exposition.
Articles should be disjoint; that is, they should not contain other articles as constituent elements.
Common interface for and .
Represents the logical structure of a document.
Used while loading and contains objects
which reference an objects not loaded during document parsing.
Gets the dictionary that maps the names of structure types used in a document to their approximate equivalents in the set of standard structure types.
See PDF specification for details.
Gets the collection of nested objects.
Gets the dictionary that maps name objects designating attribute classes to the corresponding
attribute objects or arrays of attribute objects.
The associated with this item,
it can be Page, AnnotationBase etc.
Represents the key in ParentTree dictionary.
Object Reference content item.
The parent object used if whole object is a content item,
referenced via StructParent entry in ContentObj.
Marked Content item.
Associates MCID with objects.
Assigns StructParent and StructParents to linked objects.
Compares this object with another, returns true if equals.
Builds on the base of structure.
The owning object.
The created immedeaty after document's loading.
The actual created when document is saved.
Represents a single character in a .
Note that an can be represented by several UTF-16 character codes,
e.g. some Unicode ranges use two UTF-16 codes to represent a single character.
Gets the start index of this in its .
Gets the length of this (the count of UTF-16 characters that represent it).
The base abstract class that provides a common implementation of the interface.
Used internally while building .
The start index of this char in its .
The length in unicode chars.
Gets + .
Represents in rectangular .
The width of the char.
Represents in .
Represents a single continuous line of text.
Gets the line text.
Gets the geometric coordinates (relative to the top left corner of the page)
of a range of characters in this line.
The starting position of the range in this line.
The length of the range.
The specifying the coordinates on the page.
Gets the geometric coordinates (relative to the top left corner of the page)
of this line.
The specifying the coordinates on the page.
Returns the text of a range of characters in this line.
The starting position of the range in this line.
The length of the range.
The text in the specified range.
Common interface for text blocks.
Sets the line text.
Adds to this .
Combines this with another, returns false if combine can not be performed.
Performs hit testing
Searches a text inside , calls for each found text.
Returns index of the at specified point.
Reorders RTL text.
Breaks on two or more lines
if it contains empty characters which are too wide.
Base abstract class for classes implmenting interface.
Sets the line text.
Combines this and , returns true if success,
false if lines can not be combined.
Returns coordinates of the characters' range.
Returns coordinates of whole .
Returns a text for specified characters' range.
Returns index of by text index.
Returns info about char at specified position.
Returns information about this line relative to specified point, see structure.
Searches a text in this .
Reorders RTL text.
Base abstract class representing rectangular text line.
Returns 1 for and ,
-1 for and .
Returns 1 for and ,
-1 for and ,
i.e. 1 for blocks with TL.Y < BR.Y and -1 when TL.Y > BR.Y.
Returns char at specified point, point can be outside of the .
Returns sum of in this text block.
The rectangular text line with left to right chars flow.
The rectangular text line with right to left chars flow.
The rectangular text line with top to bottom chars flow.
The rectangular text line with bottom to top chars flow.
The text line which contains text rotated on custom angle or skwed text,
used to represent a text with custom transformation.
Returns a char at specified point.
Represents a range of characters in a .
The index of the in the .
The index of the first in the .
The number of s in this fragment.
A value of -1 indicates that this fragment includes all characters
from to the end of the line.
Tests whether two specified objects are equivalent.
Tests whether two specified objects are NOT equivalent.
Represents a fragment of text in a .
Initializes a new instance of the class.
Initializes a new instance of the
The to add to .
Represents a logical position in a .
The index of the in the .
The index of the in the .
Indicates whether the hit test location is at the leading or the trailing
side of the character.
Gets the position within the depending on .
Represents hit test info in a .
The logical position in the .
The bounds of on the page.
Indicates whether the hit test location is inside the .
If false, the position nearest to the text's edge is returned.
Represents the text map of a page.
Provides methods for text searching, hit testing etc.
The pixel values used by the text map's methods and properties are determined
by the X and Y resolution passed to the
method to create the text map.
Gets the coordinates of a on the page.
The .
A containing the text coordinates.
Gets the text of a .
The .
The text of the .
Performs hit testing on the map.
This method accepts a pixel location relative to the top left corner of the page,
and provides info about the text in that location.
The X pixel location relative to the top left corner of the page.
The Y pixel location relative to the top left corner of the page.
containing the hit test result.
Gets the info about a word at a specified position in a line.
A specifying a position in the .
OUT: the start index of the word in the line.
OUT: the length of the word in characters.
OUT: the geometric bounds of the word.
Performs a text search within this text map.
The is called for each found instance.
A specifying the search parameters.
The callback method.
Gets a that represents the text
within a specified range (from to ).
The specifying the start of the range.
The specifying the end of the range.
OUT: a representing the text in the range.
OUT: the range's text.
Gets a that represents the text
from the start of the page to .
The specifying the end of the range.
OUT: a representing the text in the range.
OUT: the range's text.
Gets a that represents the text
from to the end of the page.
The specifying the start of the range.
OUT: a representing the text in the range.
OUT: the range's text.
Gets a that represents the text of the whole page.
OUT: a representing the text on the page.
OUT: the range's text.
Defines the callback method used in text search (see ).
The position of the found instance.
Represents the page's text map.
Provides methods for text searching, hit testing etc, implements .
Adds the to the map.
Gets the coordinates of on the page.
Gets a text of .
Use this function passing in a specific pixel location relative to the top-left
location of the text map and obtains the information about the correspondent
hit-test metrics of the text string where the hit-test has occurred.
The pixel location X to hit-test, relative to the top-left location of the layout box.
The pixel location Y to hit-test, relative to the top-left location of the layout box.
Returns contains information about hit test.
Returns info about word at specified position.
Searches a text in this text map, calls for each found text.
Returns a value indicating whether the map has no text blocks.
Returns range of the text from to .
Returns range of the text from top of the page to .
Returns range of the text from to the end of the page.
Returns range of the text which corresponds to the whole page.
Block index at right from point:
+-------------+
| | x
+-------------+
Block index at left from point:
+-------------+
| | x
+-------------+
Block index at top from point:
+-------------+
| |
+-------------+
x
Block index at bottom from point:
x
+-------------+
| |
+-------------+
Builds using specified .
Called by text operators other than "TJ".
Called by "TJ" operator.
Base abstract class representing CID-keyed font in PDF document.
The PostScript name of the CIDFont.
The object
defines the character collection of the CIDFont.
The object describing the CIDFont’s default metrics other than its glyph widths.
The default width for glyphs in the CIDFont, default value is 1000.
The list containing width for indiviual glyphs.
The default vertical metrics.
The list containing vertical metrics for indiviual glyphs.
Gets the PostScript name of the CIDFont.
Gets the object describing the CIDFont’s default metrics.
Gets a value indicating whether the font is embedded.
Returns the object created on the base of embedded data.
Note! Method returns null if font is NOT embedded.
The object.
Returns the object defining font attributes.
The object.
Defines default vertical glyph metrics.
Defines vertical glyph metrics.
Collection of horizontal glyph metrics.
Collection of vertical glyph metrics.
Represents a CID-keyed font containing glyph descriptions based on the Adobe Type 1 font format.
Represents a CID-keyed font containing glyph descriptions based on the TrueType font format
A table defines mapping from CID (PDF character code) to glyph index,
if this value is null then identity mapping is used .
The mapping table.
Defines character collection assumed by the CIDFont.
Defines Adobe-Identity collection.
Defines Adobe-UCS collection.
Gets a string identifying the issuer of the character collection—for example, Adobe.
Gets a string that uniquely names the character collection within the specified registry for example, Japan1.
Gets the supplement number of the character collection.
Represents a CMap table.
A CMap specifies the mapping from character codes to character selectors,
it is used to extract Unicode text from PDF documents.
In most cases CMaps are fully embedded into the PDF document.
But in rare cases a CMap in a PDF is specified by a PDF name object,
where this name identifies a predefined CMap that should be known to the PDF processor.
GrapeCity.Documents.Pdf contains the following predefined CMaps:
90ms-RKSJ-H90ms-RKSJ-V90msp-RKSJ-H90msp-RKSJ-VIdentity-HIdentity-VUniCNS-UCS2-HUniCNS-UCS2-VUniGB-UCS2-HUniGB-UCS2-VUniJIS-UCS2-HUniJIS-UTF16-HUniJIS-UTF16-VUniKS-UCS2-HUniKS-UCS2-V
The optional GrapeCity.Documents.Pdf.Resources package contains many other
less common predefined CMap files.
See and for details.
Loads a from a specified stream.
See the PDF spec for the description of the CMap format.
If is true then the content of the stream will be
decompressed using .
This method will throw an exception if the stream content has unknown or unsupported format.
The stream containing the CMap definition.
Indicates whether the stream content is compressed and should be used to decompress.
The created object.
Loads a from a specified file.
See the PDF spec for the description of the CMap format.
If is true then the content of the file will be
decompressed using .
This method will throw an exception if the file content has unknown or unsupported format.
The file containing the CMap definition.
Indicates whether the stream content is compressed and should be used to decompress.
The created object.
The base abstract class for classes representing CMaps.
The /CMapType entry
The name of CMap.
The defines the character collection.
A code that determines the writing mode for any CIDFont with which this CMap is combined.
The possible values are 0 for horizontal and 1 for vertical. Default value: 0.
An array of objects defines the chars for specified range.
CodeSpaceRanges[0] defines one byte chars
CodeSpaceRanges[1] defines two byte chars
etc
Used to enumerate PDF string, sequentially reads PDF chars from PDF string
using information specified in begincodespacerange / endcodespacerange sections.
Returns UTF-16 string for specified code obtained from PDF string.
Converts PDF code to CID.
Gets or sets the CMap name.
Gets a value indicating whether the CMap is predefined and is specified by name in a PDF file.
Gets a value indicating whether the CMap is predefined but unknown to GcPdf.
The start of the range.
The length of the range.
Defines the range of the codes.
The mapping defined via beginbfchar/endbfchar and beginbfrange/endbfrange sections.
The mapping defined via begincidchar/endcidchar and begincidrange/endcidrange sections.
The mapping defined via beginnotdefchar/endnotdefchar and beginnotdefrange/endnotdefrange sections.
Represents unknown Standard CMap defined in PDF using PdfName object.
Type 1 font program, in the original (noncompact) format described in Adobe Type 1 Font Format.
TrueType font program, as described in the TrueType Reference Manual.
Type 1-equivalent font program represented in the Compact Font Format (CFF),
as described in Adobe Technical Note #5176, The Compact Font Format Specification.
Type 0 CIDFont program represented in the Compact Font Format (CFF),
as described in Adobe Technical Note #5176, The Compact Font Format Specification.
OpenType font program, as described in the OpenType Font Specification (see the Bibliography).
Base class for classes defining PDF embedded font program, see PDF1.7 (5.8 Embedded Font Programs) for details.
Defines PDF embedded font program loaded from PDF content.
The type of font program.
(Required for Type 1 and TrueType fonts)
The length in bytes of the clear-text portion of the Type 1 font program (see below),
or the entire TrueType font program, after it has been decoded using the filters specified by the stream’s
Filter entry, if any.
(Required for Type 1 fonts)
The length in bytes of the encrypted portion of the Type 1 font program (see below)
after it has been decoded using the filters specified by the stream’s Filter entry.
(Required for Type 1 fonts)
The length in bytes of the fixed-content portion of the Type 1 font program (see below)
after it has been decoded using the filters specified by the stream’s Filter entry.
If Length3 is 0, it indicates that the 512 zeros and cleartomark have not been included in
the FontFile font program and must be added.
Initializes a new instance of the .
The containing font's data.
Adobe standard Latin-text encoding.
This is the built-in encoding defined in Type 1 Latin-text font programs
(but generally not in TrueType font programs).
PDF does not have a predefined encoding named StandardEncoding.
However, it is useful to describe this encoding, since a font’s built-in encoding can be
used as the base encoding from which differences are specified in an encoding dictionary.
Custom encoding, see details in PDF 1.7 427 page.
The base .
The differences from .
Should be called if or were
changed.
Encoding for text strings in a PDF document outside the document’s content streams.
This is one of two encodings (the other being Unicode) that can be used to represent text strings;
see Section , “Text String Type.” PDF does not have a predefined encoding named PDFDocEncoding;
it is not customary to use this encoding to show text from fonts.
Returns UTF-16 character code by glyph's name, based on "Adobe Glyph List",
glyphlist.txt distributed by Adobe.
Returns the glyph's name by character code.
Returns the character's code by glyph name.
Returns the unicode by character's code.
Converts PDF code to UTF-16 string, can return false if
specified string can not be converted using this encoding.
Mac OS standard encoding for Latin text in Western writing systems.
PDF has a predefined encoding named MacRomanEncodingthat can be used with both
Type 1 and TrueType fonts.
Windows Code Page 1252, often called the “Windows ANSI” encoding.
This is the standard Windows encoding for Latin text in Western writing systems.
PDF has a predefined encoding named WinAnsiEncoding that can be used with both
Type 1 and TrueType fonts.
Defines PDF font and size this combination of font's properties
occurs very often in PDF specification.
Gets the font size, units depend on context in most cases it is text space units.
The base abstract class representing a font in a PDF document.
The base abstract class representing a font in a PDF document.
Reads char from pdf string.
Reads PDF code from the string in specified position, advances position and returns
corresponding specified PDF code.
Selects best which can be used.
Method is called when PDF font has no embedded data or embedded data has unsupported format.
Unfortunately PDF spec does not contain exact algorithm which should be used
to determine a font to use when no embedded data.
So, this method is a compilation of various "tricks" and "magic" :(.
Note! This method returns null only if and
is null or empty.
Gets or sets the defines ToUnicode mapping.
The font's type. (Type0, Type1 etc).
Indicates whether font is used for vertical drawing.
Gets the object containing font's embedded data,
can be null if font is not embedded.
Gets or sets the PostScript name of the font.
Gets a value indicating whether the font is embedded.
Gets an object that describes the font.
The object.
Gets a object created from the embedded font data.
Note that this method will return null if the font is not embedded
or does not support this operation (e.g. Type3 fonts).
The object.
Contains information about char used to build text map.
The PDF code of the char as it specified in TJ or Tj commands.
The string representing char, typically it has 1 char length.
The width of the char divided by 1000.
Indicates whether this char is a space and word spacing(Tw) should be applied to it.
The divided by 1000.
The divided by 1000.
The divided by 1000.
Has valid value only for , contains CID for pdf code.
The glyph's index in native font.
The glyph's width in native font.
The glyph's height in native font.
The user to render text.
Renders text specified by .
Creates object describing properties of specified PDF code.
NOTE! This method is for internal usage and called from
if char does not exist in the cache.
Gets for specified PDF code.
Gets font's metrics used while building .
Builds from specified PDF string, called from .
Index in passed List{object} from which enumeration should be started.
The type of .
The scale factor which should applied to char size.
The scale factor which should be applied to the block size.
The current text rendering matrix.
The text of text block.
The created .
This is a first char in text block.
The char index.
The char length, typically 1 but can be represented more than on unicode char.
The char size in text coordinate space.
The char is "empty" added as result of processing the double value in TJ command.
The char is space char, tw should be applied to it.
The font ascent in text coordinate space.
The font descent in text coordinate space.
The width of space char.
Vertical font only.
The horizontal offset of glyph starting point, calculated on the base of
in text coordinate space.
Vertical font only.
The char width in text coordinate space.
Vertical font only.
The minimal left coordinate for TTB layout in pixels.
Vertical font only.
The maximum right coordinate for TTB layout in pixels.
Vertical font only.
The height of the block.
Specifies various characteristics of the font.
No 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 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.
This flag and the flag cannot both be set or both be clear.
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.
See PDF1.7 specification, page 459.
Defines possible font stretch values.
UltraCondensed.
ExtraCondensed.
Condensed.
SemiCondensed.
Normal.
SemiExpanded.
Expanded.
ExtraExpanded.
UltraExpanded.
Defines possible font weight values.
Thin.
ExtraLight.
UltraLight.
Light.
Normal.
Regular.
Medium.
DemiBold.
SemiBold.
Bold.
ExtraBold.
Black.
Heavy.
Specifies metrics and other attributes of a font.
Gets the preferred font family name.
For example, for the font Times Bold Italic, the FontFamily is Times.
Gets the font stretch value.
Gets the weight (thickness) component of the fully-qualified font name or font specifier.
Gets the angle, expressed in degrees counterclockwise from the vertical,
of the dominant vertical strokes of the font.
Specifies metrics and other attributes of a or a as a whole,
as distinct from the metrics of individual glyphs.
These font metrics provide information that enables a consumer application to synthesize a substitute font or
select a similar font when the font program is unavailable.
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.
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.
(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.
(Optional; PDF 1.5; strongly recommended for Type 3 fonts in Tagged PDF documents)
The flags defining various characteristics of the font.
(Required)
A rectangle 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, except for Type 3 fonts)
The angle, expressed in degrees counterclockwise from the vertical,
of the dominant vertical strokes of the font.
(Required)
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.
(Required, except for Type 3 fonts)
The spacing between baselines of consecutive lines of text.
(Optional) Default value: 0.
The vertical coordinate of the top of flat capital letters, measured from the baseline.
(Required for fonts that have Latin characters, except for Type 3 fonts)
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.
(Optional) Default value: 0.
The thickness, measured horizontally, of the dominant vertical stems of glyphs in the font.
(Required, except for Type 3 fonts)
The thickness, measured vertically, of the dominant horizontal stems of glyphs in the font.
(Optional) Default value: 0.
The average width of glyphs in the font.
(Optional) Default value: 0.
The maximum width of glyphs in the font.
(Optional) Default value: 0.
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.
(Optional) Default value: 0.
The listing the character names defined in a font subset
(Optional; meaningful only in Type 1 fonts; PDF 1.1)
The defining embedded font's data.
Gets the preferred font family name.
For example, for the font Times Bold Italic, the FontFamily is Times.
Gets the font stretch value.
Gets the weight (thickness) component of the fully-qualified font name or font specifier.
Gets the flags defining various characteristics of the font.
Gets a rectangle 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.
Gets the angle, expressed in degrees counterclockwise from the vertical,
of the dominant vertical strokes of the font.
Gets the maximum height above the baseline reached by glyphs in this font,
excluding the height of glyphs for accented characters.
Gets the maximum depth below the baseline reached by glyphs in this font.
The value is a negative number.
Gets the spacing between baselines of consecutive lines of text.
Gets the vertical coordinate of the top of flat capital letters, measured from the baseline.
Gets 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.
Gets the thickness, measured horizontally, of the dominant vertical stems of glyphs in the font.
Gets the thickness, measured vertically, of the dominant horizontal stems of glyphs in the font.
Gets the average width of glyphs in the font.
Gets the maximum width of glyphs in the font.
The glyph index.
Glyph width in font EM units.
Glyph height in font EM units, used in vertical drawing to compare with GlyphAdvance.
scaled to range 0..1000.
scaled to range 0..1000, PDF vertical metric.
PDF vertical metric.
PDF vertical metric.
Associated glyph.
The pdf font used to draw this char.
Encodes PDF font data and writes it to PDF stream.
The owning .
Returns for specified glyph index,
can return null if does not exists.
Builds for specified glyph.
Returns a value indicating whether the owns specified PDF font.
Prepares embedded data.
Returns for specified glyph which belongs to the underlying ,
returns null if for specified glyph does not exist.
Builds for specified glyph.
Collection of the , PdfCharInfo.GlyphInfo.GlyphIndex is used as key.
Uses following rules:
-) written as Type1 font
-) all unicodes with code less than 127 written as is
-) all other unicodes will be encoded via custom encoding using /Differences
Uses following rules:
-) each pdf code has two byte length
-) pdf code is same as glyph index
The collection of characters used by this font.
The underlying .
Base class for encoders based on Type0 PDF font.
The defining CID font referenced from Type0 fonts.
Defines PDF embedded font program created during encoding of by the .
The base abstract class representing a simple font in a PDF document.
See the PDF specification for more info about PDF simple 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)
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 MissingWidthfrom the FontDescriptor entry for this font is used.
(Required except for the standard 14 fonts; indirect reference preferred)
The encoding used by the font.
A font descriptor describing the font’s metrics other than its glyph widths.
(Required except for the standard 14 fonts; must be an indirect reference)
Returns string for specified PDF char, i.e. method converts
PDF code to UTF-16 codes.
NOTE! This method can be slow, it lookups internal font's tables like /Encoding, /ToUnicode
can parse TrueType fonts to get its cmap table so results returned by it should be cached
at higher level.
Gets the object describing the font's metrics.
Represents True Type font in PDF document.
Reprensets Type0 font in PDF document.
Gets or sets the underlying .
Gets the object that maps character codes to font numbers and CIDs.
Represents Type1 font in PDF document.
Represents Type3 font in PDF document.
Type 3 fonts differ from the other fonts supported by PDF.
In Type 3 fonts, glyphs are defined by streams of PDF graphics operators. These streams are associated with character names.
Note! does not support method, it returns null.
A 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.
A mapping glyph space to text space.
A common practice is to define glyphs in terms of a 1000-unit glyph coordinate system,
in which case the font matrix is [ 0.001 0 0 0.001 0 0 ].
The characters' content streams.
The resources used by the font's glyphs.
Defines collection of charaters content streams.
Defines character content stream.
Defines the possible transition styles.
Two lines sweep across the screen, revealing the new page.
The lines may be either horizontal or vertical and may move inward from the edges
of the page or outward from the centre, as specified by the and
properties, respectively.
Multiple lines, evenly spaced across the screen, synchronously sweep in the same direction
to reveal the new page.
The lines may be either horizontal or vertical, as specified by the .
Horizontal lines move downward; vertical lines move to the right.
A rectangular box sweeps inward from the edges of the page or outward from the centre,
as specified by the property, revealing the new page.
A single line sweeps across the screen from one edge
to the other in the direction specified by the entry,
revealing the new page.
The old page dissolves gradually to reveal the new one.
Similar to Dissolve, except that the effect sweeps across the page in a wide band moving from one side of the screen to the other
in the direction specified by the property.
The new page simply replaces the old one with no special transition effect.
Changes are flown out or in (as specified by ),
in the direction specified by ,
to or from a location that is offscreen except when is .
The old page slides off the screen while the new page slides in,
pushing the old page out in the direction specified by .
The new page slides on to the screen in the direction specified by ,
covering the old page.
The old page slides off the screen in the direction specified by ,
uncovering the new page in the direction specified by .
The new page gradually becomes visible through the old one.
Value is unknown.
Defines the possible dimensions in which the transition effect shall occur.
Horizontal.
Vertical.
Value is unknown.
Defines the possible directions in which the specified transition effect shall moves.
The direction is left to right.
The direction is bottom to top.
The direction is right to left.
The direction is top to bottom.
The direction is Top-left to bottom-right. (Used only when is
.
Used only when is .
Value is unknown.
Defines the possible directions of motion for a transition effect.
Inward from the edges of the page.
Outward from the centre of the page.
Value is unknown.
Represents a page transition effect,
describing the style and duration of the visual transition to use when moving
from another page to the given page during a presentation.
Initializes a new instance of the class.
Gets or sets the transition style that shall be used when moving to this page from another
during a presentation. Default value: .
Gets or sets the duration of transition effect, in seconds.
Default value: 1.
Gets or sets the dimension in which the specified transition effect shall occur.
Default value: .
Gets or sets the direction of motion for the specified transition effect.
Default value: .
Gets or sets the direction in which the specified transition effect shall moves,
expressed in degrees counterclockwise starting from a left-to-right direction.
Default value: .
Gets or sets the starting or ending scale at which the changes shall be drawn.
If specifies an inward transition (),
the scale of the changes drawn shall progress from to 1.0 over the course
of the transition.
If specifies an outward transition,
the scale of the changes drawn shall progress from 1.0 to over the course of the transition.
Gets or sets a value indicating whether the area that shall be flown in is rectangular and opaque,
used only if is .
Default: false.
Abstract base class for all classes defining set of events associated with some PDF object: annotation, AcroForm field etc.
Called when action with specified name is changed.
Returns true if all objects referenced by this have DocID equal to
.
Enumerates all nested objects supporting interface,
referenced from this object.
Gets or sets the for specified event.
The event type.
Returns the associated with specified event.
Specifies the page layout to be used when the document is opened.
Display one page at a time.
Display the pages in one column.
Display the pages in two columns, with odd-numbered pages on the left.
Display the pages in two columns, with odd-numbered 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.
Specifies how the document should be displayed when opened.
Document outline visible if available.
Neither document outline nor thumbnail images visible.
Document outline visible.
Thumbnail images visible.
Full-screen mode, with no menu bar, window controls, or any other window visible.
(PDF 1.5) Optional content group panel visible.
(PDF 1.6) Attachments panel visible.
Specifies how the document should be displayed on exiting full-screen mode.
Neither document outline nor thumbnail images visible.
Document outline visible.
Thumbnail images visible.
(PDF 1.5) Optional content group panel visible.
(PDF 1.6) The page scaling option to be selected when a print dialog is displayed for this document.
Indicates that the print dialog should reflect no page scaling.
Indicates that applications should use the current print scaling.
(PDF 1.7) The paper handling option to use when printing the file from the print dialog.
Print single sided.
Duplex and flip on the short edge of the sheet.
Duplex and flip on the long edge of the sheet.
Specifies the possible predominant reading order for text.
Left to right.
Right to left (including vertical writing systems, such as Chinese, Japanese, and Korean).
Specifies the types of page boundaries. See PDF specification for details.
The region to which the contents of the page are to be clipped (cropped) when displayed or printed.
The boundaries of the physical medium on which the page is to be printed.
The region to which the contents of the page should be clipped when output in a production environment.
The intended dimensions of the finished page after trimming.
The extent of the page’s meaningful content (including potential white space) as intended by the page’s creator.
Represents viewer preferences to be used when displaying the document.
Returns a value indicating whether object is not default and its dictionary should be written to PDF.
Resets properties of this to default values.
Gets or sets how the document should be displayed when opened.
Gets or sets the page layout to be used when the document is opened.
Gets or sets whether to hide the viewer tool bars when the document is active.
Gets or sets whether to hide the viewer menu bar when the document is active.
Gets or sets whether to resize the document's window to fit the size of the first displayed page.
Gets or sets whether to position the document's window in the center of the screen.
Gets or sets 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.
Gets or sets whether the window’s title bar should display the document title taken from the Title entry of the document information dictionary.
Default value: false.
Specifies how to display the document on exiting full-screen mode.
Ignored unless is .
Gets or sets the predominant reading order for text.
This property 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.
Gets or sets the name of the page boundary representing the area of a page to be displayed when viewing
the document on the screen.
Default value: CropBox.
Gets or sets the name of the page boundary to which the contents of a page are to be clipped when viewing
the document on the screen.
Default value: CropBox.
Gets or sets the name of the page boundary representing the area of a page to be rendered when
printing the document.
Default value: CropBox.
Gets or sets the name of the page boundary to which the contents of a page are
to be clipped when printing the document.
Default value: CropBox.
Specifies the page scaling option to be selected when a print dialog is displayed for this document.
Specifies the page scaling option to be selected when a print dialog is displayed for this document.
(PDF 1.7) A flag specifying whether the PDF page size is used to select the input paper tray.
(PDF 1.7) The number of copies to be printed when the print dialog is opened for this file.
Supported values are the integers 2 through 5. Values outside this range are ignored.
(PDF 1.7) The page numbers used to initialize the print dialog box when the file is printed.
This is a comma-delimited list of inidvidual page numbers and/or dash-delimited page ranges.
Setting this property to a value that cannot be parsed will be ignored.
FDF writer used to build FDF content stream.
Starts writing new pdf object with specified ID.
Ends PDF object.
Used to manage objects IDs of offsets in stream during generating PDF content.
The using this .
Used only when document saved in linearized form contains about positions of objects
and references to objects in the PDF stream.
Increment each time when offset was specified for object, i.e.
when it was written to the output stream.
Updated only if it is less or equal to zero, and can be used to determine ID
of first written object.
Skips all ID's with offset greater or equal to 0.
Skips all ID's with offset less than 0.
Called when saving of document is finished.
Called when saving of document is started.
Linearized mode only.
Called from PdfDocStreamWriter.BeginObj(...) methods when generating linearized document
used to store position in document's stream where object with specified ID is started.
Linearized mode only.
Called from PdfDocStreamWriter.WriteRef(...) methods when generating linearized document
used to store position of reference to the object in document's stream.
Linearized mode only.
Returns containing positions in the stream where
are references to object with ID .
Linearized mode only.
Updates all positions of object with specified ID on specified value ().
Linearized mode only.
Get IDs of the objects which were actually written into stream,
i.e. their offset currently not -1.
Generates new object ID.
NOTE! This method should be called by each PDF object only ONCE.
Generates new object ID for specified ,
if its is empty.
Generates new object ID and sets it's offset to specified value.
NOTE! This method should be called each PDF object only ONCE.
Returns position of object in the PDF stream, returns -1 if object was not written.
Returns position of object in the PDF stream, returns -1 if object was not written.
Returns associated with specified ID, returns null if there are NO objects with specified ID.
Sets position of the object in the PDF stream.
Returns true if specified object already written to PDF stream.
Contains info about object's position in generated PDF file.
Object's generation.
Offset of object's header, i.e. where is 10 0 obj
Positions of references to the object, i.e. where is 10 0 R
PDF writer used to build PDF content stream.
The current graphics state.
"cm"
Modify the current transformation matrix (CTM) by concatenating the specified matrix
"q"
Save the current graphics state on the graphics state stack
(see “Graphics State Stack” on page 214).
Note! does not montais graphics state stack.
"Q"
Restore the graphics state by removing the most recently saved state from the stack
and making it the current state (see “Graphics State Stack” on page 214).
Note! does not montais graphics state stack.
"w"
Set the line width in the graphics state (see “Line Width” on page 215).
It is a non-negative number expressed in user space units;
stroking a path entails painting all points whose perpendicular distance from the
path in user space is less than or equal to half the line width.
"d"
Set the line dash pattern in the graphics state (see “Line Dash Pattern” on page 217).
"J"
Set the line cap style in the graphics state (see “Line Cap Style” on page 216).
"j"
Set the line join style in the graphics state (see “Line Join Style” on page 216).
"M"
Set the miter limit in the graphics state (see “Miter Limit” on page 217).
"RG"
Set the stroking color space to DeviceRGB (or the DefaultRGB color space; see “Default Color Spaces” on page 257)
and set the color to use for stroking operations.
Note! This methods sets stroke alpha value.
Set the Soft Mask.
"cs", "scn"
Set pattern non stroke color.
"cs", "scn"
Set uncolored pattern non stroke color.
"rg"
Set the non stroking color space to DeviceRGB.
Note! This methods sets non stroke alpha value.
"gs"
Sets graphics state parameters.
"gs"
Sets graphics state parameters.
"Tf"
Set the text font, Tf , to font and the text font size, Tfs, to size.
font is the name of a font resource in the Font subdictionary of the current resource dictionary;
size is a number representing a scale factor.
There is no initial value for either font or size;
they must be specified explicitly by using Tf before any text is shown.
"Tr"
Set the text rendering mode, Tmode , to render, which is an integer. Initial value: 0.
"Tz"
Set the horizontal scaling, Th , to (scale ÷ 100). scale is a number specifying
the percentage of the normal width. Initial value: 100 (normal width).
Writes string in format "(blabla)".
Writes bytes which determines fragment of page content, it can contains one or more operators.
Writes another content stream to this content stream.
Begins writing of page content operator.
Ends writing of page content operator.
Begins array.
Ends array.
Begins dictionary.
Ends dictionary.
Begins entry containg subdictionary.
Ends dict entry.
Adds float dict entry.
Adds integer dict entry.
Adds name dict entry, entry added only if value is not empty.
Adds bool dict entry.
Adds NULL entry.
Adds string dict entry, string is written as PDF string i.e. like (BlaBla).
If string contains chars with code greater than 126 it encoded as unicode.
String is encoded if encoding specified for document.
Adds PDF array dict entry.
Writes object.
Writes dictionary values, method assumes that dictionary already started
with one of BeginDictXXX() methods.
PDF writer used to build PDF document content.
Writes comment string to the stream if is true.
Returns value of "Length" key in PDF dictionary for stream object depending on encrypting.
Writes specified data as PDF stream object.
Writes specified stream as PDF stream.
Writes DateTime value to dictionary, value is encoded as it defined
in chapter 3.8.3 Dates of PdfSpec 1.7.
Gets the ID of PDF object currently written with BeginObj() method.
Writes DateTime value, value is encoded as it defined
in chapter 3.8.3 Dates of PdfSpec 1.7.
Starts writing new pdf object with specified ID.
Starts writing new pdf object, returns its ID.
Starts writing pdf object with specified ID, updates object's offset in .
Starts writing , initializes
if it is less or equal zero.
Ends PDF object.
Finishes currently started indirect PDF object (methods BeginObj(), BeginDict()).
If is not empty then writes PDF stream,
including "Length" and "Filter" dictionary properties.
indicates whether to apply compression if it specified
for this GcPdfDocument.
indicates whether to apply encryption.
NOTE! This method assumes that PDF object's writing already started with BeginObj() and BeginDict() methods.
If true then Length entry will be written as DIRECT VALUE.
See .
Writes value of object, if is not null
then references to this object is written, otherwise
method is called.
Writes to the stream, generates
if it is empty.
Object is written only if it is was NOT written before.
This method does not write nested objects.
Writes to the stream, generates
if it is empty.
Object is written only if it is was NOT written before.
Writes reference to another PDF object: "10 0 R".
Writes reference to another PDF object: "10 0 R".
Writes reference linked with specified ,
initializes if it is empty.
Adds entry with reference to another object.
Adds entry with reference to another object.
Adds entry with reference to .
Starts dictionary of root level.
Ends dictionary of root level.
Starts nested dictionary dictionary.
Ends nested dictionary, method assumens that EndEntry() called after.
Begins array.
Ends array.
Adds dict entry "as is" value written without any conversion as ASCII string.
Adds dict entry.
Adds dict entry.
Adds colorspace dict entry.
Adds string dict entry, string is written as PDF string i.e. like (BlaBla).
If string contains chars with code greater than 126 it encoded as unicode.
String is encoded if encoding specified for document.
Adds Lang dict entry.
Adds string dict entry, string is written as PDF string i.e. like (BlaBla).
If string contains chars with code greater than 126 it encoded as unicode.
String is encoded if encoding specified for document.
Adds string dict entry if it NOT empty, string is written as PDF string i.e. like (BlaBla).
If string contains chars with code greater than 126 it encoded as unicode.
String is encoded if encoding specified for document.
Adds NULL entry.
Adds hex string entry in format:
Key <F1A0>
Adds Matrix dict entry.
Adds ColorPoint dict entry.
Adds ColorPoint dict entry.
Adds ColorMatrix dict entry.
Adds ColorMatrix dict entry.
Adds FileID dict entry.
Adds bool dict entry.
Adds integer dict entry.
Adds long dict entry.
Adds float dict entry.
Adds double dict entry.
Adds float dict entry if HasValue is true and NOT equals .
Adds float dict entry if HasValue is true.
Adds int dict entry if HasValue is true.
Adds boolean dict entry if does NOT equal .
Adds Name dict entry if HasValue is true and NOT equals .
Adds int dict entry if NOT equals .
Adds Offsets dict entry if HasValue is true.
Adds Offsets dict entry if HasValue is true.
Adds Rect dict entry if HasValue is true.
Adds boolean dict entry if HasValue is true.
Adds Rect dict entry if HasValue is true and NOT equals .
Adds integer dict entry.
Adds integer dict entry.
Adds DateTime value to dictionary, value is encoded as it defined
in chapter 3.8.3 Dates of PdfSpec 1.7.
Adds DateTime value to dictionary if is true.
Writes Rich String to dictionary.
See PDF1.7 page 680 for details.
Adds name dict entry, entry added only if value is not empty.
Adds dict entry, if value is null the entry is not added.
indicates whether destination used to point position
inside ANOTHER, not current document.
Adds float array entry, entry added only if is not null and
is null or NOT equals .
Adds int array entry, entry added only if is not null and
is null or NOT equals .
Adds name array entry, entry added only if is not null and
is null or NOT equals .
Adds line style entry.
Adds point array entry, optional convert method can be used to convert each point.
Adds names array entry.
Begins entry in dictionary.
Ends entry in dictionary.
Begins entry containg subdictionary.
Ends dict entry.
Begins entry containing array.
Ends array entry.
Writes a value defined by object.
Writes object.
Adds PDF array dict entry.
Adds PDF dict dict entry.
Writes , method writes all dictionary values,
excluding values related to the PDF stream object like Length, Filter, DecodeParms.
PDF object and dict should be started with BeginObj() and BeginDict().
Object will be finished with EndObject().
Writes dictionary values, method assumes that dictionary already started
with one of BeginDictXXX() methods.
Writes start of "xref" table.
Writes item of "xref" table.
Writes trailer of "xref" table.
PDF writer used to build PDF document content in linearized form.
Indicates whether objects should be processed as regular objects,
otherwise they will be NOT written but added to the list.
For internal use.
Indicates whether object should be ***rewritten*** when document saved with incremental updates.
This flag is analyzed only when is true and
is not empty, i.e. object was loaded from PDF indirect object.
Indicates whether an object is empty and should not be written to PDF content.
Gets or sets the object's ID in parsed PDF content.
Gets or sets the object's ID in generated PDF content.
See comments for .
See comments for .
Writes PDF object representing this .
NOTE 1. When this method is called contains correct value.
NOTE 2. Nested objects
should NOT be written in this method, they should be enumerated with method.
Enumerates all nested objects.
For internal use.
Base implementation of interface.
The object's ID in parsed PDF document, can be empty it means that object was NOT loaded from indirect PDF object.
The object's ID in generated PDF document, generated automatically.
See comments for .
Writes PDF object representing this .
NOTE 1. When this method is called contains correct value.
NOTE 2. Nested objects
should NOT be written in this method,
they should be enumerated with method.
Enumerates all nested objects.
See comments for .
Indicates whether object should be ***rewritten*** when document saved with incremental updates.
This flag is used only when is true and
is not empty, i.e. object was loaded from PDF indirect object.
Indicates whether an object is empty and should not be written to PDF content.
For internal use.
Objects implementing this interface serialized to PDF as indirect objects or as
PDF value (number, dict, array etc) depending on object's state.
has special methods to write such objects.
Writes PDF value representing an object,
called if returns null.
Gets interface used to write object as indirect object.
For internal use.
Base implementation of interface.
Writes PDF value representing this object.
Gets interface used when object serialized as indirect PDF object.
Base class for PDF writers: , .
Gets the used to encrypt strings and streams.
By default returns m_Doc.Security.EncryptHandler.
Writes the float.
Writes the double.
Writes long.
Writes uint.
Writes integer.
Writes name value as "/name".
Writes a string as PDF string i.e. like (BlaBla).
If string contains chars with code greater than 126 it encoded as unicode.
String is encrypted if encryption specified for document.
Writes string already encoded as byte array, string is written as PDF string i.e. like (BlaBla).
String is encoded if encoding specified for document.
Writes string value in format <FF01>.
Gets the object owning this .
Gets a structure defining ID of PDF object currently written to the stream,
used to encrypt strings.
By default returns .
Gets the underlying stream.
Writes delimiter (space) if is true, resets .
Flushes all data to the underlying stream.
For internal use only. Gets the Position on the page stream.
Writes content of specified stream.
Writes specified count of bytes to the stream.
Writes string, string is written as PDF string i.e. like (BlaBla).
If string contains chars with code greater than 126 it encoded as unicode.
String is encoded if encoding specified for document.
Writes string already encoded as byte array, string is written as PDF string i.e. like (BlaBla).
String is encoded if encoding specified for document.
Writes string value in format <FF01>.
Writes NULL value.
Writes string using ASCII encoding, each char converted to byte as (byte)s[i].
Writes string using ASCII encoding, each char converted to byte as (byte)s[i],
with padding, spaces added at right.
Writes bytes array.
Writes single byte.
Writes the uint value.
Writes the float value.
Writes the double value.
Writes the nullable float value.
Writes the long value.
Writes placeholder to the PDF stream and returns its offset.
Writes the integer value.
Writes bool value.
Writes the matrix.
Writes the color value as sequence of 3 numbers R, G, B. NOTE! alpha channel is NOT written.
Writes name value as "/name".
Writes rect value.
Writes offsets value.
Writes point value.
Converts specified float to string which can be written to PDF stream.
Converts specified double to string which can be written to PDF stream.
Convertes specified long to string which can be written to PDF stream.
Convertes specified uint to string which can be written to PDF stream.
Convertes specified integer to string which can be written to PDF stream.
white run lengths
black run lengths
get a byte of pixels
private static void setPixel(int col, int row, FastBitSet data, int value) {
if (value == 1)
data.set(row, col);
else
data.clear(row, col);
}/*
Faster BitSet implementation. Does not perfom any bound checks.
@author Boris von Loesch
Constructs a JBIGException whithout a message.
Constructs a JBIGException with a message.
A message describing the exception