0

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

看起来像1

但是当我尝试字符串填充时,它在 pdf 文件中看起来像这样 看起来像2

这是我尝试过的 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);
        }
4

1 回答 1

2

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

  1. 使用等宽字体(例如 Courier)。当前,您正在使用不同字符宽度不同的字体。
  2. 下载我的书的第 2 章并学习如何使用 TAB CHUNKS(在第 48 页查找该标题)。
  3. 使用 mkl 在他的评论中指出的 PdfPTable(也许你忽略了明显的)

如果您需要选项 2 的代码片段,请查看DirectorOverview3示例。结果看起来像这样。如果您不懂 Java,请阅读C# 示例

于 2013-02-20T15:06:00.220 回答