如何使用间距、制表符或填充来对齐列中的内容?

2024-03-06

我正在尝试创建一个看起来像这样的pdf

but when i try string padding, it looks like this in pdf file look like2

这是我尝试过的 C# 代码的一部分。 myExcelData 是从 Excel 文件填充的。

            for (int i = 0; i < 15; i++)
        {
            Chunk cSira = new Chunk((i + 1).ToString().PadRight(10), icerikFont);
            Chunk cHizmet = new Chunk(myExcelData.Tables[0].Rows[i][6].ToString().PadRight(80), icerikFont);
            Chunk cAdet = new Chunk(myExcelData.Tables[0].Rows[i][1].ToString().PadRight(10), icerikFont);
            Chunk cBirimFiyat = new Chunk(myExcelData.Tables[0].Rows[i][2].ToString().PadRight(20), icerikFont);
            Chunk cTutar = new Chunk(myExcelData.Tables[0].Rows[i][3].ToString().PadRight(20), icerikFont);
            d.Add(cSira);
            d.Add(cHizmet);
            d.Add(cAdet);
            d.Add(cBirimFiyat);
            d.Add(cTutar);
            d.Add(Chunk.NEWLINE);
        }

有两种方法可以做到这一点:

  1. 使用等宽字体(例如 Courier)。当前您使用的字体不同字符的宽度不同。
  2. 下载我的书的第二章 http://www.manning.com/lowagie2/samplechapter2.pdf并学习如何使用 TAB CHUNKS(在第 48 页查找该标题)。
  3. 使用 PdfPTable 正如 mkl 在他的评论中指出的那样(也许你忽略了显而易见的事情)

如果您需要选项 2 的代码片段,请查看导演概述3 http://itextpdf.com/examples/iia.php?id=45例子。结果看起来像this http://examples.itextpdf.com/results/part1/chapter02/director_overview_3.pdf。如果您不懂 Java,请阅读C# 示例 http://sourceforge.net/p/itextsharp/code/HEAD/tree/trunk/book/iTextExamplesWeb/iTextExamplesWeb/iTextInAction2Ed/Chapter02/DirectorOverview3.cs.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用间距、制表符或填充来对齐列中的内容? 的相关文章

随机推荐