• JockoLi   2014/8/13 13:31:00
  • Silverlight中如何使用用户自定义字体
  • 关键字: Silverlight 自定义字体
  • 学习一个小技巧,如何设置用户自定义的字体。
     一、准备工作:
    去网上下载一个自己喜欢的字体,这里我下载了一个名为Disko.ttf的字体库。

    二、如何操作:
    新建一个Silverlight应用程序命名为:SLCustomerFont。其Page.xaml代码如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <UserControl x:Class="SLCustomerFont.Page"
        Width="600" Height="300">
        <Grid x:Name="LayoutRoot" Background="LightBlue">
           <TextBlock x:Name="txtBlockUserFont" 
                      Text="Show User Font" 
                      TextAlignment="Center"
                      FontSize="56" 
                      Margin="80"
                      FontFamily="Asian"
                      Foreground="Blue">           
           </TextBlock>   
        </Grid>
    </UserControl>

     在TextBlock我们使用系统自带的字体  FontFamily="Asian"
    如何使用我们下载的Disko.ttf字体呢 
    步骤如下:

    1 在Silverlight项目SLCustomerFont上单击右键,选择“添加”——“现有项”,在此将您要使用的字体文件(Disko.ttf)添加到项目中; 
    字体的英文名称(可以在项目中双击引入的字体文件,可以看到这样的内容-见图)为Disko。
      
    2 在添加好的字体文件上右键单击,选择“属性”;

    在此,我们有两种选择方式: 
     方式一: “复制到输出目录”属性值改为“如果较新则复制”,“生成操作”属性值改为“内容”; 
                   
    引用格式:   /字体文件名#字体英文名 (注意:含反斜杠)
     本例:

     <TextBlock x:Name="txtBlockUserFont" 
                      Text="Show User Font" 
                      TextAlignment="Center"
                      FontSize="56" 
                      Margin="80"
                      FontFamily="/Disko.ttf#Disko"
                      Foreground="Blue">           
           </TextBlock>   

     方式二 “复制到输出目录”属性值改为“不复制”,“生成操作”属性值改为“Resource”;  
                    
    引用格式:   字体文件名#字体英文名 (注意:不含反斜杠) 
    本例:


    1
    2
    3
    4
    5
    6
    7
    8
    <TextBlock x:Name="txtBlockUserFont" 
            Text="Show User Font" 
           TextAlignment="Center"
           FontSize="56" 
          Margin="80"
          FontFamily="Disko.ttf#Disko"
          Foreground="Blue">           
    </TextBlock>  

    效果如下图: