---
title: "Swift PDF viewer library: Fast and easy integration | Nutrient"
canonical_url: "https://www.nutrient.io/guides/ios/viewer/swift/"
md_url: "https://www.nutrient.io/guides/ios/viewer/swift.md"
last_updated: "2026-05-30T02:20:01.337Z"
description: "Start your free trial for unlimited access and expert support. for Nutrient iOS SDK."
---

# Swift PDF viewer library

Nutrient iOS SDK includes a high-fidelity PDF rendering engine that’s fast, precise, and feature rich. It offers developers a way to quickly embed a highly configurable PDF viewer in any iOS application.

## Key capabilities

- **Customizable UI** — Hide or add buttons, and match your look and feel

- **Page modes and transition** — Single or double, multiple scroll modes

- **Thumbnails** — Resizable view shows page numbers or labels

- **Outline** — Supports all custom variants and PDF action types

- **Bookmarks** — Users can add, remove, and sort bookmarks

- **Dark mode** — Choose between bright and dark themes

- **Reader mode** — Reflow text to present it in a single-column view

- **PNG and JPG** — Open images in the viewer (in addition to PDFs)

- **Extendable** — Add annotation, signing, forms, and more

## PDF viewer guides

**[Page transition](https://www.nutrient.io/guides/ios/customizing-the-interface/document-presentation-options.md)**

How to configure page transition, scroll direction, and scroll mode

**[Page navigation](https://www.nutrient.io/guides/ios/getting-started/document-interactions.md)**

How to programmatically scroll to different pages

**[Reader View](https://www.nutrient.io/guides/ios/features/reader-view.md)**

How to reflow text for an easy-to-read, single-column view

**[Night appearance](https://www.nutrient.io/guides/ios/customizing-the-interface/appearance-mode-manager.md)**

How to render PDFs in color-correct night mode

**[Right-to-left](https://www.nutrient.io/guides/ios/miscellaneous/page-bindings.md)**

How to bind pages to the right edge for right-to-left scripts

**[Multiple windows](https://www.nutrient.io/guides/ios/features/multiple-windows.md)**

How to show documents in multiple windows

**[User interactions](https://www.nutrient.io/guides/ios/customizing-the-interface/handling-user-interactions.md)**

How to customize the way user interactions are handled

**[Text selection](https://www.nutrient.io/guides/ios/features/text-selection.md)**

How to configure text selection

**[Keyboard shortcuts](https://www.nutrient.io/guides/ios/features/keyboard-shortcuts.md)**

Learn about supported keyboard shortcuts

**[Trackpad and mouse](https://www.nutrient.io/guides/ios/features/trackpad-and-mouse-support.md)**

How to optimize your app for indirect input mechanisms

**[Zooming](https://www.nutrient.io/guides/ios/miscellaneous/zooming.md)**

How to programmatically manage the zoom scale

**[Drag and drop](https://www.nutrient.io/guides/ios/features/drag-and-drop.md)**

How to configure drag-and-drop interactions

**[Embedded files](https://www.nutrient.io/guides/ios/features/embedded-files.md)**

How to preview and open embedded files

**[View state](https://www.nutrient.io/guides/ios/view-management/store-load-view-state.md)**

Learn about concepts behind `PDFViewState` and how it’s used

**[Accessibility features](https://www.nutrient.io/guides/ios/viewer/accessibility/features.md)**

Learn how Nutrient supports various accessibility requirements

**[Text-to-speech](https://www.nutrient.io/guides/ios/features/text-to-speech.md)**

How to configure the text-to-speech feature

**[Rendering PDF pages](https://www.nutrient.io/guides/ios/getting-started/rendering-pdf-pages.md)**

How to render a page or part of a page as an image

**[Rendering PDF forms](https://www.nutrient.io/guides/ios/viewer/rendering/pdf-forms.md)**

How to disable form interactions

**[Coordinate space](https://www.nutrient.io/guides/ios/faq/coordinate-spaces.md)**

How to convert to and from the PDF coordinate space

**[Annotation rendering](https://www.nutrient.io/guides/ios/getting-started/rendering-annotations.md)**

How to render PDF annotations

**[Font rendering](https://www.nutrient.io/guides/ios/features/custom-fonts.md)**

How to configure custom fonts for rendering PDF documents

**[Image viewer](https://www.nutrient.io/guides/ios/viewer/images.md)**

How to display images in the viewer

**[PDF JavaScript support](https://www.nutrient.io/guides/ios/features/javascript.md)**

How to enable PDF JavaScript support

**[Permissions](https://www.nutrient.io/guides/ios/features/document-permissions.md)**

Learn about the document permissions that can be set


























**Call to Action**

Start your free trial for unlimited access and expert support.

[Learn More](https://www.nutrient.io/sdk/ios/getting-started.md)
---

## Related pages

- [Embedded files and PDF portfolio collections](/guides/ios/features/embedded-files.md)
- [Customizing page navigation in our iOS viewer](/guides/ios/getting-started/document-interactions.md)
- [Enhance your PDF workflow with JavaScript support](/guides/ios/features/javascript.md)
- [Configuring scroll directions and page transitions in our viewer](/guides/ios/customizing-the-interface/document-presentation-options.md)
- [iOS image viewer library](/guides/ios/viewer/images.md)
- [iOS PDF viewer library](/guides/ios/viewer.md)
- [Configure permissions for iOS PDF viewer](/guides/ios/features/document-permissions.md)
- [Troubleshooting](/guides/ios/viewer/troubleshooting.md)
- [visionOS AR/VR PDF viewer](/guides/ios/viewer/visionos.md)
- [Display PDFs with the view state on iOS](/guides/ios/view-management/store-load-view-state.md)

