15

カスタム フォントをリソースとしてアプリケーションに追加しようとしています。アプリケーションに「CustomFont」ディレクトリがあり、その中のすべてのフォントが「リソース」に設定されています

<Window.Resources>
    <Style x:Key="Gotham-XLight">
        <Setter Property="TextElement.FontFamily" 
                Value="/CustomFonts;Component/#Gotham-XLight" />
    </Style>
</Window.Resources>

そして、私のTextBlockにはこれがあります:(グリッド内)

<TextBlock x:Name="TimeTextBlock" Style="{DynamicResource Gotham-XLight}" 
           TextAlignment="Center" FontSize="25" FontWeight="Bold" 
           Foreground="White" Text="TextBlockTimer" 
           Margin="105,242.974,0,226.975" HorizontalAlignment="Left" 
           Width="221.919" />

しかし、人々が言うように、フォントが表示されません。私は何か間違ったことをしていますか?

4

4 に答える 4

20

フォントの名前を確認することもできます。ファイルの名前ではなく、フォントの名前を指定する必要があります。

フォントファイルをダブルクリックすると、「フォント名:」が表示されます。これは、スタイルで指定されていることを確認するためのものです。

于 2008-12-11T05:58:34.300 に答える
7

これを試して

<Window.Resources>
    <Style x:Key="Gotham-XLight">
        <Setter Property="TextElement.FontFamily" Value="CustomFonts/#Gotham-XLight" />
    </Style>
</Window.Resources>

また、実行時にスタイルを変更する予定がない場合は、{StaticResource Gotham-XLight}パフォーマンスが大幅に向上します。

于 2008-12-11T05:33:34.570 に答える
2

xaml では、次のようにしました。

    <Button Grid.Column="1" Grid.RowSpan="2" Name="start" Margin="5" Click="start_Click">
        <TextBlock Name="test" FontFamily="pack://application:,,,/Y_Yoga;Component/Resources/#FontAwesome">&#xF04B;</TextBlock>
    </Button>

ただし、#FontAwesome がフォントの埋め込み名なのか、.ttf ファイルの名前を変更した結果なのかはわかりません。

お役に立てれば幸いです!

于 2013-05-24T10:20:02.620 に答える
1

返信が遅くなりましたが、言及する価値があります。ウィンドウにグローバルに適用されるカスタム フォントを追加するには、これを csproj ファイルに追加して、プロジェクトの Fonts フォルダーのフォントをリソースとして含めることができます。

 <ItemGroup>
    <Resource Include="Fonts\*.ttf" />
 </ItemGroup>

次に、ウィンドウ XAML で、ウィンドウ部分に FontFamily を指定できます。

<Window x:Class="Namespace.MainWindow"
    ...
    FontFamily="/Fonts/#[FONT NAME]"
    Title="">
  <Grid>
    ...
  </Grid>
</Window>

私はそれを理解するのに少し時間を費やしたので、これが誰かを助けることができることを願っています.

于 2020-02-11T14:37:32.390 に答える