代码之家  ›  专栏  ›  技术社区  ›  Chris

提取PDF的目录?

  •  19
  • Chris  · 技术社区  · 16 年前

    但是现在我试着更进一步,试着从PDF中获取TOC,有可能提取这些信息吗?

    4 回复  |  直到 16 年前
        1
  •  13
  •   Community Mohan Dere    6 年前

    我找了一下就找到了这个。看起来很有希望。

    http://www.unixuser.org/~euske/python/pdfminer/index.html

    从现场:

    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)
    
        2
  •  8
  •   utah    10 年前

    我试过了 dump.pdf -T

    MuPDF中还有一个工具名为 mutool 我刚找到的。我不知道这是否比dump.pdf好,但是处理pdf文件dump.pdf会抛出一个错误。

    下面介绍如何使用mutool提取TOC

    mutool show {your-pdf-file} outline

    MuPDF

        3
  •  3
  •   user206268    16 年前

    或者,您可以使用 MuPDF 这是一个非常轻量级但完整的PDF实现,由C编写。在 apps/ 子目录,你会发现一些工具,可以查看,转储和提取信息的PDF文件。我更喜欢MuPDF而不是xpdf,因为它是主动维护的,并且有更好的PDF支持。

    否则,总有 Poppler 它实际上是基于xpdf的。开发人员将其代码移植到C++。因此,它的性能比它的前任差。与MuPDF相比,Poppler似乎有更多的特性,但作为回报,代码要复杂得多。

    不过,就你的目的而言,MuPDF应该足够了。您可以根据中提供的示例代码将一个简单的应用程序拼凑在一起 应用程序/ 它可以提取您需要的所有信息,而不依赖于外部应用程序。

        4
  •  0
  •   Community Mohan Dere    9 年前

    PHP's PDFLib 是个很好的开始。如果你向下滚动,你会看到许多用户发布的解决方案,用于将PDF转换为HTML或PDF转换为文本。在转换之后,一个相对简单的匹配函数可以提取标记的TOC项,并将它们放入一个数组中,然后您可以随意操作它。

    This StackOverflow post

    希望这有帮助。

    推荐文章