PySide6.QtGui.QTextBlockFormat

class QTextBlockFormat

QTextBlockFormat 类为 QTextDocument 中的文本块提供格式化信息。更多

PySide6.QtGui.QTextBlockFormat 的继承图

概要

方法

注意

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

详细描述

文档由一系列块组成,这些块由QTextBlock对象表示。每个块可以包含某种类型的项目,例如一段文本、一个表格、一个列表或一张图片。每个块都有一个关联的QTextBlockFormat,用于指定其特性。

为了适应从左到右和从右到左的语言,您可以使用setLayoutDirection()设置块的方向。段落对齐通过setAlignment()设置。边距由setTopMargin()setBottomMargin()setLeftMargin()setRightMargin()控制。整体缩进通过setIndent()设置,首行缩进通过setTextIndent()设置。

行间距通过setLineHeight()设置,并通过lineHeight()lineHeightType()获取。可用的行间距类型在LineHeightTypes枚举中。

可以通过setNonBreakableLines()来启用和禁用换行。

用于绘制段落背景的画笔通过setBackground()设置,文本外观的其他方面可以通过使用setProperty()函数与OutlinePenForegroundBrushBackgroundBrush Property值进行自定义。

如果文本块是列表的一部分,它也可以具有可通过listFormat()函数访问的列表格式。

class LineHeightTypes

此枚举描述了支持段落可以具有的各种行间距类型。

常量

描述

QTextBlockFormat.SingleHeight

这是默认的行高:单倍行距。

QTextBlockFormat.ProportionalHeight

这将设置与行成比例的间距(以百分比表示)。例如,设置为200表示双倍行距。

QTextBlockFormat.FixedHeight

这将行高设置为固定的行高(以像素为单位)。

QTextBlockFormat.MinimumHeight

这设置了最小行高(以像素为单位)。

QTextBlockFormat.LineDistanceHeight

这会在行之间添加指定的高度(以像素为单位)。

在版本4.8中添加。

class MarkerType

此枚举描述了列表项可以具有的标记类型。如果列表项(textList() 返回列表的段落)具有标记,则它将代替普通项目符号呈现。通过这种方式,可勾选的列表项可以与同一列表中的普通列表项混合使用,覆盖由整个列表的 style() 指定的项目符号类型。

常量

描述

QTextBlockFormat.MarkerType.NoMarker

这是默认设置:列表项的符号将会显示。

QTextBlockFormat.MarkerType.Unchecked

将显示一个未选中的复选框,而不是列表项的项目符号。

QTextBlockFormat.MarkerType.Checked

将显示一个已选中的复选框,而不是列表项的项目符号。

未来,这可能会扩展到指定其他类型的段落装饰。

另请参阅

style()

__init__()

构造一个新的 QTextBlockFormat

__init__(fmt)
Parameters:

fmtQTextFormat

alignment()
Return type:

AlignmentFlag 的组合

返回段落的对齐方式。

另请参阅

setAlignment()

bottomMargin()
Return type:

浮点数

返回段落的底部边距。

headingLevel()
Return type:

整数

如果段落是标题,则返回段落的标题级别;如果不是,则返回0。

另请参阅

setHeadingLevel()

indent()
Return type:

整数

返回段落的缩进。

另请参阅

setIndent()

leftMargin()
Return type:

浮点数

返回段落的左边距。

lineHeight()
Return type:

浮点数

这将返回段落的LineHeight属性。

lineHeight(scriptLineHeight, scaling)
Parameters:
  • scriptLineHeight – 浮点数

  • scaling – 浮点数

Return type:

浮点数

根据scriptLineHeight给定的脚本行高度和指定的scaling缩放因子,返回段落中行的高度。

返回的值还取决于段落的给定LineHeightType以及为段落设置的LineHeight设置。

对于包含固定像素数的高度,需要进行缩放,以便在打印时适当缩放它们。

lineHeightType()
Return type:

整数

这将返回段落的LineHeightType属性。

marker()
Return type:

MarkerType

如果已设置段落的标记,则返回该标记,否则返回NoMarker

另请参阅

setMarker()

nonBreakableLines()
Return type:

布尔

如果段落中的行不可断行,则返回true;否则返回false

另请参阅

setNonBreakableLines()

pageBreakPolicy()
Return type:

PageBreakFlag 的组合

返回当前为段落设置的页面分隔策略。默认是 PageBreak_Auto

另请参阅

setPageBreakPolicy()

rightMargin()
Return type:

浮点数

返回段落的右边距。

setAlignment(alignment)
Parameters:

alignmentAlignmentFlag 的组合

设置段落的alignment

另请参阅

alignment()

setBottomMargin(margin)
Parameters:

margin – 浮点数

设置段落的底部margin

setHeadingLevel(alevel)
Parameters:

alevel – 整数

设置段落的标题level,其中1是最高级别的标题类型(通常具有最大的标题字体大小),而递增的值则逐渐深入到文档中(通常具有较小的字体大小)。例如,当读取HTML H1标签时,标题级别设置为1。设置标题级别不会自动更改字体大小;然而fromHtml()同时设置标题级别和字体大小。

如果段落不是标题,级别应设置为0(默认值)。

另请参阅

headingLevel()

setIndent(indent)
Parameters:

缩进 – int

设置段落的缩进。边距通过setLeftMargin()setTextIndent()独立于缩进设置。缩进是一个整数,它与文档范围内的标准缩进相乘,得到段落的实际缩进。

另请参阅

indent() indentWidth()

setLeftMargin(margin)
Parameters:

margin – 浮点数

设置段落的左边margin。缩进可以单独使用setIndent()来应用。

setLineHeight(height, heightType)
Parameters:
  • height – 浮点数

  • heightType – int

将段落的行高设置为由height给出的值,该值依赖于heightType,具体方式由LineHeightTypes枚举描述。

setMarker(marker)
Parameters:

标记MarkerType

设置应与段落一起呈现的装饰类型为marker。例如,列表项可以用复选框装饰,无论是选中还是未选中,作为其项目符号的替代。默认值为NoMarker

另请参阅

marker()

setNonBreakableLines(b)
Parameters:

b – 布尔值

如果 b 为真,段落中的行将被视为不可断行;否则它们将是可断行的。

另请参阅

nonBreakableLines()

setPageBreakPolicy(flags)
Parameters:

flagsPageBreakFlag 的组合

设置段落的换页策略为 policy

另请参阅

pageBreakPolicy()

setRightMargin(margin)
Parameters:

margin – 浮点数

设置段落的右边距 margin

setTabPositions(tabs)
Parameters:

tabs – QTextOption.Tab 的列表

将文本块的制表位设置为由tabs指定的位置。

另请参阅

tabPositions()

setTextIndent(aindent)
Parameters:

aindent – 浮点数

设置块中第一行的缩进。这允许段落的第一行与其他行有不同的缩进,从而增强文本的可读性。

setTopMargin(margin)
Parameters:

margin – 浮点数

设置段落的顶部margin

tabPositions()
Return type:

QTextOption.Tab的列表

返回为文本块定义的制表符位置列表。

另请参阅

setTabPositions()

textIndent()
Return type:

浮点数

返回段落的文本缩进。

另请参阅

setTextIndent()

topMargin()
Return type:

浮点数

返回段落的顶部边距。