Fonts 是否将System.Drawing.Font转换为Doc.DocumentObjectModel.Font?

Fonts 是否将System.Drawing.Font转换为Doc.DocumentObjectModel.Font?,fonts,casting,system.drawing,migradoc,Fonts,Casting,System.drawing,Migradoc,我想知道为什么我不能将System.Drawing.Font强制转换为MigraDoc.DocumentObjectModel.Font。 我需要在应用程序中加载特定字体。我想通过这样的风格来实现: PrivateFontCollection pfc; FontFamily family = LoadFontFamily(@".\fonts\TitilliumWeb\TitilliumWeb-Black.ttf", out pfc); System.Drawing.Font titilliumW

我想知道为什么我不能将System.Drawing.Font强制转换为MigraDoc.DocumentObjectModel.Font。 我需要在应用程序中加载特定字体。我想通过这样的风格来实现:

PrivateFontCollection pfc;
FontFamily family = LoadFontFamily(@".\fonts\TitilliumWeb\TitilliumWeb-Black.ttf", out pfc);
System.Drawing.Font titilliumWeb = new System.Drawing.Font(family, 11.0f);

style.Font.ApplyFont((MigraDoc.DocumentObjectModel.Font) titilliumWeb);
或者更好的是,我能以某种方式轻松创建一个文档字体吗

找到了一个关于如何向MigraDoc添加字体的链接,但它并没有真正帮助我

仅当一个类派生自另一个类或实现接口时,转换才起作用

Private Fonts示例中显示的技术有效(目前它仅适用于WPF构建,因此如果使用PDFsharp/MigraDoc的GDI+构建,只需切换到WFP构建)


您可以在PrivateFontCollection中注册所需的字体。您只需在样式定义中提供字体名称,MigraDoc将使用这些字体创建PDF文件。

非常感谢!我使用的是GDI+。我会试着切换,看看是否有效。