我正在尝试遵循一些iText7文档将标头插入我的pdf文档中,但是GetPageSize()返回“对象引用未设置为对象的实例。”
我尝试通过PdfDocument对象和Document对象添加页面并设置页面大小。我可以在循环中看到4页,但是我所做的任何更改都不会给我页面大小。
public static void createPdf(string dest)
{
MemoryStream stream = new MemoryStream();
PdfWriter writer = new PdfWriter(stream);
PdfDocument pdfDoc = new PdfDocument(writer);
pdfDoc.AddNewPage(PageSize.A4);
pdfDoc.AddNewPage(PageSize.A4);
pdfDoc.AddNewPage(PageSize.A4);
pdfDoc.AddNewPage(PageSize.A4);
var doc = new Document(pdfDoc);
doc.Add(new Paragraph("This is page 1."));
doc.Add(new AreaBreak(AreaBreakType.NEXT_PAGE));
doc.Add(new Paragraph("This is page 2."));
doc.Add(new AreaBreak(AreaBreakType.NEXT_PAGE));
doc.Add(new Paragraph("This is page 3."));
doc.Add(new AreaBreak(AreaBreakType.NEXT_PAGE));
doc.Add(new Paragraph("This is page 4."));
Paragraph header = (new Paragraph("Copy").setfont(PdfFontFactory.CreateFont(StandardFonts.HELVETICA)).setfontSize(14));
for (int i = 1; (i <= pdfDoc.GetNumberOfPages()); i++)
{
PdfPage page = pdfDoc.GetPage(i);
Rectangle pageSize = page.GetPageSize();
float x = (pdfDoc.GetPage(i).GetPageSize().GetWidth() / 2);
float y = (pdfDoc.GetPage(i).GetPageSize().GetTop() - 20);
doc.ShowTextAligned(header,x,y,i,TextAlignment.CENTER,VerticalAlignment.BOTTOM,0);
}
doc.Close();
}
错误消息System.NullReferenceException:“对象引用未设置为对象的实例。”发生在矩形Rectangle pageSize = page.GetPageSize();