PySide6.QtGui.QTextFragment

class QTextFragment

QTextFragment 类在 QTextDocument 中保存一段文本,并使用单一的 QTextCharFormat更多

概要

方法

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。

详细描述

文本片段描述了一段以单一字符格式存储的文本。字符格式发生变化的文本可以通过具有不同格式的文本片段序列来表示。

如果用户编辑片段中的文本并引入不同的字符格式,片段的文本将在每个格式更改的点处分割,并创建新的片段。例如,更改句子中间某些文本的样式将导致片段被分成三个独立的片段:第一个和第三个片段保持与之前相同的格式,第二个片段采用新样式。第一个片段将包含句子开头的文本,第二个片段将包含句子中间的文本,第三个片段将包含句子结尾的文本。

../../_images/qtextfragment-split.png

片段的文本和字符格式可以通过text()charFormat()函数获取。length()函数给出片段中文本的长度。position()给出片段在文档中的起始位置。要确定片段是否包含文档中的特定位置,请使用contains()函数。

__init__()

创建一个新的空文本片段。

__init__(o)
Parameters:

oQTextFragment

other文本片段的内容(文本和格式)复制到此文本片段。

charFormat()
Return type:

QTextCharFormat

返回文本片段的字符格式。

另请参阅

text()

charFormatIndex()
Return type:

整数

返回文本片段的字符格式在文档内部字符格式列表中的索引。

另请参阅

allFormats()

contains(position)
Parameters:

position – int

Return type:

布尔

如果文本片段包含文档中给定position处的文本,则返回true;否则返回false

glyphRuns([from=-1[, length=-1]])
Parameters:
  • from – 整数

  • length – int

Return type:

QGlyphRun的列表

返回从位置 pos 开始的此文本片段中 len 个字符对应的字形。字形的位置相对于 QTextBlock 布局的位置。

如果 pos 小于零,它将默认为 QTextFragment 的开始。如果 len 小于零,它将默认为片段的长度。

isValid()
Return type:

布尔

如果这是一个有效的文本片段(即在文档中具有有效位置),则返回true;否则返回false

length()
Return type:

整数

返回文本片段中的字符数。

另请参阅

text()

__ne__(o)
Parameters:

oQTextFragment

Return type:

布尔

如果此文本片段与other文本片段不同(位于不同位置),则返回true;否则返回false。

__lt__(o)
Parameters:

oQTextFragment

Return type:

布尔

如果此文本片段在文档中出现的时间早于other文本片段,则返回true;否则返回false

__eq__(o)
Parameters:

oQTextFragment

Return type:

布尔

如果此文本片段与other文本片段相同(在相同位置),则返回true;否则返回false

position()
Return type:

整数

返回此文本片段在文档中的位置。

text()
Return type:

字符串

返回文本片段的纯文本。

另请参阅

length() charFormat()