UWP,WPF 打包Roboto 字体
在uwp中添加和使用第三方字體過程和wpf基本差不多,這里簡述一下過程,只是為了引出在uwp中使用roboto字體的問題。
(完整的代碼可以在這里下載 https://download.csdn.net/download/mochounv/12869684 , 其中包含uwp和wpf兩個示例工程)
?
第一步,添加字體資源
如從 https://fonts.google.com/ 或者 https://www.fontsquirrel.com/ 等網站。
(我這里使用的是ttf,其它一些格式如otf 也是可以的),將字體文件加入工程文件中,如下。
記住編譯動作為Content(而wpf中為resource), 且不需要復制到輸出目錄。
?
第二步,在xaml添加使用該字體的聲明。
格式為? "[FontFilePath]#[FontName]" 如這里的path 為Fonts/Roboto-Regular.ttf
雙擊打開前面下載的字體ttf文件,可以看到FontName如下
?
所以使用該字體的完整聲明如下:
?
使用方法如下:
同時添加一個使用字體默認字體來作比較,結果如下:
第一行應用了RobotoRegular字體。
在這里有個問題,此時如果再添加Roboto-Medium.ttf,查看Font Name 如下:
所以按規則路徑聲明為
使用:
可是結果確是這樣的:
可見RobotoMedium并沒有使用上去。
將聲明改為這樣
發現一切正常了
?
而在wpf并沒有這個問題。
?
最開始懷疑是Font Name帶有空格,導致解析失敗,可是在這個例子里
https://blog.mzikmund.com/2017/01/using-custom-fonts-in-cs-uwp-apps/, Font Name帶空格似乎也是沒有問題。
所以對于roboto字體的使用中,在uwp中路徑好像只能是這樣?[FontFilePath]#roboto
至于原因還是不明白。
?
總結
以上是生活随笔為你收集整理的UWP,WPF 打包Roboto 字体的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cordova 更改app版本_Cord
- 下一篇: SQLyog12.08安装详细教程