Migradoc 真实 table 单元格填充

Migradoc real table cell padding

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

这是将 "padding" 添加到整行或单个单元格(添加到第一行)时发生的情况:

默认情况下是这样的:

如果您希望删除列之间的白色 space,您似乎必须通过将这些填充属性设置为 0 来完成此操作,然后您会得到:

..这几乎是我想要的,但我想将单元格的内容从所有 4 个边稍微推向单元格的中心,这样它看起来像这样并且有一点空间 "breathe":

甚至asked on their forums很久以前就在讨论是否可以做到这一点,但答案根本没有解决问题。它只是提到了填充属性,这些属性的工作方式与该线程中的 OP 要求的方式完全相反(这与我想做的一样)。

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

有什么方法可以破解这种奇怪的行为?谢谢。

编辑:更新了我使用的一段代码以及 PDFsharp Novice 推荐的添加位

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

您可以为单元格中的文本设置单元格的背景颜色and/or。

如果您为单元格设置颜色,填充区域也会有颜色。

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