Migradoc真实表格单元格填充

时间:2017-03-16 11:19:46

标签: c# pdfsharp migradoc

有没有办法为migradoc表格单元格添加实际填充?它们当前具有的选项(LeftPadding和RightPadding)实际上像边距一样工作,而不像填充。如果您使用它,它也会推送背景颜色,而不是仅推送内容。

当您向整行或单个单元格添加“填充”(将其添加到第一行)时会发生这种情况:

enter image description here

默认情况下,它看起来像这样:

enter image description here

如果你想删除列之间的空白区域,似乎你必须通过将这些填充属性设置为0来实现它,然后你得到它:

enter image description here

..这几乎是我想要的,但是我想把细胞的内容从所有4个侧面朝向细胞的中心稍微推动,这样它看起来像这样并且有一点“呼吸”的空间:

enter image description here

很久以前甚至asked on their forums关于是否可以这样做,但答案根本没有解决问题。它简单地提到了填充属性,它与该线程中的OP所要求的完全相反(这与我想做的事情完全相同)。

我正在使用PDFsharp-MigraDoc-gdi v1.50.4000-beta3b nuget包。

任何破解这种奇怪行为的方法?感谢。

编辑:使用我使用的一段代码更新,并添加了由PDFsharp新手推荐的位

var table = new Table();
var columnCount = 4;

for (int i = 0; i < columnCount; i++)
{
    table.AddColumn();
}

var hedingRow= table.AddRow();
hedingRow.Format.Font.Bold = true;
hedingRow.Format.Font.Color = Color.Parse("0xFFFFFFFF");
hedingRow.Format.Shading.Color = Color.Parse("0xFF005aa0");
hedingRow.HeadingFormat = true;
hedingRow.Cells[0].AddParagraph("Field");
hedingRow.Cells[1].AddParagraph("Type");
hedingRow.Cells[2].AddParagraph("Default");
hedingRow.Cells[3].AddParagraph(String.Empty);

// Doesn't work as I would assume it should based on PDFsharp Novice
hedingRow.Cells[0].Format.LeftIndent = 4;
hedingRow.Cells[0].Format.RightIndent = 4;
hedingRow.Cells[0].Format.Shading.Color = Color.Parse("0xFF005aa0");

1 个答案:

答案 0 :(得分:4)

您可以设置单元格和/或单元格中文本的背景颜色。

如果设置单元格的颜色,填充区域也将具有颜色。

如果仅为文本设置颜色,则填充区域将没有颜色。