如何为电子书阅读器应用程序显示大量文本

时间:2013-01-22 18:06:47

标签: c# layout windows-runtime

我需要创建一个具有e阅读器功能的Windows应用商店应用程序。我必须提供流畅的阅读体验。目前,我对显示文本的知识包括在UI上删除文本块或文本框。我不知道如何显示大量文本来创建我正在寻找的E Reader体验。我应该使用哪种控件或控件组合?

1 个答案:

答案 0 :(得分:1)

您的文字呈现选项是

XAML控件

  • 的TextBlock
  • RichTextBlock
  • WebView + WebViewBrush

DirectWrite - 以上最终使用的内容。您可以将它与C#到SharpDX一起使用。

如果您需要进行测量等有时使用控件可能有点麻烦,并且可能无法提供与DirectWrite相同的功能或性能,但会为您提供文本选择,复制到剪贴板等的支持。 (确保IsTextSelectionEnabled设置为true)。

对于TextBlock中分页显示的measuring text维度 - 在代码后面创建一个TextBlock并调用Measure()和Arrange(),然后获取ActualWidth / ActualHeight来获取测量结果。

阅读Charles Petzold的Principles of Pagination文章。

考虑Rapid Serial Visual Presentation (RSVP)中使用的ReadQuick app速读方法。