【问题标题】:Spacing/Leading PdfPCell's elements间距/前导 PdfPCell 的元素
【发布时间】:2013-11-25 21:47:19
【问题描述】:

是否可以在 C# 中的单元格(行)的元素之间添加空格? 我正在 Visual Studio 2012 中创建一个 pdf,并希望在行之间设置一些空间。我有这样的事情:

PdfPTable cellTable = new PdfPTable(1);
PdfPCell cell= new PdfPCell();
for(i=0; i < 5; i++)
{
    var titleChunk = new Chunk(tittle[i], body);
    var descriptionChunk = new Chunk(" " description[i], body2);
    var phrase = new Phrase(titleChunk);
    phrase.Add(descriptionChunk);
    cell.AddElement(phrase);
}
cellTable.AddCell(cell);

【问题讨论】:

  • 您必须更具体。 填充 是单元格与其内容之间的空间。 Spacing 是不同单元格之间的间距。 Leading 是内容行之间的间距。你的标题是指padding,你的问题是指spacing(行之间),也指leading(元素之间)。如果您没有使用正确的术语,就很难回答问题。
  • @BrunoLowagie 那我换个名字。 PdfTable 有一个单元格,该单元格中将包含一些元素(行)我想增加这些元素之间的空白区域。就像他们之间的一段,但是那么高。

标签: c# pdf-generation itextsharp


【解决方案1】:

好的,我给你做了一个例子,名字叫LeadingInCell

PdfPCell cell = new PdfPCell();
Paragraph p;
p = new Paragraph(16, "paragraph 1: leading 16");
cell.addElement(p);
p = new Paragraph(32, "paragraph 2: leading 32");
cell.addElement(p);
p = new Paragraph(10, "paragraph 3: leading 10");
cell.addElement(p);
p = new Paragraph(18, "paragraph 4: leading 18");
cell.addElement(p);
p = new Paragraph(40, "paragraph 5: leading 40");
cell.addElement(p);

正如您在leading_in_cell.pdf 中所见,您使用Paragraph 构造函数的第一个参数定义行之间的空间。我使用了不同的值来演示它是如何工作的。第三段紧贴第二段,因为第三段的前导只有 10 pt。第四段和第五段之间有足够的空间,因为第五段的前导是 40 pt。

【讨论】:

    猜你喜欢
    • 2015-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-16
    • 2011-03-17
    • 1970-01-01
    • 2017-01-30
    • 2021-10-16
    相关资源
    最近更新 更多