4

Mac 上的 Preview 应用程序允许合并多个 PDF 文件,尽管功能相当模糊。我正在用 Haskell 编写一个实用程序,它需要执行类似的任务,即将任意数量的 PDF 文件合并到一个新文件中。

有没有人建议从哪里开始?显然,如果有一个关于 Hackage 的库可以完成大部分开箱即用的工作,那将是理想的,但如果没有,那么一些关于从哪里开始的指针将非常感激。

4

2 回答 2

4

我正在研究支持解析和生成的pdf 库。它是低级的,高级工具还在待办事项列表中(因为很难设计好的高级 API)。

是一个对PDF文件进行解包和解密的例子。实现 PDF 合并很容易,但您需要熟悉 PDF 内部结构。

添加:我创建了一个在 Haskell 中合并 PDF 文件的基本示例。总共 150 行代码,但它缺少一些功能(请参阅文件顶部的注释)。它们很容易添加,所以如果您有兴趣,请告诉我。

于 2013-03-17T22:42:51.057 回答
2

PDF 文件格式并不复杂。Adobe 在某处有一个官方规范文档。本质上,PDF 文件包含一组编号的“对象”。您必须从每个 PDF 文件中获取所有对象,重新编号以使它们唯一,然后您需要调整页面索引,以便实际显示所有页面。

Hackage 上似乎有几个用于编写PDF 文件的包,但我看不到太多可以阅读它们的包。您可能想查看源代码以pdfsplit获取想法。也HPDF

于 2013-03-17T19:12:40.460 回答