繁体   English   中英

如何在IText表中的两个单元格周围绘制边框?

[英]How to draw a border around two cells in a IText table?

我使用IText生成PDF。 因此,我使用以下代码生成表:

    iTextSharp.text.Table aTable = new iTextSharp.text.Table(10, 7);

   //Row 1
   aTable.AddCell(new Cell("ANDC"), 0, 4);
   aTable.AddCell(new Cell("0.123"), 0, 5);

现在,我想在这两个单元格周围画一个边框。 我知道如何在表格或单个单元格周围绘制边框,但是如何在两个单元格周围绘制边框?

重要的是要注意,除了上面的代码中的两个metnioned之外,表中还有其他单元格。

首先,PdfPTable和PdfPCell为您提供更多控制权,请改用它们。

其次,我推荐一个单元事件处理程序。 您需要跟踪哪个单元格是哪个单元格,以便可以在(仅)适当的时间/位置绘制适当的线条。

嗯,由于单元格事件处理程序是特定于单元格的,因此您可以为左右单元格鞭打一个不同的控件,或者只是为第二个绘制自己宽度的两倍的处理程序...或者第一个可以记录其宽度的控件第二个可以使用该信息进行绘制,或者...

你明白了。

PdfPCell leftCell = new PdfPCell();
...
leftCell.setCellEvent(new MyLeftCellEvent());
myPdfPTable.addCell(leftCell);

PdfPCell rightCell = new PdfPCell();
...
rightCell.setCellEvent(new MyRightCellEvent());
myPdfPTable.addCell(rightCell);

另一种方法

您可以关闭PdfPCell(从矩形派生)中的特定边框:

cell.disableSide(Rectangle.RIGHT);
otherCell.disableSide(Rectangle.LEFT);

更少的代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM