- class QSGTextNode#
QSGTextNode 类用于在 Qt Quick 场景图中绘制文本布局和文本文档。了解更多…
6.7 版本新增。
摘要#
虚方法#
def
addTextLayout()def
clear()def
color()def
filtering()def
linkColor()def
renderType()def
selectionColor()def
setColor()def
setFiltering()def
setLinkColor()def
setRenderType()定义
styleColor()定义
textStyle()定义
viewport()
注意
这份文档可能包含从C++自动转换为Python的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译问题,也可以通过创建https:/bugreports.qt.io/projects/PYSIDE上的问题单来告诉我们。
详细描述#
QSGTextNode对于需要文本的自定义 Qt Quick 项目很有用。它被 Qt Quick 中的 Text、TextEdit 和 TextInput 元素使用。您可以使用
createTextNode()创建QSGTextNode对象。addTextLayout()和addTextDocument()函数提供向QSGTextNode添加文本的方法。文本必须已经排好版。注意
必须在调用
addTextLayout()或addTextDocument()之前设置属性,以便它们生效。- class TextStyle#
此枚举类型描述了可以应用于文本渲染的样式。
常量
描述
QSGTextNode.Normal
文本不应用任何样式绘制。
QSGTextNode.Outline
文本带有轮廓绘制。
QSGTextNode.Raised
文本以凸起方式绘制。
QSGTextNode.Sunken
文本以凹陷方式绘制。
- class RenderType#
此枚举类型描述了用于渲染文本的符号节点类型。
常量
描述
QSGTextNode.QtRendering
文本使用每个符号的缩放距离字段进行渲染。
QSGTextNode.NativeRendering
文本使用特定平台的技巧进行渲染。
QSGTextNode.CurveRendering
文本使用直接在图形硬件上运行的曲线光栅化器进行渲染。
如果您希望文本在目标平台上看起来是本地的,并且不需要文本转换等高级功能,请选择
NativeRendering。使用这种渲染类型与这些功能结合时,可能会导致不利且有时是像素化的结果。Both
Text.QtRendering和Text.CurveRendering都是硬件加速技术。QtRendering是两者中较快的,但使用更多内存,并且在大型尺寸下可能会出现渲染伪影。在QtRendering无法提供良好的视觉效果或降低图形内存消耗是优先考虑的情况下,应考虑使用CurveRendering。
- abstract addTextDocument(position, document[, selectionStart=-1[, selectionCount=-1]]])#
- 参数:
position –
QPointFdocument –
QTextDocumentselectionStart – int
selectionCount – int
将
document的内容添加到位于position的文本节点中。如果selectionStart>=0,则标志着选定区域中selectionCount个字符的第一个字符。选择区域以selectionColor()为背景填充表示,选中文本以selectionTextColor()进行渲染。另见
- (概述 addTextLayout(position, layout[, selectionStart=-1[, selectionCount=-1[, lineStart=0[, lineCount=-1]]]]])#
- 参数:
position –
QPointFlayout – QTextLayout
selectionStart – int
selectionCount – int
lineStart – int
lineCount – int
将
layout的内容添加到位于position的文本节点上。如果selectionStart大于或等于0,则表示范围为selectionCount个字符的选中区域中的第一个字符。选中区域表示为具有selectionColor()背景填充的,选中文本在selectionTextColor()中渲染。为了方便,可以使用
lineStart和lineCount来选择从布局中包含的QTextLine对象的范围。这在创建自动换行布局时可能很有用。如果lineCount小于0,节点将包括从lineStart到布局末尾的行。另见
- (概述 clear()#
清除节点的内容,删除表示已添加到其中的布局和文档的节点和其他数据。
另见
addTextLayout()addTextDocument()返回用于渲染文本的主要颜色。
另见
返回在缩放显示的文本中作为部分的图像时使用的采样模式。
返回文本中超链接的颜色。
返回用于渲染文本的符号节点类型。
- 抽象 renderTypeQuality()#
- 返回类型:
int
返回节点的渲染类型质量。有关详情,请参阅
setRenderTypeQuality()。返回当文本的任何部分被标记为选中时,选中背景的颜色。
返回当文本的任何部分被标记为选中时,选中文本的颜色。
将渲染文本时使用的主要颜色设置为
color。默认值为黑色:
QColor(0, 0, 0)。另见
设置显示文本中用于缩放图像时的采样模式为
filtering。对于平滑缩放的图像,在此处使用Linear。默认值为
Nearest。另见
将文本中或超链接的颜色设置为
linkColor。默认值为蓝色:
QColor(0, 0, 255)。另见
- 抽象 setRenderType(renderType)#
- 参数:
renderType –
RenderType
设置用于渲染字形的字形节点类型为
renderType。默认值为
QtRendering。另见
- 抽象 setRenderTypeQuality(renderTypeQuality)#
- 参数:
renderTypeQuality – int
如果当前使用的
renderType()支持该功能,则设置用于渲染文本的质量。如果支持,这可以用来在视觉保真度与执行速度或内存消耗之间进行权衡。当
renderTypeQuality小于 0 时,将使用默认质量。虽然可以设置任意整数值,但如果设置极端值,可能会遇到底层图形硬件施加的限制。Qt Quick Text 元素使用以下预定义值进行操作
DefaultRenderTypeQuality
-1 (默认)
此值目前只受
QtRendering渲染类型尊重。设置它将改变表示字形的距离字场的分辨率。将其设置为正常以上将增加内存消耗,但减少了非常大的文本上的过滤伪影。默认值为 -1。
当文本的任何部分被标记为选中时,将选中背景的颜色设置为
color。默认值为深蓝色:
QColor(0, 0, 128)。当文本的任何部分被标记为选中时,将选中文本的颜色设置为
selectionTextColor。默认为白色:
QColor(255, 255, 255)。将用于渲染文本的样式颜色设置为
styleColor。默认值为黑色:
QColor(0, 0, 0)。将渲染文本的样式设置为
textStyle。默认为Normal。设置显示文本的视图边界矩形为
viewport。提供此信息使QSGTextNode能够优化哪些文本布局或文档的部分包含在场景图中。默认是一个默认构造的 QRectF。对于此视图,所有内容都将包含在图中。
另见
返回渲染文本时使用的样式颜色。
返回渲染文本的样式。
返回为此
QSGTextNode设置的当前视口。