Может быть, это поможет.
Этот код предполагает две вещи:
- Вы добавили платформу Quartz в свой проект, а
- У вас есть объект NSURL, описывающий местоположение документа PDF.
Сначала создайте объект PDFDocument, инициализированный с содержимым документа PDF:
// Make a new PDF document object with the contents of the file at the specified URL.
PDFDocument * myPDF = [[PDFDocument alloc]initWithURL:fileURL];
Затем спросите объект документа PDF, сколько страниц в нем содержится.
// Get the page count of the PDF document object.
NSUInteger pdfPageCount = [myPDF pageCount];
Используйте временный массив NSMutableArray для хранения страниц.
// Make a new mutable array to hold the document's pages.
NSMutableArray * mutablePageArray = [NSMutableArray arrayWithCapacity:pdfPageCount];
Используйте цикл for для пролистывания страниц документа PDF. Для каждого обхода цикла добавляйте страницу из индекса страницы документа PDF, который соответствует счетчику цикла.
// Add each page of the PDF document to the array.
for (int i=0; i < pdfPageCount; i++) {
[mutablePageArray addObject:[myPDF pageAtIndex:i]];
}
Наконец, поскольку вы хотели NSArray, создайте NSArray из содержимого NSMutableArray.
// Convert the NSMutableArray to an NSArray, then return it.
NSArray * pageArray = [NSArray arrayWithArray:mutablePageArray];
Некоторые заметки:
Я все еще новичок в Objective-C, так что, вероятно, в этом коде вы захотите кое-что сделать для управления памятью. Кроме того, обратите внимание, что это с точки зрения Mac OS, но я не думаю, что в коде есть что-то по сути только для Mac. По крайней мере, оно должно указывать вам правильное направление.