扫描PDF的

时间:2015-05-22 05:27:35

标签: pdf scanning

我最近获得了一些非常古老但非常有用的手写笔记,为了保存它们,我将它们扫描成PDF格式的文件。我所拥有的是一个35页的PDF,但我想在开头添加一个内容页面,以便我可以使用第一页单击我对特定主题的方式。

更确切地说, 我想要一个说

的页面

主题1

主题2

主题3 ...

每一个都应链接到我选择的页面。

我已经探索了很多标准工具来帮助我解决这个问题,比如LibreOffice,pdftk等,但解决方案似乎并不是简单的应用程序和点击几下。我的预感是,这需要一个用合适的语言编写的程序。我希望这个程序的工作方式如下:

ProgramName Input.pdf CustomTOC.txt

其中CustomTOC.txt可以是包含两列的简单ASCII表,一列是标题,第二列是页码。该程序的输出将是另一个PDF文件,其中包含一个附加在Input.pdf开头的页面,其中包含一个带有指向右页的超链接的目录。

1 个答案:

答案 0 :(得分:0)

我设法解决了这个问题,虽然我不认为这是最好的方法。我编写了一个Python程序,接受两个必需的输入 - 输入PDF文件和'|'分隔的ASCII表,包含列和页码。第三个可选输出可以是包含输出的PDF文件的名称。如果未提供,则重写原始输入文件。

代码如何工作 使用系统调用'pdftk'将PDF文件分解为其组成页面。写一个.tex文件,其中包含第一页的\ listoffigures命令,包含hyperref,确保它链接到数字。 .tex代码的后半部分包含几个图形插入语句,其中插入了与每个页面对应的PDF文件,仅为那些在提供的TOC表中有条目的PDF提供标题。

为什么代码不理想? 它依赖于太多的依赖项。它依赖于对pdftk包的系统调用,它要求LaTeX也安装在带有图形包的机器上。在当前版本的代码中,每个页面上的PDF都有一些偏移,我试图使用具有自定义边距设置的几何包来解决。一旦这个问题解决了,我会尝试发布代码。

更理想的解决方案。 不需要LaTeX并且可以在Python中使用某些PDF库来实现相同的效果。欢迎提出意见和建议!