ホームページ  >  記事  >  ウェブフロントエンド  >  CozyRSS 開発記録 17-Html2Xaml_html/css_WEB-ITnose

CozyRSS 開発記録 17-Html2Xaml_html/css_WEB-ITnose

WBOY
WBOYオリジナル
2016-06-24 11:17:161029ブラウズ

CozyRSS 開発記録 17-Html2Xaml

1. RssContentView はまだ最適化が必要です

前回は RssContentView の表示を行いましたが、RSS で返される説明 (概要) には HTML はおろか改行もありません内の記述子。行の折り返しは、制限されたサイズと自動行折り返しの説明を追加するだけで簡単に解決できます。

TextWrapping="Wrap" Margin="10 12 10 10"

2. wpf で HTML を表示する方法

HTML を表示します。 2 つの方向があります:

A. HTML を直接表示する

B. HTML を他のコンテンツに変換して表示する

HTML を直接表示する方法について説明します。さらにいくつかの実現可能な解決策があります。

A.1. wpf の制御

A.2. winform の WebBrowser スペースを使用する

A.3. cef (CefSharp ライブラリ) を使用する

これらのメソッドでは、HTML コンテンツを直接ロードできるものと、一時 HTML ファイルを構築する必要があるものがあります。どちらも効果を実現でき、HTML を適切にサポートしますが、Web コントロールと WPF のネイティブ レンダリング コントロールを完全には統合できないという欠点もあります。

HTML を他のコンテンツに変換して表示するには、いくつかの実現可能な解決策があります:

B.1. md に変換してから表示します (Html2Markdown ライブラリ)

B.2. xaml に直接変換します

最後に、結局のところ、xaml のドキュメント レイアウトを表現する能力は html に劣りません。もっと優れた参照ライブラリである RichTextBlock.Html2Xaml がありますが、これは WinRt 用です。苦労の末、やっとwpfで使えるライブラリHtmlTextBlockを見つけました。

3. HtmlTextBlock を使用します

nuget から HtmlTextBlock を追加し、HTML を表示するために HtmlTextBlockTest を参照するコントロールを追加します。

HTML 内のマークが山括弧 で囲まれており、HtmlTextBlock であるため、効果に問題があります。 parses は角括弧 [b] なので、変換する必要があります。また、加工はせず、スペースに変換させていただきます。最後に、関連するコードとエフェクトは次のとおりです。

まだ十分ではないように感じますが、HtmlTextBlock もオープンソースなので、将来的には別の Html2Xaml ライブラリを自分で構築するかもしれません。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。