C# 合併PDF 下載
阿新 • • 發佈:2021-06-11
有很多第三方外掛,我這裡介紹的是用的iTextSharp
1.nugetiTextSharp
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.呼叫方法即可。在使用時候,發現有時候刪除,會報錯,圖片正在被程序資源佔用,釋放所有圖片資源。