小编Rob*_*ton的帖子

使用itextsharp将页面插入现有PDF

我们使用itextsharp从多个PDF文件创建单个PDF.如何将新页面插入到文件中已有多个页面的PDF文件中?当我使用添加页面时,它会覆盖现有页面,只保存所选的1页.

以下是我用于将页面添加到现有PDF的代码:

PdfReader reader = new PdfReader(sourcePdfPath);
                Document document = new Document(reader.GetPageSizeWithRotation(1));
                PdfCopy pdfCopy = new PdfCopy(document, new System.IO.FileStream(outputPdfPath, System.IO.FileMode.Create));
                MemoryStream memoryStream = new MemoryStream();
                PdfWriter writer = PdfWriter.GetInstance(document, memoryStream);
                document.AddDocListener(writer);
                document.Open();

                for (int p = 1; p <= reader.NumberOfPages; p++)
                {
                    if (pagesToExtract.FindIndex(s => s == p) == -1) continue;
                    document.SetPageSize(reader.GetPageSize(p));
                    document.NewPage();
                    PdfContentByte cb = writer.DirectContent;
                    PdfImportedPage pageImport = writer.GetImportedPage(reader, p);

                    int rot = reader.GetPageRotation(p);
                    if (rot == 90 || rot == 270)
                    {
                        cb.AddTemplate(pageImport, 0, -1.0F, 1.0F, 0, …
Run Code Online (Sandbox Code Playgroud)

c# pdf insert add itext

6
推荐指数
2
解决办法
4万
查看次数

标签 统计

add ×1

c# ×1

insert ×1

itext ×1

pdf ×1