簡體   English   中英

與NReco PdfGenerator合並PDF

[英]Merge pdfs with NReco PdfGenerator

在NReco網站的功能部分中,在示例列表中:關於MergePdf的一行。 我已經查看了API參考,並在visualstudio中使用了智能感知功能,但找不到任何東西。

在通過郵件發送之前,我不會合並幾個pdf。 Pdf是使用nreco wkhtmltopdf生成的,具有不同的頁眉和頁腳,而我無法在同一生成中使用它,因此我拆分了一代,現在我想再次合並pdf。 還是我必須讓另一個圖書館參與進來。

只是分享我最終得到的。 至少現在(是。 它是對iTextSharp建議解決方案的修改。

public static byte[] MergePdfs(IEnumerable<byte[]> pdfs)
    {
        using (var memoryStream = new MemoryStream())
        {
            var document = new Document(PageSize.A4);
            var writer = PdfWriter.GetInstance(document, memoryStream);

            document.Open();
            var writerDirectContent = writer.DirectContent;

            foreach (var pdf in pdfs)
            {
                var pdfReader = new PdfReader(pdf);
                var numberOfPages = pdfReader.NumberOfPages;

                for (var currentPageNumber = 1; currentPageNumber <= numberOfPages; currentPageNumber++)
                {
                    document.SetPageSize(PageSize.A4);
                    document.NewPage();

                    var page = writer.GetImportedPage(pdfReader, currentPageNumber);
                    writerDirectContent.AddTemplate(page, 1f, 0, 0, 1f, 0, 0);
                }
            }

            document.Close();

            return memoryStream.ToArray();
        }
    }

有兩種方法可以實現您提到的目標:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM