PDFsharp-net6

PdfAnnotation

Namespace: PdfSharp.Pdf.Annotations

Represents the base class of all annotations.

public abstract class PdfAnnotation : PdfSharp.Pdf.PdfDictionary, System.ICloneable, System.Collections.Generic.IEnumerable`1[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[PdfSharp.Pdf.PdfItem, PdfSharp, Version=0.1.3.0, Culture=neutral, PublicKeyToken=null]], System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], System.Collections.IEnumerable

Inheritance ObjectPdfItemPdfObjectPdfDictionaryPdfAnnotation
Implements ICloneable, IEnumerable<KeyValuePair<String, PdfItem>>, IEnumerable

Properties

Border

Gets or sets the border-properties of this Annotation

public PdfAnnotationBorder Border { get; set; }

Property Value

PdfAnnotationBorder

Flags

Gets or sets the annotation flags of this instance.

public PdfAnnotationFlags Flags { get; set; }

Property Value

PdfAnnotationFlags

Parent

Gets or sets the PdfAnnotations object that this annotation belongs to.

public PdfAnnotations Parent { get; set; }

Property Value

PdfAnnotations

Rectangle

Gets or sets the annotation rectangle, defining the location of the annotation on the page in default user space units.

public PdfRectangle Rectangle { get; set; }

Property Value

PdfRectangle

Page

Gets or sets the page for this Annotation

public PdfPage Page { get; set; }

Property Value

PdfPage

Title

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.

public string Title { get; set; }

Property Value

String

Subject

Gets or sets text representing a short description of the subject being addressed by the annotation.

public string Subject { get; set; }

Property Value

String

Contents

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.

public string Contents { get; set; }

Property Value

String

Color

Gets or sets the color representing the components of the annotation. If the color has an alpha value other than 1, it is ignored. Use property Opacity to get or set the opacity of an annotation.

public XColor Color { get; set; }

Property Value

XColor

Opacity

Gets or sets the constant opacity value to be used in painting the annotation. This value applies to all visible elements of the annotation in its closed state (including its background and border) but not to the popup window that appears when the annotation is opened.

public double Opacity { get; set; }

Property Value

Double

Elements

Gets the dictionary containing the elements of this dictionary.

public DictionaryElements Elements { get; }

Property Value

DictionaryElements

Stream

Gets or sets the PDF stream belonging to this dictionary. Returns null if the dictionary has no stream. To create the stream, call the CreateStream function.

public PdfStream Stream { get; set; }

Property Value

PdfStream

Owner

Gets the PdfDocument this object belongs to.

public PdfDocument Owner { get; }

Property Value

PdfDocument

IsIndirect

Indicates whether the object is an indirect object.

public bool IsIndirect { get; }

Property Value

Boolean

Internals

Gets the PdfInternals object of this document, that grants access to some internal structures which are not part of the public interface of PdfDocument.

public PdfObjectInternals Internals { get; }

Property Value

PdfObjectInternals

Reference

Gets the indirect reference of this object. If the value is null, this object is a direct object.

public PdfReference Reference { get; internal set; }

Property Value

PdfReference

ReferenceNotNull

Gets the indirect reference of this object. Throws if it is null.

public PdfReference ReferenceNotNull { get; }

Property Value

PdfReference

Exceptions

InvalidOperationException
The indirect reference must be not null here.

Methods

Delete()

Caution

Use ‘Parent.Remove(this)’


Removes an annotation from the document PdfAnnotations.Remove(PdfAnnotation)

public void Delete()

PlaceOnPage(PdfPage, PdfRectangle)

Convenience-method that serves 2 purposes:
1: It allows setting the PdfAnnotation.Page and the PdfAnnotation.Rectangle with one call
2: It eases placing the annotation on the page by using the top-left of the page as the origin
(as opposed to the bottom-left, which would be the case when using PdfAnnotation.Rectangle directly)

public void PlaceOnPage(PdfPage page, PdfRectangle rectangle)

Parameters

page PdfPage
The PdfPage the annotation should be placed on

rectangle PdfRectangle
The rectangle of the Annotation. The position should be relative to the top-left of the page

DetermineBorder()

Determines the border-characteristics of this annotation
PdfReference 1.7, Chapter 12.5.2 and 12.5.4

protected void DetermineBorder()