生成pdf时string.Padding()的文本对齐问题

时间:2019-03-27 08:11:20

标签: c# pdf itext

我正在使用TOC手动生成pdf。对于TOC,我正在使用c#的padright或padleft。这样我们就可以在页面编号之后的一些点处将toc生成为pdf。

我不知道iText是否可以做到这一点。我尝试了很多但没有成功。

我执行以下操作:

string tocText = string.Empty;
for (int pageNumber = 0; pageNumber < dtBookPages.Rows.Count; pageNumber++)
{
    if (!string.IsNullOrWhiteSpace(Convert.ToString(dtBookPages.Rows[pageNumber]["TocText"])))
    {
        string toc = dtBookPages.Rows[pageNumber]["TocText"].ToString();
        string pageNumberByOrder = dtBookPages.Rows[pageNumber]["OrderIndex"].ToString();
        int tocTextLength = (160 - toc.Length);
        tocText += String.Format("{0,-160} {1,3}", toc.PadRight(tocTextLength, '.'), pageNumberByOrder) + "\r\n";
    }
}

这给我这个输出,页码未对齐。

enter image description here

我需要的是

enter image description here

0 个答案:

没有答案