qt 富文本 打印

.QTextEdit的使用

rich text是用html标签表示的形式。text edit可以显示plain text(纯文本)html文件。

setHtml(), toHtml()返回HTML格式中的文本,用来控制内容到html的转换,还有清除内容。

插入内容:insertHtml(), insertPlainText(), append()

设置当前character的属性: setFontUnderline()(设置字体下划线), setFontFamily()(设置字体类型), setFontPointSize()(设置字体点大小)setCurrentFont()(设置现在的字体).

.QTextDocument组成

QTextDocument存放结构化的rich text文件,每个元素都有对应的格式对象。可以通过objectForFormat()来通过格式对象查找元素。QTextDocument能够忽略不能理解的标记。

可以通过QTextCursor来编程编辑QTextDocument对象,并对其进行填充。通过rootFrame()方法得到根节点再遍历其中的元素。如果只是浏览其中的文本文

档,就用begin(),end(),findBlock()方法。

文本的格式由documentLayout()决定.metaInformation()来的到文件的元信息。

toPlainText()toHtml()方法能够得到它text形式的内容和html形式的内容。

在 QTextDocument 类中包括一些通用的元素,例如 QTextBlock(段落)QTextFrame(框架)QTextTable(表格和 QTextList(列表描述。

图片使用一种特殊的文本片段描述。在更低的层次上,这些元素都有自己的描述属性,如文本风格和对齐方式。

文档的基本构建单位是QTextBlockQTextFrame。块本身就包含文本片段(QTextFragment),但是这不会直接影响到高层次的文档结构。

框架和表格用于组织其他结构,而文本块则包含真正的文本信息。每一个文档都包括一个根框架(root frame),以及至少一个文本块。

root frame决定显示的方式和布局。框架提供不同文档部分的逻辑分割,同时也提供了在渲染时如何显示的属性。一个表格就是一个特化的

框架,包含分布在不同行和列的多个单元。每个单元都能够包含更多的结构和文本。表格提供了灵活配置单元的管理和布局的特性。

文本块包含文本片段。每一个文本片段都有特定的文本和字符格式信息。文本属性在字符级别和块级别定义。在字符级别可以指定字体、颜

色和大小。在块级别可以指定更高一级的行为,例如文本流方向、对齐方式和背景色。

对文本块分组的是 QTextBlockGroup 的子类,对文本片段和其他元素分组的是 QTextFrame 的子类。

.开始使用QTextDocument

1.创建富文本

QTextDocument *newDocument = new QTextDocument;

也可以通过已有的文本组件获得:

QTextEdit *editor = new QTextEdit;

QTextDocument *editorDocument = editor->document();

新元素的创建和插入可以通过使用 QTextCursor 以编程的方式实现,或者通过 QTextEdit 以用户可视化编辑的方式实现。元素可以在创建时

指定一个特定的样式,或者是直接使用当前光标所在位置的样式。

QTextDocumentFragment用来保存QTextDocument的任意片段的,可以包含段落,表格,甚至一个完整的QTextDocument

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值