/// <summary>
/// 打印pdf通用类,合并pdf打印
/// </summary>
/// <param name="printUrls">pdf路径</param>
/// <param name="filename">生成合并pdf后文件路径</param>
public static void PdfMerge(List<string> printUrls, string filename)
{
//激活插件,如果没有激活则会有水印
AsposePDFLicenseHelper.ModifyInMemory.ActivateMemoryPatching();
WebClient wc = new WebClient();
Document pdfdoc1 = new Document();
foreach (var url in printUrls)
{
if (!string.IsNullOrWhiteSpace(url))
{
try
{
Document pdfdoc2 = new Document(url);
pdfdoc1.Pages.Add(pdfdoc2.Pages);
}
catch (Exception)
{
continue;
}
}
}
pdfdoc1.Save(filename);
}
用AsposePDF时遇到个坑要记下来,我只是想做简单的合并操作,无奈文件带数字保护无法编辑!运行到pdfdoc1.Pages.Add(pdfdoc2.Pages);会报空对象异常中断合并,加上try catch屏蔽无视就好了,对合并结果无任何影响!