我正在使用 itext7 创建 Pdfs。它允许我将段落添加到第一页,但我不确定如何将内容添加到第二页。如果我在调用 AddNewPage() 之后创建 Canvas 那么它工作正常,但是当我使用一个段落并将它添加到文档时它不起作用。感谢帮助。在我的示例中, firstPageText 和 secondPageText 将显示在第一页上:
protected void CreatePdf(string filePath, string firstPageText, string secondPageText)
{
PdfWriter writer = new PdfWriter(filePath);
PdfDocument pdfDocument = new PdfDocument(writer);
Document doc = new Document(pdfDocument);
doc.Add(new Paragraph(firstPageText));
pdfDocument.AddNewPage();
doc.Add(new Paragraph(secondPageText));
doc.Close();
}
Run Code Online (Sandbox Code Playgroud)
这在解释第二章中的构建模块:iText的7。请允许我复制该教程的片段:
如果我们使用了
AreaBreakof typeNEXT_PAGE,就会开始一个新页面;见图 2.11。在 JekyllHydeV5 示例中,我们更改了一行:
Run Code Online (Sandbox Code Playgroud)AreaBreak nextPage = new AreaBreak(AreaBreakType.NEXT_PAGE);iText 现在不是跳到下一列,而是跳到下一页。
默认情况下,新创建的页面将与当前页面具有相同的页面大小。如果您希望 iText 创建另一个大小的页面,您可以使用接受
PageSize对象作为参数的构造函数。例如:new AreaBreak(PageSize.A3)。还有一个
AreaBreak类型LAST_PAGE。这AreaBreakType将在不同渲染器之间切换时使用。
我很惊讶你会这样做:
doc.Add(new Paragraph(firstPageText));
pdfDocument.AddNewPage();
doc.Add(new Paragraph(secondPageText));
Run Code Online (Sandbox Code Playgroud)
虽然记录的方式是这样做的:
doc.Add(new Paragraph(firstPageText));
doc.Add(new AreaBreak(AreaBreakType.NEXT_PAGE));
doc.Add(new Paragraph(secondPageText));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4085 次 |
| 最近记录: |