回答
我發現這與一點搜索。它看起來很有前途。
PDFMiner:http://www.unixuser.org/~euske/python/pdfminer/index.html
注:該工具是基於Python的,但你應該能夠通過shell訪問使用的工具。或者,您可能能夠從源代碼本身收集一些有用的信息,因爲該項目是開源的。
從網站:
dumppdf.py
dumppdf.py轉儲僞XML格式的PDF文件的內部內容。該程序主要用於調試目的,但也可以提取一些有意義的內容(如圖像)。
例子:
$ dumppdf.py -a foo.pdf (dump all the headers and contents, except stream objects) $ dumppdf.py -T foo.pdf (dump the table of contents) $ dumppdf.py -r -i6 foo.pdf > pic.jpeg (extract a JPEG image)
經過進一步調查,我可以找到一些非常有用的應用程序,這個工具,我自己! +1給予Yusuke Shinyama和PDFMiner團隊的其餘成員! – 2010-03-24 23:21:08
謝謝我會看看..但它是否會在XML內生成TOC ..現在我正在使用XPDF和PDF2SWF獲取內容:) 但是沒有TOC選項 – Chris 2010-03-25 02:51:33
我想我是不確定你在問什麼。第二個「示例」行聲稱專門將TOC轉儲爲XML文件,您可以以任何適合您的方式解析該文件。我自己並沒有使用這個工具,它聽起來像會完成你想要做的事情。 – 2010-03-25 14:38:44
我認爲看PHP's PDFLib將是一個非常好的開始。如果向下滾動,您將看到大量用戶發佈的解決方案,用於將PDF轉換爲HTML或PDF轉換爲文本。轉換後,一個相對簡單的匹配函數可以提取標記的TOC項並將它們放入一個數組中,然後您可以隨意操作。
This StackOverflow post也有一些更多的解決方案。
希望這會有所幫助。
我已經使用XPDF pdf2txt了......但是你會如何匹配這個? ToC通常是手工創建的......並且信息需要在pdf中的某處(因爲它們可以具有側面) – Chris 2010-03-25 02:52:31
TOC *應該*只能在人們沒有所需的專業人員時手動創建工具自動執行。如果自動完成,TOC中的項目會被標記爲書籤(我認爲這就是您所稱的「側面板」)並鏈接到他們的頁面,因此更容易匹配。如果它們是手工完成的,那麼它們與PDF中任何地方的任何其他文本塊都沒有區別,並且腳本能夠成功匹配它們幾乎是不可能的。 – 2010-03-25 20:37:08
或者,你可以使用MuPDF這是書面C.在apps/
子目錄相當輕巧,但完整的PDF實現你會發現一些工具,可以查看,導出並從PDF文件中提取信息。我比較喜歡MuPDF而不是xpdf,因爲它被積極維護並且具有更好的PDF支持。
否則,總是有Poppler這實際上是基於xpdf。開發人員將其代碼移植到C++。因此,它的表現比前任更差。與MuPDF相比,Poppler似乎具有稍微更多的功能,但作爲回報,代碼更加複雜。
爲了您的目的,儘管MuPDF應該足夠。您可以將apps/
中提供的示例代碼中的一個簡單應用程序拼湊在一起,該應用程序可以在不依賴外部應用程序的情況下提取所需的所有信息。
謝謝我也會試試這個^^ – Chris 2010-03-31 04:54:56
我試過dump.pdf -T
,但它在某些PDF文件上無效。
還有另一個來自MuPDF的工具,名爲mutool
,我剛剛發現。我不知道這是否比dump.pdf更好,但對PDF文件dump.pdf會產生錯誤。
這裏如何提取TOC與mutool
mutool show {your-pdf-file} outline
- 1. 無法提交「PDF」目錄
- 2. 提取目錄
- 3. 如何使用poppler提取pdf索引/目錄?
- 4. 循環訪問目錄以從多個pdf中提取頁面
- 5. Pdf代目錄
- 6. 目錄的Python的焦油提取不提取該目錄中的內容
- 7. 的iOS提取PDF
- 8. 目標C中提取pdf文本
- 9. 列出PDF的目錄
- 10. R:提取出的目錄的路徑
- 11. 無法獲取提取目錄IIS 7.5
- 12. 從PDF提取圖
- 13. 提取PDF文本
- 14. pdf文本提取
- 15. 提取PDF註釋
- 16. PDF數據提取
- 17. 提取PDF部分
- 18. PERL - 從目錄/子目錄/ ..中提取文件的問題?
- 19. 從目錄集中提取特定的目錄
- 20. 如何從目錄名稱中提取父目錄的名稱?
- 21. Poedit:無法加載提取的目錄
- 22. c#提取目錄下的zip文件
- 23. 提取Magento的事件從app目錄
- 24. 提取Mercurial中的某些目錄?
- 25. PHP Zip:提取目錄中的內容
- 26. 將jar提取到指定的目錄
- 27. 的NoClassDefFoundError MimeTypeException用PDF提取
- 28. iTextSharp的PDF文本提取
- 29. 從提取命令的DOS提取目錄
- 30. ServiceStack.Razor爲Content目錄中的文件夾提供靜態PDF
+1,我會很高興看到如何做到這一點。 – 2010-03-16 07:25:16
如果你想用第三方應用程序做到這一點,那麼我可以推薦[Debenu PDF Aerialist](http://www.debenu.com/products/desktop/debenu-pdf-aerialist/),它具有導出功能「目錄」。 – 2016-04-17 14:25:13