如何使用TrueType自定义嵌入字体在WebBrowser控件中显示内容?

时间:2013-06-17 16:41:09

标签: c# windows-phone-7 windows-phone-8 webbrowser-control

我想显示大量文本,由于高度限制,这在TextBlock中是不可能的。

这留下两个选择:

ScrollableTextBlock 控件确实很好,唯一的限制是文本不能居中对齐。但这是我的要求!

然而, WebBrowser控件是一种妥协。但是还有很多其他问题。   - 文本正在滚动,即使只有一行。   - 身高是个问题。   - 最大的问题是使用自定义字体,例如,使用亚洲从右到左字体。

问题

  • 有人可以告诉我如何使用自定义字体和WebBrowser控件来显示文字?

谢谢!

示例(我是怎么做的):

   string str =  @"<html>
        <head>
            <style>
                @font-face {
                    font-family:my_font;

                    url('fonts/chFont.ttf') 
                    font-weight: normal;

                    font-style: normal;

                }

            </style>

            <meta charset=""utf-8"">
        </head>
        <body bgcolor='" + backgroungColor + @"'>
            <center><font style='font-family:my_font;' size='" + fontSize + "' face='" + fontFamily + @"' color='" + foregroundColor + @"'><p style='line-height:200%;'>" + strData + @"</p></font></center>
        </body>
    </html>"


   WebBrowser.NavigateToString(str);

1 个答案:

答案 0 :(得分:0)

如果您有SDK 8,我建议您尝试将此代码解析为Windows Phone HTML5应用程序,只是为了知道它是否有效。 - 这是必要的。然后尝试用非相对

替换路径url('fonts / chFont.ttf')