使用以下代码在C#中使用iText 5创建PDF文档。文本不以courier字体呈现。为什么不呢?
private void SimpleFontDoc(string pdfDocPath)
{
Document doc = new Document(PageSize.LETTER, 10, 10, 42, 30);
var fs = new FileStream(pdfDocPath, FileMode.Create);
PdfWriter writer = PdfWriter.GetInstance(doc, fs);
doc.Open();
string[] lines = new string[]
{
"First text line",
"Second text line"
};
var font = FontFactory.GetFont("courier", 12.0f, BaseColor.BLACK);
foreach (var line in lines)
{
var para = new iTextSharp.text.Paragraph(line);
para.Font = font;
doc.Add(para);
}
doc.Close();
}
答案 0 :(得分:1)
在iText5中,您必须在将文本添加到Paragraph元素之前指定字体(或者将其传递给构造函数)。
更改
var para = new iTextSharp.text.Paragraph(line);
para.Font = font;
到
var para = new iTextSharp.text.Paragraph(line, font);