我正在使用SWFTools和XPDF将PDF转换成图片、swf和文本,这些操作都是在一个PDF脚本中完成的。
但现在我想更进一步,尝试从PDF中获取目录(TOC),请问有没有可能提取这个信息?
dump.pdf -T
,但是在一些PDF文件上无法使用。mutool
,我刚刚发现。我不知道这是否比dump.pdf更好,但它可以处理dump.pdf报错的PDF文件。mutool show {your-pdf-file} outline
MuPDF
我通过一些搜索找到了这个,看起来很有前途。
PDFMiner: http://www.unixuser.org/~euske/python/pdfminer/index.html
注意:该工具基于Python,但您应该能够通过shell访问使用该工具。或者,由于该项目是开源的,您也可以从源代码本身中获取一些有用的信息。
网站上的信息:
dumppdf.py
dumppdf.py dumps the internal contents of a PDF file in pseudo-XML format. This program is primarily for debugging purposes, but it's also possible to extract some meaningful contents (such as images).
Examples:
$ 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)
dumppdf -T file.pdf | grep \<outline
可以生成一个漂亮易读的目录表格。(dumppdf -T file.pdf | grep -E '\<outline|pageno'
还可以同时列出页码) - Frédéric Grosshans我认为首先看看PHP的PDFLib会是一个很好的起点。如果你往下滚动,你会看到很多用户发布的解决方案,用于将PDF转换为HTML或文本。转换后,一个相对简单的匹配函数可以提取标记的目录项目并将它们放入一个数组中,然后您可以随意操作该数组。
这个StackOverflow帖子也有一些更多的解决方案。
希望能够帮助到你。
+ "The name of the section" #19,135,421
- tobiasBora