在PdfpTable中找不到文本

时间:2012-07-20 13:03:14

标签: c# itextsharp pdfptable

BaseFont Vn_Helvetica = BaseFont.CreateFont(@"C:\Windows\Fonts\arial.ttf", 
"Identity-H", BaseFont.EMBEDDED);
Font fontNormal = new Font(Vn_Helvetica, 12, Font.NORMAL);
foreach (var t in htmlarraylist)
                {

 if (t is PdfPTable)
                    {
                        var countColumn= ((PdfPTable)t).NumberOfColumns;//is 7
                        var countRows = ((PdfPTable)t).Rows;//is 10

//我想为所有文本设置normalFont,但defaultCell.Phrase始终为null

((PdfPTable)t).DefaultCell.Phrase = new Phrase() { Font = fontNormal };

//如何在pdfptable中查找文本以设置字体?

                    }
                   document.Add(t);

1 个答案:

答案 0 :(得分:1)

您正尝试在表格的默认单元格的短语上设置字体。您需要为表中的所有单元格设置此项:

        // t is a PdfPTable
        foreach(var row in t.Rows)
        {
            foreach(var cell in row.GetCells())
            {
                if(cell.Phrase != null)
                {
                    cell.Phrase.Font = fontNormal;
                }
            }
        }