Библиотека просмотра / аннотирования PDF для iPhone? - PullRequest
9 голосов
/ 29 января 2010

В настоящее время я работаю над образовательным проектом, в котором я хотел бы добавить некоторые функции чтения PDF-файлов в приложение для iPhone. Я знаю, что можно добавить UIWebView и отобразить там PDF, однако я хотел бы добавить возможность показа номера страницы, кнопок «следующий», «предыдущий» и т. Д. Является ли CGPDFDocument направлением, в котором я должен идти, или есть лучшая (т.е. более функциональная) библиотека? Я осмотрелся вокруг, чтобы попытаться найти возможности CGPDFDocument, но, кроме ссылки на API, там мало что доступно.

Можно ли с этим аннотировать PDF?

Спасибо

JP

Ответы [ 3 ]

5 голосов
/ 08 февраля 2010

Вот хороший (рабочий) пример функций CGPDF: http://www.olivetoast.com/blog/2009/08/simple-uiscrollview-catiledlayer-pdf-example/

Он использует CATiledLayer + UIScrollView, он может не подходить для своего рода читателя, но он по-прежнему показывает, как загрузить и нарисовать документ PDF без UIWebView (что серьезно ограничивает ваши возможности).

Измените тип слоя обратно на слой, добавьте обработку страниц, используя CGPDFDocumentGetNumberOfPages, а затем CGPDFDocumentGetPage, и у вас есть довольно хороший читатель.

Я не знаю, как выполнять аннотации, я подозреваю, что вам понадобится ваша собственная структура данных поверх документа.

1 голос
/ 04 февраля 2012

Обновление: 04 февраля 2012

Проверьте этот проект, он с открытым исходным кодом и очень хорошо сделан. Я думаю, что это может быть отличной отправной точкой для вашего читателя PDF.

Проект:
http://www.vfr.org/

Источник:
https://github.com/vfr/Reader

0 голосов
/ 29 января 2010

Есть приложения для чтения PDF, они не поддерживают аннотации?

Другим углом может быть приложение iPhone для чтения / загрузки страниц (изображений) из Интернета, где можно добавить основные аннотации к ним (на основе изображения / слоя), эти координаты можно сохранить на сервере. Затем эти аннотации можно добавить программно в PDF-файл на сервере для загрузки?

...