---
title: UITextDragPreviewRenderer
framework: uikit
role: symbol
role_heading: Class
path: uikit/uitextdragpreviewrenderer
---

# UITextDragPreviewRenderer

Renders previews of text dragged by the user.

## Declaration

```swift
@MainActor class UITextDragPreviewRenderer
```

## Overview

Overview Use this class to provide custom previews of dragged text that follows user interface guidelines and handles right-to-left text. You provide the layout manager and the range to render the preview. Subclasses may override the adjust(firstLineRect:bodyRect:lastLineRect:textOrigin:) method to modify the detected rectangles as needed during the drag operation.

## Topics

### Initializing a text drag preview renderer

- [init(layoutManager:range:)](uikit/uitextdragpreviewrenderer/init(layoutmanager:range:).md)
- [init(layoutManager:range:unifyRects:)](uikit/uitextdragpreviewrenderer/init(layoutmanager:range:unifyrects:).md)

### Getting and setting bounding rectangles

- [bodyRect](uikit/uitextdragpreviewrenderer/bodyrect.md)
- [firstLineRect](uikit/uitextdragpreviewrenderer/firstlinerect.md)
- [lastLineRect](uikit/uitextdragpreviewrenderer/lastlinerect.md)
- [adjust(firstLineRect:bodyRect:lastLineRect:textOrigin:)](uikit/uitextdragpreviewrenderer/adjust(firstlinerect:bodyrect:lastlinerect:textorigin:).md)

### Getting the preview image

- [image](uikit/uitextdragpreviewrenderer/image.md)

### Getting the layout manager

- [layoutManager](uikit/uitextdragpreviewrenderer/layoutmanager.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [Sendable](swift/sendable.md)

## See Also

### Drag content

- [UITextDragRequest](uikit/uitextdragrequest.md)
