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

本文关键字:WebView 自定义 字体 app winrt metro | 更新日期: 2023-09-27 18:34:05

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

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

据此。

但问题是,这只有在我们调用WebView.Navigate(urlToHtmlDocWithCustomFonts);
时才有效但就我而言,我打电话给WebView.NavigateToString(htmlStringWithCustomFonts);,在这种情况下,自定义字体不起作用!

这是该项目,其中包含来自该 tuto 的来源,以防您想要复制:链接。

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

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

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

MSDN 的 XAML WebView 控件示例演示如何编写和使用解析程序在引用的文件中进行流式处理。