Как реализовать PDF-ридер без использования UIWebView в iPad - PullRequest
2 голосов
/ 03 июня 2010

Как мы можем реализовать программу чтения PDF для iPad без использования UIWebView? Нужна опция для добавления жестов для смены страницы касанием руки. Как я могу это сделать? Какие классы должны быть реализованы для этой цели.

Обновление:

Я получил что-то вроде руководства по программированию Quartz 2D для PDF-документов. Но я не могу определить, где я должен разместить контекст PDF. Должен ли я поместить его в UIView?

См .: http://developer.apple.com/iphone/library/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/dq_pdf/dq_pdf.html#//apple_ref/doc/uid/TP30001066-CH214-TPXREF109

Ответы [ 2 ]

1 голос
/ 03 июня 2010

CGPDFDocument состоит из серии страниц. Если вы создаете пользовательский UIView с членом CGPDFPageRef, вы можете использовать его для рисования страницы.

@interface ExamplePDFPageView : UIView
    CGPDFPageRef page;
@end

@implementation ExamplePDFPageView
-(void) drawRect:(CGRect)inFrame {
    CGContextDrawPDFPage( UIGraphicsGetCurrentContext() , page );
}
@end

Это основной строительный блок, из которого вы строите программу для чтения PDF. Вы можете иметь представление, владеющее целым документом, а не только одной страницей, но рисование выполняется для каждой страницы. Я обычно позволяю некоторому классу контроллера владеть документом и назначать страницы представлениям.

Для жестов добавьте в представление UISwipeGestureRecognizer или другой распознаватель жестов.

0 голосов
/ 02 ноября 2010

Прочитайте "Руководство по программированию в Quartz 2D" и выполните поиск функций CGPDF ... в документе XCode.

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