iTextSharp - 段落行高

iTextSharp - Paragraph Line-Height

我目前正在处理 PDF,但我在尝试增加 Paragraph 的行高时遇到问题,这是我现在拥有的代码:

var tempTable = new PdfPTable(1);

cell = new PdfPCell(new Paragraph("My Account", GetInformationalTitle()));
cell.Border = Rectangle.NO_BORDER;
tempTable.AddCell(cell);

cell = new PdfPCell(new Paragraph("http://www.google.com/", GetInformationalOblique()));
cell.Border = Rectangle.NO_BORDER;
cell.PaddingBottom = 10f;
tempTable.AddCell(cell);

var para = new Paragraph("Login to 'My Account' to access detailed information about this order. " +
"You can also change your email address, payment settings, print invoices & much more.", GetInformationalContent());
 para.SetLeading(0f, 2f);

 cell = new PdfPCell(para);
 cell.Border = Rectangle.NO_BORDER;
 tempTable.AddCell(cell);

正如您从上面看到的,我正在尝试增加 para 的行高,我已经尝试 para.SetLeading(0f, 2f) 但它仍然没有增加行高或前导,因为它被称为。

这可能是什么问题?

您正在 文本模式 中添加 para,而不是在 复合模式 中添加它。文本模式意味着 PdfPCell 的前导优先于为 Paragraph 定义的前导。使用复合模式,则相反。

您可以通过一个小改动来解决这个问题:

cell = new PdfPCell();
cell.addElement(para);
tempTable.AddCell(cell);

使用addElement()方法使cell从文本模式切换到复合模式。