Skip to content

PDFAnnotation

Namespace: O2S.Components.PDF4NET.Annotations

Defines an abstract PDF annotation.

public class PDFAnnotation

Inheritance Object → PDFAnnotation

Properties

Contents

Gets or sets the annotation contents.

public string Contents { get; set; }

Property Value

String
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.


CosDictionary

Gets the COS dictionary asssociated with this object.

public PDFCosDictionary CosDictionary { get; }

Property Value

PDFCosDictionary
The internal COS dictionary.

Remarks

Incorrect manipulation of the information in the COS dictionary can lead to invalid PDF files.


CreationDate

Gets or sets the annotation creation date.

public DateTime CreationDate { get; set; }

Property Value

DateTime
The date and time when the annotation was created.


DisplayRectangle

Gets or sets the visual rectangle of this annotation object.

public PDFDisplayRectangle DisplayRectangle { get; set; }

Property Value

PDFDisplayRectangle
A PDFDisplayRectangle that represents the position and size of the annotation.

Remarks

The visual rectangle is relative to the top left corner of the page and can be set only after the annotation has been added to the page.


Guid

Gets the annotation GUID.

public Guid Guid { get; }

Property Value

Guid
A Guid object that uniquely identifies the annotation.


HasStandardAppearance

Gets a flag indicating whether the annotation appearance has been created by the library internally or it has been set externally.

public bool HasStandardAppearance { get; }

Property Value

Boolean


Hidden

Gets or sets a value indicating whether to display the annotation or not.

public bool Hidden { get; set; }

Property Value

Boolean
If true, do not display or print the annotation or allow it to interact with the user.


ID

Gets or sets the annotation ID.

public string ID { get; set; }

Property Value

String
A unique value representing the ID


Invisible

Gets or sets a value indicating whether the annotation should be displayed if it does not belong to one of the standard annotation types.

public bool Invisible { get; set; }

Property Value

Boolean


Locked

Gets or sets a value indicating whether the annotation should be modified.

public bool Locked { get; set; }

Property Value

Boolean
If true, 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.


LockedContents

Gets or sets a value indicating whether the annotation contents should be modified.

public bool LockedContents { get; set; }

Property Value

Boolean
If true, 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.


ModifiedDate

Gets or sets the annotation modified date.

public DateTime ModifiedDate { get; set; }

Property Value

DateTime
The date and time when the annotation was most recently modified.


MouseDown

Gets or sets the mouse down action.

public PDFAction MouseDown { get; set; }

Property Value

PDFAction
An action to be performed when the mouse button is pressed inside the annotation's active area.


MouseEnter

Gets or sets the mouse enter action.

public PDFAction MouseEnter { get; set; }

Property Value

PDFAction
An action to be performed when the cursor enters the annotation's active area.


MouseLeave

Gets or sets the mouse leave action.

public PDFAction MouseLeave { get; set; }

Property Value

PDFAction
An action to be performed when the cursor exits the annotation's active area.


MouseUp

Gets or sets the mouse up action.

public PDFAction MouseUp { get; set; }

Property Value

PDFAction
An action to be performed when the mouse button is released inside the annotation's active area.


NormalAppearance

Gets or sets the annotation normal appearance.

public PDFAnnotationAppearance NormalAppearance { get; set; }

Property Value

PDFAnnotationAppearance
A PDFAnnotationAppearance specifying how the annotation is presented visually on the page.


NoRotate

Gets or sets a value indicating whether the annotation should be rotated when the page is rotated.

public bool NoRotate { get; set; }

Property Value

Boolean
If true, do not rotate the annotation's appearance to match the rotation of the page.


NoView

Gets or sets a value indicating whether the annotation should be displayed.

public bool NoView { get; set; }

Property Value

Boolean
If true, do not display the annotation on the screen or allow it to interact with the user. The annotation may be printed (depending on the PDFAnnotation.Print property), but should be considered hidden for the purposes of onscreen display and user interaction.


NoZoom

Gets or sets a value indicating whether the annotation should be scaled to current page zoom.

public bool NoZoom { get; set; }

Property Value

Boolean
If true, do not scale the annotation's appearance to match the zoom of the page.


Page

Gets the annotation page.

public PDFPage Page { get; internal set; }

Property Value

PDFPage
A PDFPage that represents the page contianing the annotation.


PageClose

Gets or sets the page close action.

public PDFAction PageClose { get; set; }

Property Value

PDFAction
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).


PageInvisible

Gets or sets the page invisible action.

public PDFAction PageInvisible { get; set; }

Property Value

PDFAction
An action to be performed when the page containing the annotation is no longer visible in the viewer application's user interface.


PageOpen

Gets or sets the page open action.

public PDFAction PageOpen { get; set; }

Property Value

PDFAction
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).


PageVisible

Gets or sets the page visible action.

public PDFAction PageVisible { get; set; }

Property Value

PDFAction
An action to be performed when the page containing the annotation becomes visible in the viewer application's user interface.


Gets or sets the associated popup annotation.

public PDFPopupAnnotation Popup { get; set; }

Property Value

PDFPopupAnnotation
A PDFPopupAnnotation used for editing the content of the annotation.


Print

Gets or sets a value indicating whether the annotation should be printed.

public bool Print { get; set; }

Property Value

Boolean
If true, print the annotation when the page is printed. If clear, never print the annotation, regardless of whether it is displayed on the screen.


ReadOnly

Gets or sets a value indicating whether the annotation is read only.

public bool ReadOnly { get; set; }

Property Value

Boolean
If true, do not allow the annotation to interact with the user.


Rotation

Gets or sets the annotation rotation angle.

public int Rotation { get; set; }

Property Value

Int32
The annotation rotation angle in degrees.

Exceptions

ArgumentOutOfRangeException
Thrown when the value being set is not one of the accepted values.

Remarks

The accepted values for this property are 0, 90, 180 and 270 degrees.


ToggleNoView

Gets or sets a value indicating whether the interpretation of NoView property should be reversed.

public bool ToggleNoView { get; set; }

Property Value

Boolean
If true, invert the interpretation of the NoView property for certain events.


Type

Gets the type of the annotation.

public PDFAnnotationType Type { get; }

Property Value

PDFAnnotationType
A PDFAnnotationType that represents the annotation type.


Methods

BeginInit()

Signals the start of the initialization of annotation's properties.

public void BeginInit()

Remarks

The annotation appearance is not updated while properties are initialized. When initialization is completed, call PDFAnnotation.EndInit() to signal the end of initialization and update the annotation appearance.


CreateAppearance(Boolean)

Creates the visual appearance for the annotation.

public void CreateAppearance(bool overrideExisting)

Parameters

overrideExisting Boolean
If true the existing appearance is overriden with the newly created one.

Remarks

The library creates visual appearance for annotations by default. Call this method if you want to create the appearance for annotations that do not have it, usually on pages imported from external documents.


EndInit()

Signals the end of the initialization of annotation's properties.

public void EndInit()

Remarks

The annotation appearance is updated when the initialization ends.


Flatten()

Merges the annotation appearance with the page content stream.

public void Flatten()

Remarks

The annotation normal appearance is merged with the page content stream and the annotation is destroyed. After calling this method the annotation object is in an invalid state and cannot be used any longer.


Flatten(PDFStructureElement)

Merges the annotation appearance with the page content stream and sets the result as content item for the given structure element.

public void Flatten(PDFStructureElement structureElement)

Parameters

structureElement PDFStructureElement
The structure element that is associated with the annotation appearance.

Remarks

The annotation normal appearance is merged with the page content stream and the annotation is destroyed. After calling this method the annotation object is in an invalid state and cannot be used any longer.