如何在每个页面之间添加新页面,然后复制到新的PDF。我知道我缺少一些基本知识,但似乎并没有正确掌握它。
int n = pdfReaderInput.NumberOfPages;
Document document = new Document();
PdfCopy copy = new PdfCopy(document, new FileStream(tempFile, FileMode.OpenOrCreate));
document.Open();
for (int i = 0; i < n; )
{
copy.AddPage(copy.GetImportedPage(pdfReaderInput, ++i));
}
document.Close();
return tempFile;
我了解并知道这是错误的,但是不确定我需要做什么。基本上,我在每页之间都添加了一个空白pdf。提前致谢!
最佳答案
使用PdfCopy
(或其子类PdfSmartCopy
)时,可以使用addPage()
方法,如下所示:
copy.addPage(PageSize.A4, 0);
在这种情况下,将添加大小为A4的页面。如果要确保空白页面的尺寸与文档中其他页面的尺寸相同(例如第1页),则可以执行以下操作:
copy.addPage(reader.getPageSize(1), reader.getPageRotation(1));
现在,
Rectangle
值将与阅读器中第一页的大小相对应; int
值将与现有文档第一页的旋转相对应。更新:我现在看到您用[itext]和[itextsharp]标记标记了您的问题。我使用Java代码在[itext]标签下回答了它。不用说,这个答案对iTextSharp也是有效的,但是您需要对语法进行一些小的更新,例如将
addPage()
更改为AddPage()
。