C# 合并PDF 下载
有很多第三方插件,我这里介绍的是用的iTextSharp
1.nuget iTextSharp

2.写个方法
fileList pdf数组
outMergeFile 导出合并PDF路径
public void mergePDFFiles(List<string> fileList, string outMergeFile)
{
List<PdfReader> readerList = new List<PdfReader>();//记录合并PDF集合
//Rectangle rec = new Rectangle(1660, 1000);
Rectangle rec = new Rectangle(0, 0, 615, 395);
//创建一个新的文档对象
Document document = new Document(rec);
//保存文档的地址设置
FileStream output = new FileStream(outMergeFile, FileMode.Create);
PdfWriter writer = PdfWriter.GetInstance(document, output);
document.Open();
PdfContentByte cb = writer.DirectContent;
PdfImportedPage newPage;
//循环读取文件
for (int i = 0; i < fileList.Count; i++)
{
PdfReader reader = new PdfReader(fileList[i]);
int iPageNum = reader.NumberOfPages;
for (int j = 1; j <= iPageNum; j++)
{
document.NewPage();
//PdfImportedPage newPage = writer.GetImportedPage(reader, j);
newPage = writer.GetImportedPage(reader, j);
cb.AddTemplate(newPage, 0, 0);
}
readerList.Add(reader);
}
document.Close();
writer.Close();
output.Close();
foreach (var item in readerList)
{
item.Close();
item.Dispose();
}
}
3.调用方法即可。在使用时候,发现有时候删除,会报错,图片正在被进程资源占用,释放所有图片资源。
浙公网安备 33010602011771号