0

フォントを Windows Phone アプリケーションに埋め込むのは非常に簡単ですが、静的な html ファイルを表示している WebBrowser コントロールでフォントを使用する方法が見つかりません。それを行う方法はありますか?

以下のコードを使用して、html ファイルを表示しています。

        Uri uri = new Uri(AppResources.red_termsOfUse_URI, UriKind.Relative);
        Stream stream = Application.GetResourceStream(uri).Stream;
        using (StreamReader reader = new StreamReader(stream, new System.Text.UnicodeEncoding()))
        {
            string htmlDocument = reader.ReadToEnd();
            this.webBrowser.NavigateToString(htmlDocument);
        }
4

2 に答える 2

2

webBrowser コントロールは、ページの css (またはスタイル要素) で定義されたフォントでページを表示します。(埋め込みフォントは使用しません)

Javascript を使用して実行時にフォントを設定するか、HTML ファイル自体の中で必要なフォントを定義することができます (ファイルが制御下にある場合)。

WP7 WebBrowser コントロールへの JavaScript の挿入の詳細については、こちらをお読みください。

編集:
アクセスできる場合はcss、これを試して埋め込みフォントを使用することもできます (他の HTML ページと同じです)。

(Not tested)
@font-face {
    font-family: your_font;
    src: local(your_font), url('fonts/bttf.ttf') format('opentype');
}

Asset とともにローカル Html ページを表示する方法については、こちらを参照してください。それが理にかなっていることを願っていますが、今はテストできません。

于 2012-09-04T13:28:32.243 に答える
1

私は似たようなことをしなければなりませんでした。私の友人の 1 人が、CSS とデータ URL スキームを使用して提案されたソリューションの一部を見つけました。その後、いくつかの戦いの後、私はそれを機能させました。

私の場合、(Navigate to a Urlの代わりに)NavigateToStringを使用していますが、いくつかのトリックでうまくいくと思います

WebBrowser のカスタム フォントのサンプル

これは難しいことがわかったので、いくつかのコード サンプルを含むブログ投稿を作成しました。

これが私のブログ投稿です: http://hmadrigal.wordpress.com/2014/03/17/how-embed-fonts-in-windows-phone-8-using-a-webbrowser-control/

これが私のコードサンプルです: https://github.com/hmadrigal/playground-dotnet/tree/master/MsWinPhone.EmbedFont

乾杯、ハーブ

于 2014-03-17T21:03:45.510 に答える