web-dev-qa-db-fra.com

ITextSharp: définir la couleur de la bordure des cellules du tableau

Comment définir la couleur de bordure d'une cellule de tableau. voici le code que j'ai:

// 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);

Comme vous pouvez le voir, je règle la couleur de deux manières différentes et aucune ne fonctionne. Lorsque le tableau est rendu, la bordure est toujours noire. Comment puis-je réparer cela.

19
Luke101

Lorsque vous définissez individuel les propriétés de bordure de cellule, vous devez soit définir toutes les couleurs et largeurs de bordure individuellement, soit définir explicitement le seVariableBorders propriété à true. Essayez cet exemple pour voir ce que je veux dire:

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);
30
kuujinbo