Как я могу получить текст со страницы PDF? - PullRequest
3 голосов
/ 24 февраля 2012

Как я могу получить текст со страницы PDF в Objective-C?

Ответы [ 2 ]

5 голосов
/ 24 февраля 2012

Прежде всего - откажитесь от любого «быстрого и грязного» решения для разбора PDF - оно с треском провалится.Мой коллега потратил много времени, пытаясь правильно решить эту проблему в iOS.Его лучшие 3 (по качеству, по убыванию) опции:

  1. muPDF (http://www.mupdf.com/) Отличная библиотека - она ​​отлично справится с извлечением. Она лицензирована под GPL, хотя и является ограничителем для нашего шоупроприетарное приложение.
  2. Самодельное решение на основе CGPDFScanner . Краткое описание того, как это сделать , можно найти здесь . Основная проблема этого подхода - сам SDK.- API Apple для PDF строго (и сознательно подозреваю) ограничен. Например, вам придется размещать извлеченные текстовые блоки в 2D-пространстве, потому что PDF не гарантирует, что порядок рисования соответствует текстовому потоку, и iOS SDK не является немногоздесь полезно.
  3. Poppler (http://poppler.freedesktop.org/) - это нормально, но для извлечения текста это грубый эквивалент второго варианта (с множеством дополнительных зависимостей).

В Mac OS X может быть больше вариантов, но я их не знаю.

2 голосов
/ 24 февраля 2012

Это для iOS или OS X? Если для OS X вы можете просто создать рабочий процесс Automator для извлечения текста и вызвать этот рабочий процесс из вашего приложения. Для этого у Automator есть действие PDF «Извлечь PDF-текст». Фреймворк Automator позволяет вызывать действия автоматизатора из вашего приложения. И некоторый пример кода можно найти по адресу http://rogueamoeba.com/utm/2005/06/03/ (обратите внимание, что реальный код был обновлен для использования платформы Automator).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...