WPF 嵌入字体文件

官方说明文档:将字体与应用程序一起打包

https://docs.microsoft.com/zh-cn/dotnet/framework/wpf/advanced/packaging-fonts-with-applications

自己多次测试后,得出准确用法:

假设字体文件放在主程序Resources文件夹内,字体文件名为FZXBSJW.TTF,生成类型为Resource即嵌入资源

在Xaml中引用标记为:

  FontFamily="pack://application:,,,/Resources/FZXBSJW.TTF#方正小标宋简体"

在C#中:

  FontFamily fontFamily = new FontFamily(new Uri("pack://application:,,,/"),"./Resources/#方正小标宋简体");

如果字体文件在其他项目的资源内,比如为OtherLib项目的Resources文件夹内,

在Xaml中引用标记为:

  FontFamily="pack://application,,,/OtherLib;Component/Resources/FZXBSJW.TTF#方正小标宋简体"

在C#中:

  FontFamily  fontFamily = new FontFamily(new Uri("pack://application:,,,/OtherLib;Component/Resources/"), "./#方正小标宋简体");

原文地址:https://www.cnblogs.com/TianPing/p/10482001.html