C#winrt / metro app,WebView自定义字体

时间:2014-12-12 10:37:12

标签: c# fonts webview windows-runtime microsoft-metro

有谁知道如何在WebView中加载自定义字体?
我尝试过:

@font-face {
     font-family: 'Gloria Hallelujah';
     font-style: normal;
     font-weight: 400;
     src: url(Gloria.woff);
 }

根据this

但事实是,只有当我们致电WebView.Navigate(urlToHtmlDocWithCustomFonts);时,这才有效 但在我的情况下,我正在调用WebView.NavigateToString(htmlStringWithCustomFonts);,在这种情况下,自定义字体不起作用!

以下是包含来自该tuto的来源的项目,如果您想要重现:link

所以我的问题是,是否可以使用自定义字体将html字符串加载到webview中?

1 个答案:

答案 0 :(得分:0)

使用WebView。NavigateToLocalStreamUri代替NavigateToString。这将允许您提供IUriToStreamResolver将引用的文件(如图像和字体文件)流式传输到您的页面中。使用NavigateToString,您需要在流中对它们进行编码,因为NavigateToString没有要查找的上下文并查找引用的文件,例如Gloria.woff。

MSDN的XAML WebView control sample演示了如何编写和使用解析程序在引用的文件中流式传输。