富文本处理
Qt提供了一组用于创建、编辑和渲染结构化富文本文档的类。这些类以QTextDocument 为核心,该类表示具有明确内部结构的富文本文档。通过直接操作QTextDocument ,应用程序可以创建、修改和检查富文本,而无需依赖中间标记格式。
您可以通过两个互补的接口访问文档信息:
| 接口 | 描述 |
|---|---|
| 基于光标的接口(QTextCursor ) | 支持模拟文本编辑器中用户操作的编辑操作。编辑操作可保持底层文档的结构完整性。 |
| 只读层次结构界面 | 提供文档的高级结构视图。该界面适用于搜索、检查和导出内容等任务。 |
富文本序列化
QTextDocument 支持与以下标记格式的相互序列化:
- HTML:支持加载和保存 HTML 的定义子集。请参阅“支持的 HTML 子集”。
- Markdown:QTextDocument 可以解析 CommonMark 和 GitHub 两种方言的 Markdown。
富文本主题
- “富文本文档结构”描述了QTextDocument 中的不同元素,以及它们在文档结构中的排列方式。
- “QTextCursor 接口”部分说明了如何使用基于光标的界面编辑富文本文档。
- “文档布局”描述了如何直观地排列文档内容。
- “常见的富文本编辑任务”描述了阅读和操作富文本时常用的操作,例如选择、搜索和打印。
- “高级富文本处理”介绍了高级富文本编辑任务,例如处理大文件。
- “支持的 HTML 子集”列出了QTextDocument 支持的 HTML 标签。
富文本处理 API
Qt 提供了一套用于解析、渲染、处理和编辑富文本的广泛类集合。
用于为 QTextDocument 实现自定义布局的抽象基类 | |
指定用于绘制文本的字体的查询 | |
为 QTextDocument 实现纯文本布局 | |
用于编辑和显示纯文本的小部件 | |
允许您定义语法高亮规则,此外,您还可以使用该类查询文档的当前格式或用户数据 | |
用于存放 QTextDocument 中文本片段的容器 | |
QTextBlock::iterator 类提供了一个用于读取 QTextBlock 内容的迭代器 | |
QTextDocument 中文本块的格式信息 | |
用于存放 QTextDocument 内文本块的容器 | |
用于将自定义数据与文本块关联 | |
带超文本导航功能的富文本浏览器 | |
QTextDocument 中字符的格式信息 | |
提供用于访问和修改 QTextDocument 的 API | |
用于存储格式化后的文本 | |
表示来自 QTextDocument 的一个格式化文本片段 | |
用于将 QTextDocument 写入文件或其他设备的与格式无关的接口 | |
用于编辑和显示纯文本及富文本的小部件 | |
QTextDocument 的格式化信息 | |
在 QTextDocument 中保存一段带有单个 QTextCharFormat 的文本 | |
表示 QTextDocument 中的一个框架 | |
用于读取 QTextFrame 内容的迭代器 | |
QTextDocument 中框架的格式信息 | |
QTextDocument 中图像的格式信息 | |
表示 QAbstractTextDocumentLayout 及其实现中的内联对象 | |
用于文本的排版和渲染 | |
封装了 QTextDocument 中使用的不同类型长度 | |
表示 QTextLayout 中的文本行 | |
QTextDocument 中经过格式化的项目列表 | |
QTextDocument 中列表的格式化信息 | |
可将 QTextDocument 中的部分内容分组在一起的各类对象的基类 | |
关于一般富文本属性的描述 | |
表示 QTextDocument 中的表格 | |
表示 QTextTable 中单元格的属性 | |
QTextDocument 中表格单元格的格式设置信息 | |
QTextDocument 中表格的格式设置信息 |
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.