LinkAnnotation Class Documentation

class LinkAnnotation : Annotation

Namespace:Datalogics::PDFL

Inherits from:
Annotation

Detailed Description

A link annotation, which features an embedded hyperlink.

Referenced by

Constructor & Destructor Documentation

LinkAnnotation

LinkAnnotation(Page page, Rect initialRect)

Parameters

page: Page

The page to which the LinkAnnotation is added.

initialRect: Rect

A rectangle specifying the annotation's bounds, specified in user space coordinates.

Create a new LinkAnnotation at the end of a page's annotation array. To create a LinkAnnotation and place it elsewhere in the page's annotation array, use the version of the constructor that takes an array position.

LinkAnnotation

LinkAnnotation(Page page, Rect initialRect, int addAfter)

Parameters

page: Page

The page to which the annotation is added.

initialRect: Rect

A rectangle specifying the annotation's bounds, specified in user space coordinates.

addAfter: int

Where to add the annotation in the page's annotation array. To add the annotation to the end of the array, pass a value of -2 or use the alternate version of this constructor that does not take an index (this is generally what you should do unless you have a need to place the annotation at a special location in the array). Passing a value of -1 adds the annotation to the beginning of the array. Passing other negative values produces undefined results.

Create a new LinkAnnotation at a specific index in the page's annotation array.

Property Documentation

Action

Action Action[get, set]

The Action object for this link.

Note that setting the Action will wipe out the Link's Destination member a link annotation cannot have both members.

AnnotationFeatureLevel

double AnnotationFeatureLevel[get, set]

The minimum PDF version necessary to support the features used in this annotation.

BorderStyle

string BorderStyle[get, set]

The border style.

Can be one of:

• S - Solid

• D - Dashed. The dash pattern is specified as an array (see DashPattern)

• B - Beveled

• I - Inset

• U - Underline

Other border styles may be defined in the future. Default is "S"

BorderStyleDashPattern

System.Collections.Generic.IList< System.Double > BorderStyleDashPattern[get, set]

An array defining a pattern of dashes and gaps to be used in drawing a dashed border (border style D).

The dash array is a series of numbers that specify the lengths of alternating dashes and gaps. Lengths must be nonnegative, and are expressed in user space units.

Default value is [3]

BorderStyleWidth

double BorderStyleWidth[get, set]

The border width in points.

If this value is 0, no border is drawn. The default is 1.0.

Color

Color Color[get, set]

The color of the annotation.

Contents

string Contents[get, set]

The text contents of the annotation.

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.

Destination

ViewDestination Destination[get, set]

The Destination for this link.

Note that setting the Destination will wipe out the Link's Action member a link annotation cannot have both members.

Flags

AnnotationFlags Flags[get, set]

The flags for the annotation.

Highlight

HighlightStyle Highlight[get, set]

The HighlightStyle for this link.

InteriorColor

Color InteriorColor[get, set]

The interior color with which to fill the annotation's rectangle or circle.

The color of the border itself can be retrieved from Annotation.Color.

NormalAppearance

Form NormalAppearance[get, set]

The normal appearance of the annotation, represented as a Form XObject.

Opacity

double Opacity[get, set]

The constant opacity value used in painting a Markup annotation.

Opacity is a range from 0.0 (fully transparent) to 1.0 (fully opaque).

OptionalContentMembershipDict

OptionalContentMembershipDict OptionalContentMembershipDict[get, set]

The OptionalContentMembershipDict property for this Annotation.

Setting this property will attach the Annotation to an OptionalContentMembershipDict; it will then be associated with the OptionalContentGroups and be subject to the VisibilityPolicy and VisibilityExpression of that MembershipDict.

By setting this property to null, the Annotation is detached from any OptionalContentMembershipDict.

PDFDict

PDFDict PDFDict[get]

The underlying PDF dictionary for this annotation.

Retrieves the PDFDict representation of this annotation object.

Rect

Rect Rect[get, set]

The size and location of the annotation on its page.

Subtype

string Subtype[get]

The annotation's subtype.

Title

string Title[get, set]

The title of the annotation.

Member Function Documentation

CopyTo

LinkAnnotation CopyTo(Page destination)

Parameters

destination: Page

the page to copy the annotation to. The page may be in the same document as the source annotation or in a different document.

Returns:

LinkAnnotation

the annotation created on the destination page.

Copy a LinkAnnotation to the specified page. The annotation will be centered on the page. To center the annotation at a specific point, use the version of this method that accepts a Point.

This creates a copy of the original LinkAnnotation and puts the copy in the destination page's annotation dictionary. Structural content information associated with the source annotation will not be present in the copy. An exception will be thrown if the annotation cannot be copied to the specified page.

Note: If copying LinkAnnotations between pages in different documents, the source annotation may have a ViewDestination that's invalid in the destiantion document or an Action referring to a ViewDestination that's invalid in the destination document. In these cases, an exception will be thrown.

CopyTo

LinkAnnotation CopyTo(Page destination, Point centerPoint)

Parameters

destination: Page

the page to copy the annotation to. The page may be in the same document as the source annotation or in a different document.

centerPoint: Point

the point to center the annotation on.

Returns:

LinkAnnotation

the annotation created on the destination page.

Copy a LinkAnnotation to the specified page and center the annotation on the specified point.

This creates a copy of the original LinkAnnotation and puts the copy in the destination page's annotation dictionary. Structural content information associated with the source annotation will not be present in the copy. An exception will be thrown if the annotation cannot be copied to the specified page.

Note: If copying LinkAnnotations between pages in different documents, the source annotation may have a ViewDestination that's invalid in the destiantion document or an Action referring to a ViewDestination that's invalid in the destination document. In these cases, an exception will be thrown.

Dispose

void Dispose()

Returns:

void

Equals

override bool Equals(object obj)

Parameters

obj: object

Returns:

override bool

GenerateAppearance

override Form GenerateAppearance()

Returns:

override Form

A new Form containing the generated appearance, or null if the appearance could not be generated (for example, due to an invalid border style).

Generate a new appearance stream with the current annotation properties.

The resulting Form can then be used to set the annotation's appearance, such as by calling SetNormalAppearance.

HasRichTextData

bool HasRichTextData()

Returns:

bool

true if the annotation contains Rich Text String content.

Checks the annotation for Rich Text String content (PDFReference 1.7 Section 8.6.2). Annotations that contain Rich Text String content and do not have a normal appearance set will not be visible when rendering the page.

IsCurrentlyVisible

bool IsCurrentlyVisible(OptionalContentContext occ)

Parameters

occ: OptionalContentContext

The optional content context in which to check visibility.

Returns:

bool

true if the annotation is currently visible.

Tests whether an annotation is visible in a given optional content context, considering the current ON-OFF states of the optional-content groups in the optional-content dictionary (OCMD) and the dictionary's visibility policy.

If the annotation occurs more than once within the content, this method only checks the visibility of the first occurrence of the annotation.

This method determines visibility without considering the visbility of the Content object that the annotation belongs to. To determine the visibility of an annotation while taking the Content's visibility into consideration, use the alternate version of this method.

ToString

override string ToString()

Returns:

override string

A string describing this annotation, including its type and rectangle.

Returns a string representation of this annotation.