按代码合并PDF

时间:2013-06-04 16:30:06

标签: java vba pdf automation adobe

我想要的是:

我有英文和其他语言的PDF文档,并且总是配对相同的内容。我想完全合并这些对,但是我得到了很多(但是这些对有着相似的名字),所以我不想手动完成。

我有什么:

使用Java和VBA的一些经验,但安装了Microsoft Office Suite XP和Adobe Acrobat Professional 8.任何其他软件必须是免费的......如果需要的话。

你能帮我找到解决方案吗?任何事情都会有所帮助我只能在网上找到更新版本的Excel和Acrobat Professional的解决方案。

1 个答案:

答案 0 :(得分:0)

使用IText很容易实现,这是一个处理Pdfs的开源软件包。有Java和C#版本。

以下是我编写的用于合并多个pdfs的示例java代码

/**
 * merge multiple pdfs into a single pdf
 * @param fileName output pdf full path name
 * @parrm childPdfs full path names of pdfs to merge
 */
public static void mergePdfs(String fileName, String [] childPdfs) {
try {

    Document doc = new Document();
    PdfCopy copyDoc =  new PdfCopy(doc, new FileOutputStream(fileName));
    doc.open();
    for (int i = 0; i < childPdfs.length; i++) {
        PdfReader reader = new PdfReader(childPdfs [i]);
        int pageCnt = reader.getNumberOfPages();
        for (int j = 1; j <= pageCnt; j++) {
            copyDoc.addPage(copyDoc.getImportedPage(reader, j));
        }
        reader.close();
    }
    doc.close();

} catch (Exception e) {
    throw  new RuntimeException(e);
}
}