0

PDFのページを配列に保存してuipageviewcontrollerに表示するにはどうすればよいですか。

4

1 に答える 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 に答える