【问题标题】:ITextSharp: Set table cell border colorITextSharp:设置表格单元格边框颜色
【发布时间】:2012-02-23 16:28:13
【问题描述】:

如何设置表格单元格的边框颜色。这是我的代码:

// create and define table
var table = new PdfPTable(8);
table.HorizontalAlignment = Element.ALIGN_CENTER;

//table.HeaderRows = 1;

// the cell object
PdfPCell cell;
var f = FontFactory.GetFont("Tahoma", 11, Font.BOLD);

cell = new PdfPCell(new Phrase("Source Review", f));
cell.BorderColorLeft = new BaseColor(255, 255, 255);
cell.BorderColorRight = new iTextSharp.text.BaseColor(255, 255, 255);
table.AddCell(cell);

如您所见,我以两种不同的方式设置颜色,但两种方式都不起作用。渲染表格时,边框始终为黑色。我该如何解决这个问题。

【问题讨论】:

    标签: c# itext


    【解决方案1】:

    当您设置单个单元格边框属性时,您需要单独设置所有边框颜色和宽度,或者将UseVariableBorders属性显式设置为true。试试这个例子,看看我的意思:

    PdfPTable table = new PdfPTable(1);
    PdfPCell cell = new PdfPCell(new Phrase("test 1"));
    cell.UseVariableBorders = true;
    cell.BorderColorLeft = BaseColor.BLUE;
    cell.BorderColorRight = BaseColor.ORANGE;
    table.AddCell(cell);
    
    cell = new PdfPCell(new Phrase("test 2"));
    cell.BorderColorLeft = BaseColor.RED;
    cell.BorderColorRight = BaseColor.GREEN;
    cell.BorderColorTop = BaseColor.PINK;
    cell.BorderColorBottom = BaseColor.YELLOW;
    cell.BorderWidthLeft = 1f;
    cell.BorderWidthRight = 1f;
    cell.BorderWidthTop = 1f;
    cell.BorderWidthBottom = 1f;
    table.AddCell(cell);
    
    cell = new PdfPCell(new Phrase("test 3"));
    cell.BorderColor = BaseColor.GREEN;
    table.AddCell(cell);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-02-11
      • 1970-01-01
      • 2017-01-20
      • 2011-08-18
      • 1970-01-01
      • 1970-01-01
      • 2011-09-08
      相关资源
      最近更新 更多