在Windows Phone中嵌入OTF字体

本文关键字:OTF 字体 Windows Phone | 更新日期: 2023-09-27 18:02:19

我需要在Windows Phone 8应用程序中使用OTF字体。我在http://blendrocks.com/otf-and-ttf-fonts-in-windows-phone-and-store-apps/上找到了一篇关于如何做到这一点的文章。我跟着文章,但奇怪的是它不与我的字体工作,但与其他字体工作。

字体文件是一个资源,我像这样使用它

<TextBlock Text="BRANDON GROTESQUE" Margin="9,-7,0,0" FontFamily="/FontProblem;component/Fonts/BrandonGrotesque-Regular.otf#BrandonGrotesque-Regular" FontSize="36"/>

我也尝试过将其转换为TTF并根据http://nicksnettravels.builttoroam.com/post/2013/06/22/TTF-Font-with-Windows-Phone-8.aspx嵌入它,但没有运气。

下面是重现这个问题的完整解决方案:https://dl.dropboxusercontent.com/u/73642/FontProblem.zip

我想是字体的问题。

在Windows Phone中嵌入OTF字体

如果您将Build Action设置为Content,则不必在项目名称前加上,因此您可以使用:

/Fonts/BrandonGrotesque-Regular.otf

只是想让你知道;-)

回到你的问题:
#后面的文本必须是真实的字体名称(而不是文件系统中的名称)。您可以通过在Windows资源管理器(使用Windows字体查看器)中打开字体来找到此名称。
它将显示"Brandon怪诞常规"。如果指定了字体粗细,字体查看器会追加字体粗细,但您必须省略它。
所以你的字体名称是Brandon怪诞

你可以这样使用:

<TextBlock FontFamily="/FontProblem;component/Fonts/BrandonGrotesque-Regular.otf#Brandon Grotesque" />

或者将构建操作设置为content:

<TextBlock FontFamily="/Fonts/BrandonGrotesque-Regular.otf#Brandon Grotesque" />

使用附带的溶液进行测试