PDFsharp - 使用私有字体
PDFsharp - Use private font
我目前正在编写一小段生成 PDF 文件的代码。为了遵循设计规范,我需要使用 'Helvetica Neue Condensed Bold' 字体。由于程序会运行,没有可用的字体安装我需要将其用作私有字体。
它不起作用。我尝试了不同的姓氏等等,但我总是失败...
byte[] data = File.ReadAllBytes(fontUri);
XPrivateFontCollection.Global.AddFont(data, "#Helvetica Neue Condensed Bold");
还有我要用字体的时候
XFont big = new XFont("Helvetica Neue Condensed Bold", 36, XFontStyle.Regular);
但这一次又一次地失败。我已将该文件导入到我的项目中,它是一个 .ttf 文件。我想不明白。
有没有人知道我的问题,也许知道我做错了什么?
当您下载 PDFsharp 源码包时,您会发现一个使用私有字体的工作示例。
使用它开始。
解压后查看文件夹"PDFSharp-MigraDocFoundation-1_32\PDFsharp\samples\Samples C#\Based on GDI+\PrivateFonts"。
如果你不能让它与你的字体一起工作,你至少会有一个 SSCCE,你可以提交它进行测试。
源代码可以在这里找到:
http://pdfsharp.codeplex.com/releases
或者可以使用 NuGet 的 PDFsharp 1.50 beta,您可以在其中使用 FontResolver 来处理私有字体。
在此处查看示例解析器:
http://forum.pdfsharp.net/viewtopic.php?p=8961#p8961
我已经成功解决问题了
我使用的是 WPF 构建而不是 GDI 构建。除此之外,Uri 错误,姓氏输入错误。
我目前正在编写一小段生成 PDF 文件的代码。为了遵循设计规范,我需要使用 'Helvetica Neue Condensed Bold' 字体。由于程序会运行,没有可用的字体安装我需要将其用作私有字体。
它不起作用。我尝试了不同的姓氏等等,但我总是失败...
byte[] data = File.ReadAllBytes(fontUri);
XPrivateFontCollection.Global.AddFont(data, "#Helvetica Neue Condensed Bold");
还有我要用字体的时候
XFont big = new XFont("Helvetica Neue Condensed Bold", 36, XFontStyle.Regular);
但这一次又一次地失败。我已将该文件导入到我的项目中,它是一个 .ttf 文件。我想不明白。
有没有人知道我的问题,也许知道我做错了什么?
当您下载 PDFsharp 源码包时,您会发现一个使用私有字体的工作示例。
使用它开始。
解压后查看文件夹"PDFSharp-MigraDocFoundation-1_32\PDFsharp\samples\Samples C#\Based on GDI+\PrivateFonts"。
如果你不能让它与你的字体一起工作,你至少会有一个 SSCCE,你可以提交它进行测试。
源代码可以在这里找到:
http://pdfsharp.codeplex.com/releases
或者可以使用 NuGet 的 PDFsharp 1.50 beta,您可以在其中使用 FontResolver 来处理私有字体。
在此处查看示例解析器:
http://forum.pdfsharp.net/viewtopic.php?p=8961#p8961
我已经成功解决问题了
我使用的是 WPF 构建而不是 GDI 构建。除此之外,Uri 错误,姓氏输入错误。