我有两个 PDF 文件:Pdf A
和Pdf B
. Pdf A
已经存在于计算机的C:
驱动器上,并Pdf B
通过也位于驱动器中的程序生成C:
。
我想要做的是将两者结合起来,以便Pdf A
首先显示 's 页面,然后显示Pdf B
's 页面。
这是我的代码,它尝试在给定 PDF 列表的情况下将两者结合起来(Pdf A
是第一个元素,Pdf B
是列表中的第二个元素files
,并且destinationfile
is Pdf A
):
public static void MergePdfFiles(string destinationfile, List<string> files)
{
Document document = null;
try
{
List<PdfReader> readers = new List<PdfReader>();
List<int> pages = new List<int>();
foreach (string file in files)
{
readers.Add(new PdfReader(file));
}
document = new Document(readers[0].GetPageSizeWithRotation(1));
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(destinationfile, FileMode.Create));
document.Open();
foreach (PdfReader reader in readers)
{
pages.Add(reader.NumberOfPages);
WritePage(reader, document, writer);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
finally
{
//being used by another process
document.Close();
}
}
当文档对象尝试关闭时会出现此问题。它说它正在使用另一个过程。
什么“其他”过程正在使用它?