> For the complete documentation index, see [llms.txt](https://docs.apryse.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.apryse.com/ios/samples/run-sample.md).

# Sample project for iOS PDF library

Discover Apryse for iOS with sample projects showcasing various features like PDF viewing, annotation, form filling, and more. Run sample projects using Xcode. Explore SDK Showcase app for interactive

Apryse for iOS ships with several samples projects, each containing examples that you could use in your project. The samples are included in the download package under the `Samples` folder. You can run any of the sample projects using Xcode.

## Phone Showcase

{% embed url="<https://appetize.io/embed/9euv7mcjttdpruqkmn8tca888m?device=iphone14pro&scale=85&screenOnly=true&autoplay=false&orientation=portrait&deviceColor=black&params=%7B%22feature%22:%22Home%22%7D>" %}

## Tablet Showcase

{% embed url="<https://appetize.io/embed/9euv7mcjttdpruqkmn8tca888m?device=ipadair2&scale=57&screenOnly=true&autoplay=false&orientation=landscape&deviceColor=black&params=%7B%22feature%22:%22Home%22%7D>" %}

The SDK Showcase app is presented as a list of samples with complementary information cards allowing for descriptions and simple interactions with the Apryse SDK. Each card also includes links to associated documentation and code samples so users can quickly access features for their own use.

### Key samples:

* [Viewer ](/ios/basic-operations/open/doc-view.md): View a PDF
* [Text search ](/ios/search/text.md): Search a PDF for text
* [Annotation toolbar ](/ios/annotation/annotation-toolbar-i.md): Annotate a PDF using various tools
* [Streaming ](/ios/viewer/view-online-pdfs.md): Stream only the PDF page being viewed
* [Progressive rendering](https://sdk.apryse.com/api/ios/Classes/PTPDFViewCtrl.html#/c:objc\(cs\)PTPDFViewCtrl\(im\)SetProgressiveRendering:withInitialDelay:withInterval:): Render each PDF layer as it loads
* [Fast rendering](https://sdk.apryse.com/api/ios/Classes/PTPDFViewCtrl.html#/c:objc\(cs\)PTPDFViewCtrl\(im\)SetupThumbnails:generate_at_runtime:use_disk_cache:thumb_max_side_length:max_abs_cache_size:max_perc_cache_size:): Render an embedded PDF thumbnail as it loads
* [UI customization ](/ios/annotation/disabling-tools.md): Enable or Disable elements of the UI toolbar
* [Form filling](https://sdk.apryse.com/api/ios/Classes/PTPDFViewCtrl.html#/c:objc\(cs\)PTPDFViewCtrl\(im\)SetHighlightFields:): Fill PDF forms
* [Reading mode ](/ios/viewer/view-mode.md#reflow): Reflow a PDF to HTML for easy reading
* [Password-protected documents](https://sdk.apryse.com/api/ios/Classes/PTPDFDoc.html#/c:objc\(cs\)PTPDFDoc\(im\)InitStdSecurityHandler:): Password lock a PDF for security
* ...and more

## Complete Reader app

This sample app uses the open source [`Tools`](/ios/annotation/overview.md) library to implement a full featured PDF reader and annotation app. It includes a file browser with the ability to search and manage files, as well as a recently opened file list.

### Features:

* [Multi-tab viewing](/ios/basic-operations/open/doc-view.md)
* [Annotation creation and form filling](/ios/annotation/create.md)
* [Annotation toolbar](/ios/annotation/annotation-toolbar-i.md)
* [Thumbnail slider](/ios/viewer/view-online-pdfs.md)
* [Annotation list](/ios/annotation/annotation-list-i.md)
* [Outline list](/ios/bookmarks/outline.md)
* [User bookmarks list](/ios/annotation/disabling-tools.md)
* [Page thumbnails browser](/ios/page-manipulation/thumbnails-view-i.md)
* [Reflow](/ios/viewer/view-mode.md#reflow)
* Auto saving
* [Localization](/ios/viewer/localization.md)

## PDFViewCtrlDemo

This sample app shows the use of PDFViewCtrl, the UIView that is used to present a PDF document to the user. This project uses the Tools framework, which allows PDFViewCtrl to annotate documents, select text, follow hyperlinks and fill forms. To annotate a document, long press anywhere on the document that does not contain text.

## Miscellaneous Samples

This app showcases the functionality of the Apryse SDK and includes the samples found on the [sample code](/ios/get-started/samples.md) page. You can inspect its source code to learn how to use some of the main classes and features of the SDK, or just run the sample and view the results.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.apryse.com/ios/samples/run-sample.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
