Xamarin.Forms - 从共享项目加载字体

时间:2018-04-05 07:27:03

标签: c# xamarin fonts xamarin.forms uwp

我已经建立了一个大型库来与我的所有Xamarin.Forms项目一起使用。此lib定义样式,共享可重用的代码片段等。现在因为我在不同的项目中多次使用FontAwesome,我想与库共享.ttf-File。

实际上字体存储在我的UWP Assets/Fonts/文件夹中,并按如下方式加载:

<On Platform="UWP" Value="Assets/Fonts/fontawesome-webfont.ttf#FontAwesome" />

这很安静,不需要实现自定义rednerer(至少对于UWP)。 问题是当我将它定义为EmbeddedResource时,Font似乎没有被加载,因此我不知道如何从库项目中加载它。

也许有人曾经做过这样的事情,我可以告诉解决方案。谢谢!

编辑:

我重新创建了一个项目,但是如果没有在我的计算机上安装它,我就无法加载它。您可以在此处下载项目:https://github.com/DirtyNative/FATest

1 个答案:

答案 0 :(得分:1)

要使字体可用,请将其构建操作设置为Content,您可以将其称为:

FontFamily="ms-appx:///LibraryName/Path/To/Font.ttf#Name"

似乎UWP无法从XAML加载嵌入式资源,或者至少我还没有找到可行的方法。