簡體   English   中英

iPhone SDK如何從PDF文件中檢索目錄?

[英]iPhone sdk how to retrieve the Table of Contents from PDF file?

我正在使用VFR閱讀器來顯示我的pdf。 我需要在單擊按鈕時提取目錄並將其顯示在表格視圖中,然后在點擊各頁面時應指向相應頁面。我用google搜索並獲得了這些鏈接

  1. 從pdf文件創建目錄
  2. http://mobile.tutsplus.com/tutorials/iphone/ios-sdk-adding-a-table-of-contents-to-an-ipad-reader/

我知道,要獲得目錄,我們必須使用“ CGPDFDocumentGetCatalog(pdf doc)”。 但是在我的讀者看來,“ CGPDFDocumentGetCatalog(pdf doc)”根本沒有被調用。 現在如何從我的pdf文件中提取目錄? 請幫助我。 我為此奮斗了一個星期。 提前致謝。

不幸的是,我認為您提到的兩個答案指向不同的實施策略,這些策略可能都是有效的,但有所不同。

第一個問題是您想要在應用程序中顯示的PDF文件的外觀。 PDF文件中沒有預定義的TOC對象,只有幾種不同的模擬方法。 兩種最常見的方式是:

A)書簽,這是一種將少量文本添加到結構樹的方法,其中每個文本都指向PDF文件中的特定位置。 這些書簽可以添加到設計應用程序中或更高版本(有特定的工具可以添加),並且可以實現任何結構。

B)您的PDF文件可能包含類似於書中經典TOC的內容,該內容基本上只是打開頁面上的文字,還可以選擇指向書中特定位置的超鏈接。

您引用的第二個鏈接顯示了如何創建用戶界面,您可以在其中顯示目錄。然后剩下的問題是弄清楚您想在目錄窗口中顯示哪些項目。 在您指向的第二個鏈接中,提供的解決方案是提供特定於一本書的硬編碼項目。 當然,當您只想顯示任何書籍時,這種方法不是很有用。

因此,剩下的問題是如何確定要顯示的項目以及它們鏈接到的位置。

如果您考慮以上我的可能性A):帶有書簽的PDF文件,則答案可能相對簡單。 您指向的答案1解釋了如何查看PDF文件中的不同結構-書簽就是這樣一種結構(在PDF規范的12.3節中定義: http : //www.adobe.com/content/dam/Adobe/ zh / devnet / acrobat / pdfs / PDF32000_2008.pdf

這意味着您可以使用此處顯示的技術來遍歷PDF文件中的不同對象,並找到每個書簽。 書簽將為您提供要顯示的文本以及單擊時文本應跳轉到的PDF文件中的實際位置。

如果您考慮以上我的可能性B):一個沒有書簽而是經典TOC的PDF文件,這將很難解決。 這樣的目錄只是一個或多個頁面上的文本,可以選擇帶有超鏈接。 當然,您可以嘗試在這些頁面上找到所有文本(如果您可以確定目錄的起始和結束位置),但是您還必須弄清楚該項目鏈接到的位置。 如果不涉及超鏈接,那將是一項艱巨的任務。

因此,您的第一個問題應該是要解決該問題的通用性。 您知道要顯示哪些PDF文件嗎? 您可以自己設計這些文件的目錄(如您的解決方案2所示)嗎? 如果不是,您可以確定所有PDF文件都包含書簽嗎? 這些問題的答案將在很大程度上決定您策略的其余部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM