现在我正在使用PHP和Laravel。我的目标是从上传的PDF文件(使用Form和POST方法)中提取尽可能多的信息,例如元数据(作者,标题等),首页(封面),每页的内容和可用的章节(来自书签)。
我目前正在使用smalot的PDF Parser here,但文档仅涵盖了我从PDF文件中获得的一些基本示例。
问题:我当前的问题是提取这些书签以满足本章的要求。有谁知道如何使用这个特定的解析器提取这种类型的内容?
我的代码目前看起来像这样:
<table>
<?php
$details = $PDFfile->getDetails();
// Loop over each property to extract values (string or array).
foreach ($details as $property => $value) {
if (is_array($value)) {
$value = implode(', ', $value);
}
echo '<tr>';
echo '<td><b>'.$property . '</b></td><td> </td><td>' . $value . "</td>";
echo '</tr>';
}
?>
</table>
请注意,这只会产生一个如下所示的输出:
[Producer] => dvips + GNU Ghostscript 7.05
[Creator] => LaTeX with hyperref package
[Title] =>
[Subject] =>
[Author] =>
[Keywords] =>
[Pages] => 11
答案 0 :(得分:0)
我没有Smalot的经验,但我确实有一些从PDF书签中提取信息的经验。因此,查看PDF reference的第12.3.3节和smalot文档,我将从Document getDictionary()开始,并获得&#39; Outlines&#39;从该字典中输入,然后遍历树,查看First,Next,Title,Last和Count条目。