iText代码片段的区别来自哪里?

时间:2013-10-14 16:23:02

标签: java itext

使用iText,我发现了两个我无法解释的片段之间的区别。

代码段A:

    PdfPCell cell = new PdfPCell();
    cell.addElement(new Paragraph("a", SOME_FONT));
    cell.addElement(new Paragraph("b", SOME_FONT));
    cell.addElement(new Paragraph("c", SOME_FONT));
    /*
       outputs: 
               a
               b
               c
    */

摘录B:

    PdfPCell cell = new PdfPCell(new Paragraph("a", SOME_FONT));
    cell.addElement(new Paragraph("b", SOME_FONT));
    cell.addElement(new Paragraph("c", SOME_FONT));
    /*
       outputs: 

               b
               c
    */

差异来自哪里?之后将两种细胞添加到PdfPTable中。谢谢你的帮助。

此致 人

1 个答案:

答案 0 :(得分:1)

在第一个代码段中,您在复合模式中使用PdfPCell。在第二个代码段中,您从文字模式开始,然后切换到复合模式(使用addElement()而不是addText()触发方法)。从文本模式切换到复合模式时,之前存储在列中的所有文本都将被丢弃。

Google 文字模式复合模式,您可以找到更多详情。