我正在编写其中一个阅读器应用程序。我想知道您是否对使用WebViewand Canvas(with drawText()) 来实现它有意见和反对意见。
有什么要求:
- 根据几个 html 标签格式化文本:
<p>,<strong>,<h3>,<br/>,<a>, - 在文本中显示图像(它们在
<img>标签中), - 在平板设备上以两列显示文本,
- 分页文本(谷歌潮流风格)
粗体字是绝对需要的。后者是非常需要的,但我可以放弃它们。
所以据我所知:
WebView在显示 html 格式的文本时会很棒。我也不必照顾加载图像,它们会自动加载<img>标签(它们会不会,即使我使用loadData()而不是loadUrl()?)。如果我尝试对文本进行分页,问题就开始了。是否有可能计算 a 中文本的大小WebView并将其重新排列到多个页面中(使用ViewPager)?
Canvas在计算文本大小、将其放入列和页面时非常有用。但是我必须自己处理所有的 HTML 标签,自己格式化文本。更糟糕的是,我将不得不提取图像的 url,处理下载并将它们放回文本(每次加载时重新排列整个文本)。我对吗?
你能指出使用它们的其他一些优点和缺点吗?你会选择哪个?或者也许是别的什么?或者是否有一些库至少为我做了一些工作?