How do I set the font for a pdfptable?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You must set the font in each cell when you're creating a phrase:
Dim yourFont As BaseFont = BaseFont.CreateFont( _
Current.Server.MapPath("~/fonts/somefont.TTF"), _
BaseFont.WINANSI, BaseFont.EMBEDDED)
Dim mainFont As New Font(yourFont, SOME_FONT_SIZE, Font.NORMAL)
Dim cell As New PdfPCell(New Phrase("some text", mainFont))
yourTable.Add(cell)
回答2:
You need to create a 'Base Font' object which is a little different than a regular font object in iTextSharp. You assign the font to each element (phrase, paragraph, etc.) that you create for the PdfPTable.
Dim bfR As iTextSharp.text.pdf.BaseFont
bfR = iTextSharp.text.pdf.BaseFont.CreateFont("verdana.ttf", iTextSharp.text.pdf.BaseFont.IDENTITY_H, iTextSharp.text.pdf.BaseFont.EMBEDDED)
I'm using the IDENTITY_H property here so that support for other alphabets is enabled.
回答3:
The attribute PdfPTable has a property DefaultCell which you can set the defaults properties of your PdfPCell elements:
//C#
tableInstance.DefaultCell.Phrase = new Phrase() { Font = yourFont };