c# - PDFsharp - 使用私有(private)字体

标签 c# asp.net fonts pdfsharp

我目前正在编写一小段生成 PDF 文件的代码。为了遵循设计规范,我需要使用“Helvetica Neue Condensed Bold”字体。至于程序将运行的位置,没有可用的字体安装我需要将其用作私有(private)字体。

它不起作用。我尝试了不同的姓氏等等,但我总是失败...

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 源码包时,您会发现一个使用私有(private)字体的工作示例。
使用它开始。
解压后查看文件夹“PDFSharp-MigraDocFoundation-1_32\PDFsharp\samples\Samples C#\Based on GDI+\PrivateFonts”。

如果您不能让它与您的字体一起使用,您至少会有一个 SSCCE,您可以提交它进行测试。

源代码可以在这里找到:
http://pdfsharp.codeplex.com/releases

或者可以使用 NuGet 的 PDFsharp 1.50 beta,您可以在其中使用 FontResolver 来处理私有(private)字体。
请在此处查看示例解析器:
http://forum.pdfsharp.net/viewtopic.php?p=8961#p8961

关于c# - PDFsharp - 使用私有(private)字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31379359/

相关文章:

C# 嵌套类的序列化

c# - 日期时间本地化。任何标准/最佳实践

HTML 表格边框不适用于 IE10

iphone - 如何在 UILabel 中垂直居中嵌入字体?

linux - 如何在我的 AWS EC2 实例上安装特定字体?

c# - 具有多列的 WinForms 组合框 (C#)?

c# - 如何遍历链表

asp.net - 有什么好的引用资料或工具可用于将 ASP 转换为 ASP.NET?

c# - 在 Entity Framework 上运行嵌套查询时出现"Value cannot be null. Parameter name: source"

python - 如何在 python shell 中检查 matplotlib 的默认字体?