itext将段落保持在一起

时间:2011-06-15 15:51:33

标签: c# itextsharp itext

我有2个段落对象占据了页面的大约2/3。当我在pdf中查看时,第2段的开头从第2页开始。有没有办法在第一段之后的第一页上启动它?

    PdfPTable rs1 = new PdfPTable(1);            

    PdfPCell c = new PdfPCell();
    c.MinimumHeight = 36f;

    Paragraph p = new Paragraph(
        "some text to align\n" +
        "..." +
        "some text to align\n" 
    );

    c.AddElement(p);

    rs1.AddCell(c);

    PdfPCell c2 = new PdfPCell();
    c.MinimumHeight = 36f;

    Paragraph p2 = new Paragraph(
        "some text to align\n" +
        "..." +
        "some text to align\n" +
        "some text to align\n"
    );
    p2.KeepTogether = false;
    c2.AddElement(p2);
    c2.VerticalAlignment = Element.ALIGN_TOP;

    rs1.AddCell(c2);

    return rs1;

2 个答案:

答案 0 :(得分:3)

我使用了PdfPTable.SplitLate = false

答案 1 :(得分:1)

问题不在于您的段落,而在于您的表格。 iTextSharp尝试不破坏表格单元格中的内容,您当前的布局似乎就是这样做的。你需要一张桌子吗?当一条线离开可视区域时,常规段落就会中断。如果你需要表格,那么你必须调整表格的宽度,如果你可以(rs1.WidthPercentage = 100;),可能还有你设置的任何填充。