PDFのページを配列に保存してuipageviewcontrollerに表示するにはどうすればよいですか。
1 に答える
3
多分これは役立つでしょう。
このコードは2つのことを前提としています。
- Quartzフレームワークをプロジェクトに追加しました。
- PDFドキュメントの場所を説明するNSURLオブジェクトがあります。
まず、PDFドキュメントのコンテンツで初期化されたPDFDocumentオブジェクトを作成します。
// 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が必要だったので、NSMutableArrayのコンテンツからNSArrayを作成します。
// Convert the NSMutableArray to an NSArray, then return it.
NSArray * pageArray = [NSArray arrayWithArray:mutablePageArray];
いくつかの注意:私はまだObjective-Cに慣れていないので、このコードで実行したいメモリ管理がいくつかあるでしょう。また、これはMac OSの観点からのものであることに注意してください。ただし、コードには本質的にMacのみが含まれているとは思いません。少なくとも、それはあなたを正しい方向に向けさせるべきです。
于 2012-11-01T13:16:37.147 に答える