Windows Phone 8中的自定义字体用法

时间:2012-12-29 20:52:31

标签: c# fonts windows-phone-8

我对Windows Phone 8模拟器有一个奇怪的问题! 我有一个小测试应用程序,我在主页上更改“页面名称”文本框,以便使用自定义字体显示。 现在在视觉工作室设计师中我看到了这种字体,在运行应用程序时我也在模拟器中看到它,所以一切都很好......

但是,当我将主页面移动到名为View的文件夹并更改WMAppManifest.xml以反映此移动时>导航页面现在设置为View / MainPage.xaml。 我仍然在我的设计师中看到这个自定义字体,但在模拟器中不再显示!!

我还没有拥有wp8设备......所以当你尝试将故障项目部署到手机上时,如果这个问题相同,那么有人可以为我验证吗?

有没有人知道为什么会这样?非常讨厌无法在模拟器中看到正确的设计。

Working and failing projects

3 个答案:

答案 0 :(得分:9)

我自己找到了解决方案......因为它引用了styles.xaml中的字体。

它应该是一条完整的道路! 所以不要设置:

<Setter Property="FontFamily" Value="Fonts/ClementePDae-Light.ttf#ClementePDae" />

设置:

<Setter Property="FontFamily" Value="/PhoneApp1;component/Fonts/ClementePDae-Light.ttf#ClementePDae" />

比一切都有效!

答案 1 :(得分:3)

我希望你已经找到了解决方案。请查看How to add Custom Fonts

这适用于Windows Phone 8(Lumia 920)
在.ttf之后标记字体名称非常重要 如果在PC上预览ttf文件并写入完全相同的字体名称,则可以找到字体名称。

答案 2 :(得分:0)

首先,您应该将外部ttf保存到项目中(如果您想使用外部字体)。

然后,你可以使用它:

FontFamily="Helvetica.ttf#Helvetica"

FontFamily="Cookies.ttf#Cookies"    

当.ttf字体文件位于根文件夹中时,在设计和运行时可以正常工作。

FontFamily="/FontsTestApp;component/Cookies.ttf#Cookies"    

与上述相同。

FontFamily="/Font/Cookies.ttf#Cookies

当.ttf字体文件位于子文件夹&#34; font&#34;中时。在设计和运行时工作正常。

FontFamily="../Fonts/Cookies.ttf#Cookies";

当使用该字体的XAML文件驻留在另一个子文件夹中时。在设计和运行时工作正常。

FontFamily="../Fonts/Cookies.ttf#Cookies";  

如果XAML文件位于根文件夹中,则字体仅在运行时应用,而不是在设计时应用。