富文本处理#
Qt 富文本处理、编辑和显示功能的概述。
Scribe 框架提供一组用于读取和操作结构化富文本文档的类。与 Qt 中的先前富文本支持不同,这些新类围绕 QTextDocument
类而不是原始文本信息进行。这使得开发者能够在不准备中间标记格式内容的情况下创建和修改结构化富文本文档。
可以通过两个互补的接口访问文档中的信息:基于光标的接口用于编辑,只读的层次化接口提供文档结构的概览。基于光标的接口的主要优势是可以通过模仿用户与编辑器的交互来编辑文本,同时不丢失文档的底层结构。只读的层次化接口在执行搜索和文档导出等操作时最为有用。
本文档分为章节,方便查阅。
富文本文档结构 概述了
QTextDocument
中的不同元素,并描述了它们在文档结构中的排列方式。QTextCursor 接口 解释了如何使用基于光标的接口来编辑富文本文档。
文档布局 简要解释了文档布局的作用。
常见富文本编辑任务 考察了一些涉及读取或操作富文本文档的常见任务。
高级富文本处理 考察了高级富文本编辑任务。
支持的 HTML 子集 列出了
QTextDocument
支持的 HTML 标签。
富文本处理 API#
Qt 提供了用于解析、渲染、操作和编辑富文本的大量类。
QAbstractTextDocumentLayout 类是一个抽象基类,用于为 QTextDocuments 实现自定义布局。
QFont 类指定用于绘制文本的字体查询。
QSyntaxHighlighter 类允你定义语法高亮规则,而且还可以使用该类查询文档的当前格式或用户数据。
QTextCursor 类提供了一种访问和修改 QTextDocuments 的 API。
QTextDocument 类持有格式化文本。
QTextDocumentFragment 类表示 QTextDocument 中的一个格式化文本片段。
QTextDocumentWriter 类提供了一个基于格式的接口,用于将 QTextDocument 写入文件或其他设备。
QTextLength 类封装了 QTextDocument 中使用的不同类型的长度。
QTextFormat 类为 QTextDocument 提供了格式化信息。
QTextCharFormat 类为 QTextDocument 中的字符提供格式化信息。
QTextBlockFormat 类为 QTextDocument 中的文本块提供格式化信息。
QTextListFormat 类为 QTextDocument 中的列表提供格式化信息。
QTextFrameFormat 类为 QTextDocument 中的框架提供格式化信息。
QTextTableFormat 类为 QTextDocument 中的表格提供格式化信息。
QTextImageFormat 类为 QTextDocument 中的图像提供格式化信息。
QTextTableCellFormat 类为 QTextDocument 中的表格单元格提供格式化信息。
QTextInlineObject 类表示 QAbstractTextDocumentLayout 及其实现中的一个内联对象。
QTextLayout 类用于排列和渲染文本。
QTextLine 类表示 QTextLayout 中的一个文本行。
QTextList 类为 QTextDocument 中的一个装饰列表提供项目。
QTextObject 类是不同类型的基类,这些类型可以组合 QTextDocument 的部分。
QTextBlockGroup 类为 QTextDocument 中的文本块提供容器。
QTextFrame 类表示 QTextDocument 中的一个框架。
QTextFrame.iterator
迭代器类提供了一个迭代器,用于读取 QTextFrame 的内容。
QTextBlockUserData 类用于将自定义数据与文本块相关联。
QTextBlock 类为 QTextDocument 中的文本片段提供容器。
QTextBlock.iterator
QTextBlock::iterator 类提供了一个迭代器,用于读取 QTextBlock 的内容。
QTextFragment 类在 QTextDocument 中持有具有单个 QTextCharFormat 的文本片段。
QTextOption 类提供了一组通用富文本属性的描述。
QTextTableCell 类表示 QTextTable 中的单元格属性。
QTextTable 类表示 QTextDocument 中的一个表格。