# TextRun Class

> Represents one or more contiguous characters in a text object.

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

```csharp
class TextRun : Element
```

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

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

## Description

Represents one or more contiguous characters in a text object.

All the characters contained within a text run have the same style, color, font, and size.

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

**Uses types:** [`Clip`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Clip.md), [`Element`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Element.md), [`ElementCloneFlags`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/enum/ElementCloneFlags.md), [`Font`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Font.md), [`GraphicState`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/GraphicState.md), [`Matrix`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Matrix.md), [`Rect`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Rect.md), [`TextRun`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/TextRun.md), [`TextState`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/TextState.md)

## Constructors

### TextRun

```csharp
Datalogics.PDFL.TextRun.TextRun(string text, Font font, GraphicState gstate, TextState tstate, Matrix matrix)
```

*constructor*

**Parameters**

- `text` (`string`): The text content for this run.
- `font` ([`Font`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Font.md)): The font to use for rendering the text.
- `gstate` ([`GraphicState`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/GraphicState.md)): The graphic state (colors, line width, etc.) for this text run.
- `tstate` ([`TextState`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/TextState.md)): The text state (character spacing, word spacing, font size, etc.) for this text run.
- `matrix` ([`Matrix`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Matrix.md)): The transformation matrix positioning this text run in user space.

Creates a new TextRun with the specified text, font, graphic state, text state, and matrix.

## Properties

### Advance

```csharp
double Datalogics.PDFL.TextRun.Advance { get; }
```

### BoundingBox

```csharp
Rect Datalogics.PDFL.Element.BoundingBox { get; }
```

### Clip

```csharp
Clip Datalogics.PDFL.Element.Clip { get; set; }
```

### Font

```csharp
Font Datalogics.PDFL.TextRun.Font { get; set; }
```

### GraphicState

```csharp
GraphicState Datalogics.PDFL.TextRun.GraphicState { get; set; }
```

### Matrix

```csharp
Matrix Datalogics.PDFL.Element.Matrix { get; set; }
```

### RawText

```csharp
System.Byte [] Datalogics.PDFL.TextRun.RawText { get; }
```

### Text

```csharp
string Datalogics.PDFL.TextRun.Text { get; set; }
```

### TextState

```csharp
TextState Datalogics.PDFL.TextRun.TextState { get; }
```

## Methods

### Clone

```csharp
Element Datalogics.PDFL.Element.Clone()
```

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

The copied element.

Makes a copy of the element.

Make a copy of an element to obtain a new element that has a distinct set of attributes.

Note: TextRun objects may not be cloned.

### Clone

```csharp
Element Datalogics.PDFL.Element.Clone(ElementCloneFlags cloneFlags)
```

**Parameters**

- `cloneFlags` ([`ElementCloneFlags`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/enum/ElementCloneFlags.md)): Flags that modify the cloning operation.

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

The copied element.

Makes a copy of the element.

Make a copy of an element to obtain a new element that has a distinct set of attributes.

Note: TextRun objects may not be cloned.

### Dispose

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

**Returns:** `void`

### Rotate

```csharp
void Datalogics.PDFL.Element.Rotate(double theta)
```

**Parameters**

- `theta` (`double`): The rotation angle in degrees.

**Returns:** `void`

Rotate an element by theta degrees counterclockwise using the matrix [ cos T sin T -sin T cos T 0 0 ].

### Scale

```csharp
void Datalogics.PDFL.Element.Scale(double sx, double sy)
```

**Parameters**

- `sx` (`double`): The horizontal scale factor.
- `sy` (`double`): The vertical scale factor.

**Returns:** `void`

Scale an element by (sx,sy) units using the matrix [ sx 0 0 sy 0 0 ].

### Translate

```csharp
void Datalogics.PDFL.Element.Translate(double tx, double ty)
```

**Parameters**

- `tx` (`double`): The horizontal translation distance in user space units.
- `ty` (`double`): The vertical translation distance in user space units.

**Returns:** `void`

Translate an element by (tx,ty) units using the matrix [ 1 0 0 1 tx ty ].
