【问题标题】:Adding a custom font to a windows phone 8 app将自定义字体添加到 Windows Phone 8 应用程序
【发布时间】:2013-08-26 16:50:02
【问题描述】:

我已经阅读了诸如 31 days of windows phone day 24 embedding-fontswindows 8 xaml tips custom fonts 之类的文章,它们非常清楚简单地解释了如何执行此操作。

但由于某种原因,我无法弄清楚,我的自定义字体没有显示在我的应用程序中,无论是在设计器视图中还是在我运行它时。

为了确保我没有遗漏任何步骤,我在这里展示了我所做的,以获取有关我的问题可能是什么的任何建议:

1.首先,这是我的 xaml 文本块代码

<StackPanel Grid.Row="1" x:Name="BottomPanel" Height="120" Width="800" Orientation="Horizontal">
            <StackPanel.Background>
            <SolidColorBrush Color="{StaticResource PhoneSemitransparentColor}"/>
            </StackPanel.Background>
            <TextBlock x:Name="MainTextBlock" FontFamily="/Fonts/KOMIKAX_.ttf" TextWrapping="Wrap" Text="Hello" Width="680" Height="120" Margin="10,0,0,0" FontSize="25" Padding="20,10"/>

</StackPanel>

2.我在项目中创建了一个文件夹,将其命名为“Fonts”,这是我复制字体文件的位置。

3.我把字体文件的Build Action改成了Content。我最初将Copy To Output Directory 属性保留为None,然后将其更改为Copy If Newer。没有成功。

我做错了什么或遗漏了什么?

【问题讨论】:

  • 使用文件名作为字体家族看起来很奇怪......你打开ttf看到字体的真实名称了吗?通常我会使用类似“.\Fonts\MyCustomFont.ttf#Custom font name”
  • 字体的真实名称是“Komika Axis”但是你不应该使用文件名,而不是FontFamily属性中的字体名称吗?

标签: c# xaml fonts windows-phone-8


【解决方案1】:

这对我有用。

首先在您的应用程序中创建一个名为 Fonts 的文件夹,然后向其中添加字体,然后使用以下语法。我用过,效果很好。

<TextBlock FontFamily="/Fonts/Comic.ttf#Comic" TextWrapping="Wrap" Text="Hello" FontSize="25"/>

确保 Build Action 必须设置为 Content, 右键点击文件夹中的字体,点击属性,然后选择Build Action作为Content,否则在Emulator和Device上不起作用。

【讨论】:

    【解决方案2】:

    试试这个

    <TextBlock x:Name="MainTextBlock" FontFamily=".\Fonts\KOMIKAX_.ttf#Komika Axis" TextWrapping="Wrap" Text="Hello" Width="680" Height="120" Margin="10,0,0,0" FontSize="25" Padding="20,10"/>
    

    如果这不起作用,请记住格式为 .\FontPath\FontFileName.ttf#FontName

    【讨论】:

    • 语法错误。它应该是。带正斜杠。 /
    猜你喜欢
    • 2011-07-10
    • 1970-01-01
    • 1970-01-01
    • 2020-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多