【发布时间】:2011-02-22 09:09:20
【问题描述】:
我最近开始使用 iTextSharp 从数据中生成 PDF 报告。效果很好。
在一个特定的报告中,我需要一个部分始终显示在页面底部。我正在使用 PdfContentByte 从底部创建一条虚线 200f:
cb.MoveTo(0f, 200f);
cb.SetLineDash(8, 4, 0);
cb.LineTo(doc.PageSize.Width, 200f);
cb.Stroke();
现在我想在该行下方插入内容。但是,(如预期的那样)PdfContentByte 方法不会更改 PdfWriter 的垂直位置。例如,新段落出现在页面的前面。
// appears wherever my last content was, NOT below the dashed line
doc.Add(new Paragraph("test", _myFont));
有什么方法可以指示 pdfwriter 我现在想将垂直位置推进到虚线下方,并继续在那里插入内容?有一个 GetVerticalPosition() 方法——如果有相应的 Setter 就好了:-)。
// Gives me the vertical position, but I can't change it
var pos = writer.GetVerticalPosition(false);
那么,有没有办法手动设置作家的位置?谢谢!
【问题讨论】:
标签: c# .net pdf pdf-generation itextsharp