C# 如何在应用程序中使用自定义字体,而不将每个元素的字体系列设置为静态资源?
我正在制作一个Windows 8.1通用桌面应用程序,客户坚持我们使用Gotham字体。我们使用的是ttf版本的字体,我把它放在/Assets/Fonts/文件夹中自己的“Gotham”文件夹中。我需要“打包”这种字体,并在应用程序的每个部分使用它,这样即使客户端设备的系统上没有安装这种字体,它也能工作 根据我的研究,我只能在App.xaml页面的资源字典中将字体系列设置为主题资源,然后为使用它的每个页面元素调用它C# 如何在应用程序中使用自定义字体,而不将每个元素的字体系列设置为静态资源?,c#,xaml,windows-8.1-universal,C#,Xaml,Windows 8.1 Universal,我正在制作一个Windows 8.1通用桌面应用程序,客户坚持我们使用Gotham字体。我们使用的是ttf版本的字体,我把它放在/Assets/Fonts/文件夹中自己的“Gotham”文件夹中。我需要“打包”这种字体,并在应用程序的每个部分使用它,这样即使客户端设备的系统上没有安装这种字体,它也能工作 根据我的研究,我只能在App.xaml页面的资源字典中将字体系列设置为主题资源,然后为使用它的每个页面元素调用它 FontFamily="ms-appx:///Assets/Fonts/Goth
FontFamily="ms-appx:///Assets/Fonts/Gotham/Gotham-...ttf#Gotham"
(其中,…
为“粗体”或“浅色”等)
我的主管真的不喜欢这种方法,他希望能够使用FontWeight
获得权重,他希望能够在app.xaml中设置字体系列。目前我是这样设置的:
<Application
x:Class="UndisclosedAppNameHere.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:UndisclosedAppNameHere">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.ThemeDictionaries>
<ResourceDictionary x:Key="Default">
<FontFamily x:Key="GothamFontFamily">
pack://application:,,,/Assets/Fonts/Gotham/Gotham.ttf#Gotham
</FontFamily>
</ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>
pack://application:,,,/Assets/font/Gotham/Gotham.ttf#Gotham
正确的方法是什么?为每个元素设置字体系列是唯一的方法,还是可以按照我的意愿进行
谢谢你,扎克如果你否决了我的问题,请解释我能做些什么来改进它。我试图弄清楚我的问题。我也不知道为什么它被否决了;在我看来,这是一个很好的问题。如果你否决了我的问题,请解释我能做些什么来改进它。我试图弄清楚我的问题。我也不知道为什么它被否决了;在我看来,这是一个伟大的问题。