編集:HTMLを正しくレンダリングするWebViewを試しましたが、非常に遅く、新しいデータが読み込まれると視覚的にちらつきます。WebView内でHTMLフォーマットを処理するものを調べています。それ自体は少し速いかもしれません...
電卓を作っています。入力文字列を実際にきれいに見せるために、私はこのHTML.FromHTML()
メソッドを使用して、ログのスーパースクリプトの累乗とサブスクリプトを処理し、textViewsに表示しています。たとえば、次のHTMLはブラウザで処理され、おそらく正しいように見えます(ChromeとIEでテスト済み)。
12 + 10 log 10(10 log 10(33))
ログの添え字10は、付随するログテキストのすぐ下に適切に配置されており、ネストしても問題は発生しません。さて、HTML.FromHTML()
Android 4.0で使用されているように:
間違いなく間違っています。<sub>
タグは、折り返しテキストスタイルの添え字を意味するのではなく、ベースラインからの垂直方向のオフセットを意味しているように見えます。つまり、<sup>
タグが1つあると、囲まれたテキストがベースラインから1一定量オフセットされ、2つ<sup>
のタグがあると、ベースラインからこれらの一定量が2つオフセットされます。さらに悪いことに、<sub>
タグはこの一定値を差し引くだけです。怪我に侮辱を加えるために、タグが適切にスケーリングする代わりに、またはタグ<small>
内のテキストのオフセットもスケーリングします。<sup>
<sub>
HTML.FromHTML()
テキストがWebブラウザでレンダリングされるのと同じようにメソッドを動作させる方法はありますか?これに対する答えが「今はない」または「独自のHTMLパーサーを作成できる!」であると仮定すると、同様の機能を作成するための提案はありますか?
ありがとう!