C # iTextSharp Объединить несколько PDF через байтовый массив

Я новичок в использовании iTextSharp и работе с файлами PDF в целом, но я думаю, что я на правильном пути.

Я перебираю список файлов PDF, преобразую их в байты и помещаю все полученные байты в байтовый массив. Оттуда я передаю байтовый массив в concatAndAddContent (), чтобы объединить все PDF-файлы в один большой PDF-файл. В настоящее время я просто получаю последний pdf в списке (кажется, что он перезаписывается)

public static byte[] concatAndAddContent(List<byte[]> pdfByteContent)
    {
        byte[] allBytes;

        using (MemoryStream ms = new MemoryStream())
        {
            Document doc = new Document();
            PdfWriter writer = PdfWriter.GetInstance(doc, ms);

            doc.SetPageSize(PageSize.LETTER);
            doc.Open();
            PdfContentByte cb = writer.DirectContent;
            PdfImportedPage page;

            PdfReader reader;
            foreach (byte[] p in pdfByteContent)
            {
                reader = new PdfReader(p);
                int pages = reader.NumberOfPages;

                // loop over document pages
                for (int i = 1; i <= pages; i++)
                {
                    doc.SetPageSize(PageSize.LETTER);
                    doc.NewPage();
                    page = writer.GetImportedPage(reader, i);
                    cb.AddTemplate(page, 0, 0);

                }
            }

            doc.Close();
            allBytes = ms.GetBuffer();
            ms.Flush();
            ms.Dispose();
        }

        return allBytes;
    }

Выше приведен рабочий код, в результате которого создается один PDF-файл, а остальные файлы игнорируются. Какие-либо предложения

Ответы на вопрос(1)

Ваш ответ на вопрос