WP7 - 没有拿起嵌入字体

时间:2012-03-11 17:27:33

标签: windows-phone-7 fonts

我一直在尝试在WP7应用程序中使用一些自定义字体。

我按照http://www.jeffblankenburg.com/2010/10/24/31-days-of-windows-phone-day-24-embedding-fonts/按照示例进行操作,但在我的项目中,它根本不会选择自定义字体。 我已经在这个例子中下载了示例项目,这个工作正常。

所以,我现在使用了那里使用的相同字体,并包含在我的项目中。我已确保文件上的属性相同(Build Action ='Content'和Copy To Output Directory =“Always”)

我在XAML中使用的方式完全相同,即

  FontFamily="Fonts/DigitalDream.ttf#Digital Dream" FontSize="24"

但无济于事。自定义字体只是被忽略。有什么东西我缺少,或设置..任何允许这在一个项目中工作,但不是另一个项目?

我发现如果我的XAML页面是在根级别定义的,即在项目的正下方,它会起作用,但在我的情况下,我将它放在'Views'文件夹中。

我的理解是这样的      FontFamily =“/ Fonts / DigitalDream.ttf #Digital Dream”FontSize =“24”

应该从项目的根文件夹开始吗?

  • 谢谢

2 个答案:

答案 0 :(得分:4)

自定义字体可能有点棘手。我曾经花了几个小时试图嵌入一个.otf字体,却发现它似乎并不可行。

但是,你走在正确的轨道上。 .ttf字体应该是可嵌入的。但是,很难获得正确的路径和文件名组合来使字体工作。

我发现在XAML中处理这些更困难的“魔术字符串”类型情况的最简单方法是让Expression Blend完成繁重的任务。

这是关于使用Blend嵌入字体的blog post。使用Blend的好处在于它为您提供了一些正确设置的视觉指示 - 即。您可以在字体选择菜单中看到所需的字体。这是最终让我了解.otf问题的原因。我在Blend中看不到字体。

以下是我在其中一个应用中使用的自定义字体示例:

<TextBlock Name="MyTextblock"
   FontFamily="/MyAppName;component/fonts/Fonts.zip#Segoe UI Mono">

这是FontFamily URI是一件很难的事情。我很确定这是你的问题。

答案 1 :(得分:0)

我实际上遇到了同样的问题。我跟着一切都到了点,但我还是无法嵌入一个特定的字体。所以我创建了一个新项目并尝试在那里嵌入字体。仍然没有运气。然后我尝试嵌入其他字体。而且,只要我输入FontFamily属性,我就可以看到它已经嵌入了。这特别奇怪,因为我不必更改字体的任何属性。

我在Blend中打开了项目,然后单击右侧的字体属性框。花了几秒钟,然后它首先嵌入了我遇到问题的字体。