使用SDK以编程方式编辑adobepdf,无需打开文件

本文关键字:文件 adobepdf SDK 编程 方式 编辑 使用 | 更新日期: 2023-09-27 17:50:48

我可以做我想做的,这是打开两个pdf,合并第一个到第二个,然后保存。

AcroAVDoc avFrom = new AcroAVDocClass();
AcroAVDoc avTo = new AcroAVDocClass();
AcroPDDoc pdFrom;
AcroPDDoc pdTo;
if (avFrom.Open (fileinfo.FullName, ""))
{
    pdFrom = (AcroPDDoc)avFrom.GetPDDoc();
    if (avTo.Open(combinedFullPath, ""))
    {
        pdTo = (AcroPDDoc)avTo.GetPDDoc();
        pdTo.InsertPages(pdTo.GetNumPages() - 1, pdFrom, 0, pdFrom.GetNumPages(), 0);
        pdTo.Save(1, combinedFullPath);
        Adobe.CloseAllDocs();
    }
    else
    {
        Debug.Write("Failed to open combined pdf to merge with: " + CaseNo);
    }
}

问题是Adobe窗口打开并减慢了所有内容,因为我循环了数千次。

有人知道如何在代码中保存所有这些吗?

使用SDK以编程方式编辑adobepdf,无需打开文件

AcroPDDoc pdFrom = new AcroPDDoc();
AcroPDDoc pdTo = new AcroPDDoc();
if (pdFrom.Open (fileinfo.FullName))
{
    if (pdTo.Open(combinedFullPath))
    {
        pdTo.InsertPages(pdTo.GetNumPages() - 1, pdFrom, 0, pdFrom.GetNumPages(), 0);
        pdTo.Save(1, combinedFullPath);
        pdFrom.Close();
        pdTo.Close();
    }
    else
    {
        pdFrom.Close();
        Debug.Write("Failed to open combined pdf to merge with: " + CaseNo);
    }
}
}