---
title: "Extract text position from PDF on iOS | Nutrient SDK"
canonical_url: "https://www.nutrient.io/guides/ios/extraction/text-position/"
md_url: "https://www.nutrient.io/guides/ios/extraction/text-position.md"
last_updated: "2026-06-09T07:58:07.185Z"
description: "Learn to extract text positions from PDFs using Nutrient iOS SDK. Query glyphs, words, and text blocks with precision for enhanced document processing."
---

# Extract the text position from PDFs on iOS

Nutrient’s [`TextParser`](https://www.nutrient.io/api/ios/documentation/pspdfkit/textparser) API exposes various helpers and data structures for working with text. These include information about the location of a given text element at different granularities — at the glyph, word, or text block level.

To get a general overview of the available text APIs, check out the [parsing](https://www.nutrient.io/guides/ios/extraction/parse-content.md) guide.

All main Nutrient text classes expose a `frame` property that can be used to query the location of a given text element on a PDF page.

| Property            | Description                                                       |
| ------------------- | ----------------------------------------------------------------- |
| [`Glyph.frame`]     | Location of a single character (glyph, quad) on the PDF page.     |
| [`Word.frame`]      | Location of a single word (multiple glyphs) on the PDF page.      |
| [`TextBlock.frame`] | Location of a text block (e.g. a column of text) on the PDF page. |

Those properties return coordinates in normalized PDF coordinates. To learn more about coordinate spaces and how to convert them, see the [Coordinate Space Conversions](https://www.nutrient.io/guides/ios/faq/coordinate-spaces.md) guide.

Here’s an example that will output the individual positions for all words on the first page of a document:

```swift

let document =...

guard let parser = document.textParserForPage(at: 0) else {
    print("Parsing failed.")
    return controller
}

parser.words.forEach { word in
    print("The location of \(word.stringValue) is \(word.frame)")
}

```
---

## Related pages

- [PDF extraction library for iOS](/guides/ios/extraction.md)
- [Extract images from PDFs on iOS](/guides/ios/extraction/image-extraction.md)
- [Extract metadata from PDFs on iOS](/guides/ios/extraction/metadata.md)
- [Extract pages from PDFs on iOS](/guides/ios/extraction/page-extraction.md)
- [Parse PDF content on iOS](/guides/ios/extraction/parse-content.md)
- [Extract selected text from PDFs on iOS](/guides/ios/extraction/selected-text.md)
- [Extract text from PDFs on iOS](/guides/ios/features/text-extraction.md)

