像往常一样,网上有很多关于这方面的帖子,但这些都没有帮助……我使用windows和Migradoc Version = "1.32.3885.0“
为了生成pdf,我创建了一个文档。
var doc = new MigraDoc.DocumentObjectModel.Document();然后,我使用字体定义文档的样式
var style = doc.Styles["Normal"];
style.Font.Name = "Adobe Fan Heiti Std B";然后我添加我的章节、段落等,并打印pdf,如下所示
var printer = new PdfDocumentRenderer {Document = doc};
printer.RenderDocument();
printer.Save(filePath);这可以很好地工作。然而,我从设计师那里得到了另一种字体,它并没有安装在我的电脑上。我安装了.otf文件(它是HelveticaNeueLTStd-Cn.otf和另外两个版本的HelveticaNeueLT)。我可以在所有程序(例如MSWord)中使用新安装的字体,但不能在文档中使用它们。我得到了错误
Cannot get a matching glyph typeface for font 'HelveticaNeueLT Std Cn'.我可以直接从c#加载字体(不是安装的字体,而是源代码)
var tf = new GlyphTypeface(new Uri(@"C:\temp\HelveticaNeueLTStd-Cn.otf", UriKind.Absolute));但我不知道如何将它嵌入到我的Migradoc文档中。
所以问题是:如何在MigraDoc文档中使用.otf字体来生成pdf (在Windows maschine上)?
谢谢。
发布于 2013-03-27 19:17:40
PDFsharp不能使用PostScript字体。
另请参阅:
http://www.pdfsharp.net/wiki/PostScript_fonts.ashx
OTF可以包含PostScript或TrueType字体。必须将PostScript字体转换为TrueType才能与PDFsharp/MigraDoc Foundation一起使用(请参阅上面的链接)。
https://stackoverflow.com/questions/15657083
复制相似问题