Skip to content

# PDFVisualFileAttachmentAnnotation

Namespace: O2S.Components.PDF4NET.View.Annotations

Defines a text annotation that is displayed in a PDFDocumentView control.

    public class PDFVisualFileAttachmentAnnotation : PDFVisualMarkupAnnotation

Inheritance Object → PDFVisualAnnotation → PDFVisualMarkupAnnotation → PDFVisualFileAttachmentAnnotation

## Constructors

### PDFVisualFileAttachmentAnnotation(PDFFileAttachmentAnnotation)

Initializes a new PDFVisualFileAttachmentAnnotation object.

    public PDFVisualFileAttachmentAnnotation(PDFFileAttachmentAnnotation annotation)

Parameters

`annotation` PDFFileAttachmentAnnotation
The underlying PDF annotation.

## Properties

### Annotation

Gets the underlying PDF annotation.

    public PDFAnnotation Annotation { get; }

Property Value

PDFAnnotation
A PDF annotation.

### Description

Gets or sets the file description.

    public string Description { get; set; }

Property Value

String
The description of the file attachment.

### DisplayRectangle

Gets or sets the visual rectangle of this annotation.

    public PDFDisplayRectangle DisplayRectangle { get; set; }

Property Value

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

Remarks

The visual rectangle is relative to the top left corner of the page.

### FileName

Gets or sets the name of the file attachment.

    public string FileName { get; set; }

Property Value

String
The file name associated with the content stored in PDFVisualFileAttachmentAnnotation.Payload property.

### Icon

Gets or sets the text annotation icon name.

    public string Icon { get; set; }

Property Value

String
The name of the text annotation icon.

Exceptions

ArgumentNullException
Thrown when the property value is null or empty.

Remarks

The icon name defines the annotation's visual appearance. The library supports a predefined set of names defined in the class for which standard appearance is created. When a custom name is used, a custom appearance must also be provided.

### InteriorColor

Gets or sets the annotation interior color.

    public PDFColor InteriorColor { get; set; }

Property Value

PDFColor
A specifying the interior color with which to fill the annotation's icon interior.

Exceptions

ArgumentOutOfRangeException
Thrown when the property is set to a color other than Gray, RGB or CMYK.

### Location

Gets or sets the annotation location on the page.

    public PDFPoint Location { get; set; }

Property Value

PDFPoint
The position of annotation's top left corner on the parent page.

Exceptions

ArgumentNullException
Thrown when the property is set to null.

### NormalAppearance

Gets or sets the annotation normal appearance.

    public PDFAnnotationAppearance NormalAppearance { get; set; }

Property Value

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

### Opacity

Gets or sets the annotation opacity.

    public double Opacity { get; set; }

Property Value

Double
A value in the range [0, 1] that represents the constant opacity value to be used in painting the annotation.

### OutlineColor

Gets or sets the annotation outline color.

    public PDFColor OutlineColor { get; set; }

Property Value

PDFColor
A specifying the outline color with which to stroke the annotation's icon outlines.

Exceptions

ArgumentOutOfRangeException
Thrown when the property is set to a color other than Gray, RGB or CMYK.

### Payload

Gets or sets the content of the file attachment.

    public Byte[] Payload { get; set; }

Property Value

Byte[]
The content of the file attachment.

### Size

Gets the file attachment size.

    public int Size { get; }

Property Value

Int32
The size of the file attachment.

### Tag

Gets or sets an object that contains user-defined data associated with the annotation.

    public object Tag { get; set; }

Property Value

Object

Remarks

This property can be used to store any custom information relevant to the annotation at runtime. The value is not used by the annotation itself and is intended solely for application-specific data.
NOTE: The value of this property is not persisted in the PDF file.

### VisualPage

Gets the page that owns the anotation.

    public PDFVisualPage VisualPage { get; internal set; }

Property Value

PDFVisualPage
The PDFVisualPage that owns the annotation.