0

我想从 ASP.NET MVC 创建 PDF。我找到了这个库(http://www.codeproject.com/Articles/260470/PDF-reporting-using-ASP-NET-MVC3),它对我有帮助。但是当我想打印像“ř”这样的特殊字符时,iTextShat 不会打印它。我发现,我必须使用

new Chunk("+ěščřžýáíé=", font); 

但我不知道如何在 BaseFont 上设置所有文档,而不仅仅是一个段落。你能帮我吗?

4

2 回答 2

1

我对东欧信件也有类似的问题。这是帮助我解决问题的一段代码:

string fontPath = String.Format("{0}\\{1}", Environment.GetFolderPath(Environment.SpecialFolder.Fonts), "arial.ttf");
string title = "Some Title";

iTextSharp.text.Font fontTitle = iTextSharp.text.FontFactory.GetFont(fontPath, iTextSharp.text.pdf.BaseFont.CP1250, 22f);
iTextSharp.text.Paragraph paraTitle = new iTextSharp.text.Paragraph(title, fontTitle);
paraTitle.Alignment = iTextSharp.text.Element.ALIGN_CENTER;

document.Open();

document.Add(paraTitle);

你感兴趣的是fontTitle变量。这是为国家页面 1250 创建基本字体的方法。您将指定自己的基本字体设置。

于 2013-03-14T21:03:26.257 回答
0

您可以使用系统的 Fonts 文件夹准备一个新的 BaseFont:

string arialPath = Environment.GetEnvironmentVariable("SystemRoot") + "\\fonts\\arial.ttf";
BaseFont arial = BaseFont.CreateFont(arialPath, BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
Font myFont = new Font(arial, 12, Font.NORMAL);
new Chunk("+ěščřžýáíé=", myFont);
于 2017-04-17T10:15:06.933 回答