C# 在itextsharp中将圆形颜色边框添加到pdfpcell
我正在使用此代码为我的pdfpcell提供边界半径C# 在itextsharp中将圆形颜色边框添加到pdfpcell,c#,itextsharp,itext,C#,Itextsharp,Itext,我正在使用此代码为我的pdfpcell提供边界半径 cell.Border = PdfPCell.NO_BORDER; cell.CellEvent = new RoundedBorder(); Color color2 = new Color(System.Drawing.ColorTranslator.FromHtml("#2AB1C3")); cell.BorderColor = new Color(System.Drawing.ColorTranslator.FromHtml("#2AB
cell.Border = PdfPCell.NO_BORDER;
cell.CellEvent = new RoundedBorder();
Color color2 = new Color(System.Drawing.ColorTranslator.FromHtml("#2AB1C3"));
cell.BorderColor = new Color(System.Drawing.ColorTranslator.FromHtml("#2AB1C3"));
cell.BorderWidth = 2f;
以及函数RoundedBorder
public class RoundedBorder : IPdfPCellEvent
{
public void CellLayout(PdfPCell cell, Rectangle rect, PdfContentByte[] canvas)
PdfContentByte cb = canvas[PdfPTable.BACKGROUNDCANVAS];
cb.RoundRectangle(
rect.Left + 1.5f,
rect.Bottom + 1.5f,
rect.Width - 3,
rect.Height - 3, 4
);
cb.Stroke();
}
}
我得到了圆形边框,但它是黑色的,我想给我的自定义颜色边框圆角半径
有人能帮我吗?因为您正在将
PdfPCell
配置为没有边框(cell.border=PdfPCell.no_border
),所以设置边框属性(如边框宽度和颜色)不会有任何效果
您必须在单元格事件中定义笔划操作的颜色,例如红色边框:
cb.SetRGBColorStroke(255, 0, 0);
cb.RoundRectangle(
rect.Left + 1.5f,
rect.Bottom + 1.5f,
rect.Width - 3,
rect.Height - 3, 4
);
cb.Stroke();
我也可以给桌子加边框吗?我想创建一个具有圆角边框的表,并在该表中插入另一个具有3个单元格的表(嵌套表)?有一个
PdfPTableEvent
,您可以以与pdfpcelleevent
类似的方式使用它。看一看。它为桌子绘制圆角背景。要获得边框,只需将填充操作替换为笔划操作即可。