【问题标题】:Embedded font doesn't recognize bold嵌入字体无法识别粗体
【发布时间】:2016-03-08 22:07:12
【问题描述】:

考虑到同一种字体有多个文件,我如何在我的 silverlight 项目中引用嵌入字体?

我在 Fonts.xaml 文件中使用了以下标签:

<FontFamily x:Key="MyFamily">../../Resources/Fonts/segoeui.ttf#Segoe UI</FontFamily>

在另一个文件中,我有一个标签可以将此字体系列链接到任何 TextBlock。

当我有一个简单的 TextBlock 时,它可以正常工作:

<TextBlock Text="Simple" /> 

但是当我想要一个粗体文本时,它不起作用;

<TextBlock Text="Simple" Font-Weight="Bold" /> 

我知道粗体字体在另一个文件 (segoeuib.ttf) 中,但由于我指的是特定文件,而不是字体名称,所以它没有找到。我如何引用这两个文件,而不必将 FontFamily 标记添加到我所有需要显示粗体文本的 TextBlock?

PS:如果我使用字体系列名称,没有文件名,它会工作,但如果我的用户在他/她的计算机中没有字体,它将无法工作。

【问题讨论】:

  • 是否假定您的“字体粗细”属性只是拼写错误,因为它应该是 FontWeight?哦,还可以补充一下,我很确定 SegoeUI 在 SL 中是标准的,您可以通过 Segoe UI 直接点击它,无需外部参考。
  • 在 MAC 上不可用。
  • 这个字体在 MAC 上不可用,所以当我在 mac 机器上打开我的应用程序时,它正在使用另一种字体,并且弄乱了我所有的界面。

标签: xaml silverlight fonts


【解决方案1】:

我发现了怎么做,分享以防有人遇到同样的问题。

不引用.ttf文件,直接把所有字体文件放在一个zip里,引用zip即可:

<FontFamily x:Key="MyFamily">../../Resources/Fonts/SegoeUI.zip#Segoe UI</FontFamily>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-10
    • 2012-05-24
    • 2012-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    相关资源
    最近更新 更多