首页 > 解决方案 > iTextSharp 合并 PDF 而不保留页面大小

问题描述

我有以下 .NET 代码通过 iTextSharp 合并两个 PDF。

        byte[] result;
        using (var ms = new MemoryStream())
        {
            using (var doc = new Document())
            {
                using (PdfCopy copy = new PdfSmartCopy(doc, ms))
                    doc.Open();
                    var d1 = new PdfReader(coverSheetPdf);
                    copy.AddDocument(d1);
                    var d2 = new PdfReader(reportPdf);
                    copy.AddDocument(d2);
                    doc.Close();
                }
            }
            result = ms.ToArray();
        }

上面将 Letter/Landscape PDF 与 Tabloid/Landscape PDF 合并。在大多数情况下,每个 PDF 的页面大小都会保持不变,但在某些情况下,合并后的文档都是一种大小。

下图显示了调试时的页面大小 页面大小

我附上了以下文件

任何想法为什么合并的 PDF 包含所有相同大小的页面?

标签: c#pdfitext

解决方案


道歉 - 这是一个误报 - 这是由于一些后处理 - 在执行合并之后,每个页面的页码(由 iTextSharp 执行)默认页面大小为第一页的大小


推荐阅读