虽然我知道现在帮不了提问者了,但我留下这个来帮助未来查看此问题的人。
以下信息来自于MSDN上的使用应用程序打包字体页面:
将字体添加为内容项
您可以将字体作为项目内容项添加到应用程序中,这些内容项与应用程序的程序集文件分开。这意味着内容项不会作为资源嵌入到程序集中。以下项目文件示例显示如何定义内容项。
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!
<ItemGroup>
<Content Include="Peric.ttf" />
<Content Include="Pericl.ttf" />
</ItemGroup>
</Project>
为了确保应用程序能够在运行时使用字体,这些字体必须在应用程序的部署目录中可访问。应用程序项目文件中的
<ItemGroup>
元素允许您在构建过程中自动将字体复制到应用程序部署目录中。以下项目文件示例显示如何将字体复制到部署目录中。
<ItemGroup>
<Content Include="Peric.ttf">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Pericl.ttf">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
将字体添加为资源项
您可以将字体作为项目资源项添加到应用程序中,这些资源项嵌入在应用程序的程序集文件中。使用单独的子目录来存储资源有助于组织应用程序的项目文件。以下项目文件示例显示如何在单独的子目录中定义字体作为资源项。
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Resource Include="resources\Peric.ttf" />
<Resource Include="resources\Pericl.ttf" />
</ItemGroup>
</Project>
当您将字体添加为应用程序资源时,请确保在应用程序的项目文件中设置
<Resource>
元素,而不是
<Content>
元素。构建操作的
<Content>
元素不受支持。
以下标记示例显示如何引用应用程序的字体资源。
<TextBlock FontFamily="./resources/#Pericles Light">
Aegean Sea
</TextBlock>
请点击上面的链接了解有关从代码引用字体资源和其他有用信息的详细信息。