我在Windows Phone 8 App中使用Font Awesome。
我在数据库中添加了一部分unicode(例如f000
)。
在我的代码中,我添加“\ u”来完成unicode。我这样添加:
_model.ContentImage = @"\u" + rec.UniContentImage;
当我调试它并添加断点时,contentimage
填充"\\uf000"
(在调试器中)。
并且不会显示字体。当我将contentimage中的内容(在调试器中)更改为"\uf000"
时,正确显示了令人敬畏的字体。
有谁知道如何在c#中正确和动态地添加字体真棒?
答案 0 :(得分:2)
这将加载FontAwesome自定义字体,以便在Windows 8.1 Universal apps中使用:
FontFamily customFont = new FontFamily("ms-appx:///Assets/FontAwesome.otf#FontAwesome");
textBlock.FontFamily = customFont;
textBlock.Text = "\uf164"; // thumbs up!
注意:设置' FontAwesome.otf'属性:
这里还有我用来为Binding返回Unicode字符串的数据模型方法(其中this.code是" \ uf164"):
public String unicode
{
get
{
String codePoint = this.code.Substring(2); // remove '\u' => "f164";
int unicode = int.Parse(codePoint, System.Globalization.NumberStyles.HexNumber);
String unicodeString = char.ConvertFromUtf32(unicode).ToString();
return unicodeString; // "\uf164"
}
}