我有一个使用Visual Studio 2012 Web Express运行的Silverlight 4应用程序。我在项目的Fonts文件夹中添加了CustomFont.zip。该文件标记为“资源”。
当我使用字体时,例如在TextBlock中,我可以在Visual Studio XAML设计器中看到它。但是当我运行应用程序时,它使用de default标准字体。
这是我的TextBlock
的一个例子<TextBlock FontFamily="/Fonts/CustomFont.zip#MyFontName" >Hello World</TextBlock>
我尝试使用嵌入式Zip,如上例所示。我也直接尝试了字体(没有zip)。尝试使用TTF和OTF字体。总是相同的结果我可以在设计时看到它,但不能在运行时看到它。
由于
答案 0 :(得分:1)
我确定你现在有这个工作,但我有同样的问题。我通过格式化我的FontFamily字符串得到它的工作,如下所示,你绝对不希望该文件在一个zip文件中。我在我创建的名为“Fonts”的项目文件夹中有我的字体。
<TextBlock FontFamily="./Fonts/MyFontName.ttf#MyFontName" >Hello World</TextBlock>
答案 1 :(得分:1)
我也有同样的问题,我解决了如下。我不得不经历很多论坛,包括这个,但都没有。但有些论坛要求我强行加载字体,然后再说明我的兴趣。
在我的TextBlockStyles.xaml资源字典中,我创建了一个styke
<Style x:Key="RadWindowTitleTextStyle"
TargetType="TextBlock">
<Setter Property="Foreground"
Value="#FFB9D449" />
<Setter Property="FontSize"
Value="18.667" />
<Setter Property="FontFamily"
Value="/sampleawebsite.application;component/Assets/Fonts/UBSHead.ttf#UBSHeadline" />
</Style>
在我的MainPage中,我只是在下面加载我的字体
<TextBlock Text="Do not display Font load purpose only"
Width="1"
Height="1"
Style="{StaticResource RadWindowTitleTextStyle}"
Foreground="Transparent" />
以下是我对我的一个名为RadWindowStyles.xaml的ChildWindow弹出式样式资源字典感兴趣
<TextBlock Text="{TemplateBinding Title}"
Style="{StaticResource RadWindowTitleTextStyle}" />