# TextMarkupAnnotation Class

> Annotations that appears as highlighted content when added to a PDF file.

- Product: Adobe PDF Library 18
- Language: .NET
- Version: APDFL18.0.5PlusP2e
- HTML page: https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/TextMarkupAnnotation
- Version index: https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/llms.txt

```csharp
class TextMarkupAnnotation : Annotation
```

**Namespace:** `Datalogics::PDFL`

**Inherits from:** [`Annotation`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Annotation.md)

**Derived classes:** [`HighlightAnnotation`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/HighlightAnnotation.md), [`UnderlineAnnotation`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/UnderlineAnnotation.md)

## Description

Annotations that appears as highlighted content when added to a PDF file.

Text markup annotations appear as highlights, underlines, or strikeouts when added to a PDF document in a PDF Viewer. When the edited PDF file is opened the markups appear in a pop-up window containing the text of the associated note.

**Referenced by:** [`TextMarkupAnnotation`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/TextMarkupAnnotation.md)

**Uses types:** [`Annotation`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Annotation.md), [`AnnotationFlags`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/enum/AnnotationFlags.md), [`Color`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Color.md), [`Form`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Form.md), [`OptionalContentContext`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/OptionalContentContext.md), [`OptionalContentMembershipDict`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/OptionalContentMembershipDict.md), [`PDFDict`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/PDFDict.md), [`Quad`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Quad.md), [`Rect`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Rect.md), [`TextMarkupAnnotation`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/TextMarkupAnnotation.md)

## Properties

### AnnotationFeatureLevel

```csharp
double Datalogics.PDFL.Annotation.AnnotationFeatureLevel { get; set; }
```

### Color

```csharp
Color Datalogics.PDFL.Annotation.Color { get; set; }
```

### Contents

```csharp
string Datalogics.PDFL.Annotation.Contents { get; set; }
```

### Flags

```csharp
AnnotationFlags Datalogics.PDFL.Annotation.Flags { get; set; }
```

### InteriorColor

```csharp
Color Datalogics.PDFL.Annotation.InteriorColor { get; set; }
```

### NormalAppearance

```csharp
Form Datalogics.PDFL.Annotation.NormalAppearance { get; set; }
```

### Opacity

```csharp
double Datalogics.PDFL.Annotation.Opacity { get; set; }
```

### OptionalContentMembershipDict

```csharp
OptionalContentMembershipDict Datalogics.PDFL.Annotation.OptionalContentMembershipDict { get; set; }
```

### PDFDict

```csharp
PDFDict Datalogics.PDFL.Annotation.PDFDict { get; }
```

### Quads

```csharp
System.Collections.Generic.IList<Quad> Datalogics.PDFL.TextMarkupAnnotation.Quads { get; set; }
```

### Rect

```csharp
Rect Datalogics.PDFL.Annotation.Rect { get; set; }
```

### Subtype

```csharp
string Datalogics.PDFL.Annotation.Subtype { get; }
```

### Title

```csharp
string Datalogics.PDFL.Annotation.Title { get; set; }
```

## Methods

### Dispose

```csharp
void Datalogics.PDFL.Annotation.Dispose()
```

**Returns:** `void`

### Equals

```csharp
override bool Datalogics.PDFL.Annotation.Equals(object obj)
```

**Parameters**

- `obj` (`object`)

**Returns:** `override bool`

### GenerateAppearance

```csharp
virtual Form Datalogics.PDFL.Annotation.GenerateAppearance()
```

**Returns:** [`Form`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Form.md)

A Form representing the visual appearance, or null if the appearance could not be generated.

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.

### GetAnnotatedText

```csharp
string Datalogics.PDFL.TextMarkupAnnotation.GetAnnotatedText(bool splitLines)
```

**Parameters**

- `splitLines` (`bool`): If true, text corresponding to each quadrilateral will be separated by CRLF characters. If false, text corresponding to each quadrilateral will be separated by spaces.

**Returns:** `string`

The text marked by the annotation.

The text that is marked by the annotation. Marked text is defined as text which falls within one or more of the quadrilaterals specified by the annotation's QuadPoints entry. If the annotation marks partial words, only those portions of the word that are bounded within the QuadPoints array will be returned. If the annotation marks partial characters, the characters that fall partially within the annotation bounds may not be returned.

### HasRichTextData

```csharp
bool Datalogics.PDFL.Annotation.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

```csharp
bool Datalogics.PDFL.Annotation.IsCurrentlyVisible(OptionalContentContext occ)
```

**Parameters**

- `occ` ([`OptionalContentContext`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/OptionalContentContext.md)): 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

```csharp
override string Datalogics.PDFL.Annotation.ToString()
```

**Returns:** `override string`

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

Returns a string representation of this annotation.
