我需要创建一个具有电子阅读器功能的 Windows 商店应用程序。我必须提供流畅的阅读体验。目前,我显示文本的知识包括在 UI 上放置文本块或文本框。我不知道如何显示大量文本来创建我正在寻找的电子阅读器体验。我应该使用哪个控件或控件组合?
问问题
667 次
1 回答
1
您的文本渲染选项是
XAML 控件
- 文本块
- 富文本块
- WebView + WebViewBrush
DirectWrite - 以上所有最终使用的内容。您可以通过 SharpDX 将它与 C# 一起使用。
如果您需要进行测量等,这些控件有时使用起来可能有点麻烦,并且可能不会像 DirectWrite 那样为您提供强大的功能或性能,但会给您支持文本选择、复制到剪贴板等(确保IsTextSelectionEnabled 设置为 true)。
为了在 TextBlock 中测量分页显示的文本尺寸 - 在后面的代码中创建一个 TextBlock 并调用 Measure() 和 Arrange(),然后获取 ActualWidth/ActualHeight 以获取测量值。
阅读 Charles Petzold 的分页原理一文。
于 2013-01-22T18:53:34.500 回答