- class QTextFormat#
类
QTextFormat
为QTextDocument
提供格式信息。更多…继承自:
QTextListFormat
、QTextFrameFormat
、QTextTableFormat
、QTextCharFormat
、QTextTableCellFormat
、QTextImageFormat
、QTextBlockFormat
概要#
方法#
def
__init__()
def
background()
def
boolProperty()
def
brushProperty()
定义
foreground()
定义
isEmpty()
定义
isValid()
定义
merge()
定义
objectType()
定义
__ne__()
定义
__eq__()
定义
properties()
定义
property()
定义
swap()
定义
type()
备注
本文档可能包含自动从C++翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译存在问题,您也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建工单来告诉我们。
详细说明#
QTextFormat
是一个通用类,用于描述QTextDocument
部分的形式。派生类QTextCharFormat
、QTextBlockFormat
、QTextListFormat
和QTextTableFormat
通常更实用,用于描述文档特定部分的应用格式。格式有一个
FormatType
,它指定它可以格式化的文本项的类型;例如,一段文本、一个列表、一个表格等。格式还有各种属性(某些特定于特定格式类型),如通过Property枚举描述。每个属性都有对应的属性。格式类型由
type()
提供,格式可以通过isCharFormat()
、isBlockFormat()
、isListFormat()
、isTableFormat()
、isFrameFormat()
和isImageFormat()
进行测试。如果确定了类型,它可以通过toCharFormat()
、toBlockFormat()
、toListFormat()
、toTableFormat()
、toFrameFormat()
和toImageFormat()
检索。格式属性可以通过
setProperty()
函数设置,并且可以通过boolProperty()
、intProperty()
、doubleProperty()
以及stringProperty()
来获取。格式中使用的所有属性ID可以通过allPropertyIds()
获取。可以使用merge()
将一个格式合并到另一个格式中。可以使用
setObjectIndex()
设置格式对象的索引,并使用objectIndex()
来获取。这些方法可以用来将格式与QTextObject
关联起来。这用于在文档中代表列表、框架和表格。另请参阅
- class FormatType#
(继承自
enum.IntEnum
) 此枚举描述了QTextFormat
对象正在格式化的文本项。常量
描述
QTextFormat.InvalidFormat
由默认构造函数创建的无效格式
QTextFormat.BlockFormat
该对象格式化文本块
QTextFormat.CharFormat
该对象格式化单个字符
QTextFormat.ListFormat
该对象格式化列表
QTextFormat.FrameFormat
该对象格式化框架
QTextFormat.UserFormat
- class Property#
(继承自
enum.IntEnum
) 此枚举描述了格式可以具有的不同属性。常量
描述
QTextFormat.ObjectIndex
格式对象的索引。请参阅
objectIndex()
。段落和字符属性
常量
描述
QTextFormat.CssFloat
如何定位框架相对于周围文本的位置
QTextFormat.LayoutDirection
文档中文本的布局方向(Qt::LayoutDirection)。
QTextFormat.OutlinePen
QTextFormat.ForegroundBrush
QTextFormat.BackgroundBrush
QTextFormat.BackgroundImageUrl
段落属性
常量
描述
QTextFormat.BlockAlignment
QTextFormat.BlockTopMargin
QTextFormat.BlockBottomMargin
QTextFormat.BlockLeftMargin
QTextFormat.BlockRightMargin
QTextFormat.TextIndent
QTextFormat.TabPositions
指定制表位位置。制表位位置是存储在QList中的结构(内部,存储在QList
中)。 QTextFormat.BlockIndent
QTextFormat.LineHeight
QTextFormat.LineHeightType
QTextFormat.BlockNonBreakableLines
QTextFormat.BlockTrailingHorizontalRulerWidth
水平标尺元素宽度。
QTextFormat.HeadingLevel
标题级别,例如1对应于HTML H1标签;否则为0。此枚举值已在Qt 5.12中添加。
QTextFormat.BlockCodeFence
在Markdown代码块周围的“围栏”中使用的字符。如果代码块是缩进而不是围栏,则不应有此属性。此枚举值已在Qt 5.14中添加。
QTextFormat.BlockQuoteLevel
此块嵌套引用的深度:1表示该块是顶级引用块。不是引用块的块不应有此属性。此枚举值已在Qt 5.14中添加。
QTextFormat.BlockCodeLanguage
预格式化或代码块中的编程语言。不包含代码的块不应有此属性。此枚举值已在Qt 5.14中添加。
QTextFormat.BlockMarker
要在块旁边显示的装饰类型。此枚举值已添加到Qt 5.14。
字符属性
常量
描述
QTextFormat.FontFamily
已弃用。}请使用QTextFormat::FontFamilies代替。
QTextFormat.FontFamilies
QTextFormat.FontStyleName
QTextFormat.FontPointSize
QTextFormat.FontPixelSize
QTextFormat.FontSizeAdjustment
指定给定FontPointSize或FontPixelSize设置的fontsize所发生的更改。
QTextFormat.FontFixedPitch
QTextFormat.FontWeight
QTextFormat.FontItalic
QTextFormat.FontUnderline
已弃用。请使用QTextFormat::TextUnderlineStyle代替。
QTextFormat.FontOverline
QTextFormat.FontStrikeOut
QTextFormat.FontCapitalization
指定要应用于文本的格式化类型。
QTextFormat.FontLetterSpacingType
指定FontLetterSpacing属性的含义。默认值为
PercentageSpacing
。QTextFormat.FontLetterSpacing
更改字体中单个字母之间的默认间距。值指定为百分比或绝对值,具体取决于FontLetterSpacingType。默认值为100%。
QTextFormat.FontWordSpacing
更改单个单词之间的默认间距。正值增加相应像素的间距;负值减小间距。
QTextFormat.FontStretch
对应于
Stretch
属性QTextFormat.FontStyleHint
对应于
StyleHint
属性QTextFormat.FontStyleStrategy
对应于
StyleStrategy
属性QTextFormat.FontKerning
指定字体是否启用了字距调整。
QTextFormat.FontHintingPreference
根据枚举值控制提示的使用,枚举值见
HintingPreference
。QTextFormat.TextUnderlineColor
指定绘制下划线、上划线和删除线的颜色。
QTextFormat.TextVerticalAlignment
QTextFormat.TextOutline
QTextFormat.TextUnderlineStyle
QTextFormat.TextToolTip
指定要显示在文本片段上的(可选)工具提示。
QTextFormat.TextSuperScriptBaseline
指定上标文本的基线(以高度的百分比表示)。
QTextFormat.TextSubScriptBaseline
指定下标文本的基线(以高度的百分比表示)。
QTextFormat.TextBaselineOffset
指定文本的基线(以高度的百分比表示)。正值将文本向上移动相应的百分比;负值将文本向下移动。
QTextFormat.IsAnchor
QTextFormat AnchorHref
QTextFormat AnchorName
QTextFormat.ObjectType
列表属性
常量
描述
QTextFormat.ListStyle
指定列表项目的样式,由枚举值
Style
定义。QTextFormat.ListIndent
指定列表的缩进量。
QTextFormat.ListNumberPrefix
定义数字列表中项目编号前的文本。
QTextFormat.ListNumberSuffix
定义数字列表中项目编号后的文本。
QTextFormat.ListStart
定义列表的第一个值。
表格和框架属性
常量
描述
QTextFormat.FrameBorder
QTextFormat.FrameBorderBrush
QTextFormat.FrameBorderStyle
请参阅
BorderStyle
枚举。QTextFormat.FrameBottomMargin
QTextFormat.FrameHeight
QTextFormat.FrameLeftMargin
QTextFormat.FrameMargin
QTextFormat.FramePadding
QTextFormat.FrameRightMargin
QTextFormat.FrameTopMargin
QTextFormat.FrameWidth
QTextFormat.TableCellSpacing
QTextFormat.TableCellPadding
QTextFormat.TableColumns
QTextFormat.TableColumnWidthConstraints
QTextFormat.TableHeaderRowCount
QTextFormat.TableBorderCollapse
指定
borderCollapse
属性。表格单元属性
常量
描述
QTextFormat.TableCellRowSpan
QTextFormat.TableCellColumnSpan
QTextFormat.TableCellLeftPadding
QTextFormat.TableCellRightPadding
QTextFormat.TableCellTopPadding
QTextFormat.TableCellBottomPadding
专为启用
borderCollapse
的表格单元属性而设计常量
描述
QTextFormat.TableCellTopBorder
QTextFormat.TableCellBottomBorder
QTextFormat.TableCellLeftBorder
QTextFormat.TableCellRightBorder
QTextFormat.TableCellTopBorderStyle
QTextFormat.TableCellBottomBorderStyle
QTextFormat.TableCellLeftBorderStyle
QTextFormat.TableCellRightBorderStyle
QTextFormat.TableCellTopBorderBrush
QTextFormat.TableCellBottomBorderBrush
QTextFormat.TableCellLeftBorderBrush
QTextFormat.TableCellRightBorderBrush
图像属性
常量
描述
QTextFormat.ImageName
图像的文件名或来源。
QTextFormat.ImageTitle
HTML图像标签的title属性,或在Markdown图像链接中URL后的引号字符串。这个枚举值自Qt 5.14版本开始加入。
QTextFormat.ImageAltText
HTML图像标签的alt属性,或在Markdown图像链接中的图像描述。这个枚举值自Qt 5.14版本开始加入。
QTextFormat.ImageWidth
QTextFormat.ImageHeight
QTextFormat.ImageQuality
选择属性
常量
描述
QTextFormat.FullWidthSelection
当设置为选择的字符格式时,整段文本的宽度将被选中显示。
分页属性
常量
描述
QTextFormat.PageBreakPolicy
指定页面如何分列。请参阅
PageBreakFlag
枚举。QTextFormat.UserProperty
另请参阅
- class ObjectTypes#
(继承
enum.IntEnum
) 该枚举描述了该格式与哪种QTextObject
关联。常量
描述
QTextFormat.NoObject
QTextFormat.ImageObject
QTextFormat.TableObject
QTextFormat.TableCellObject
QTextFormat.UserObject
第一个可应用于特定应用程序目的的对象。
- class PageBreakFlag#
(继承
enum.Flag
) 该枚举描述了打印时如何执行分页。它映射到相应的 css 属性。常量
描述
QTextFormat.PageBreak_Auto
自动根据当前页面的可用空间确定分页
QTextFormat.PageBreak_AlwaysBefore
总是将段落/表格之前的页面进行分列
QTextFormat.PageBreak_AlwaysAfter
在段落/表格之后总是开始新页面
- __init__(rhs)#
- 参数:
rhs –
QTextFormat
创建一个新的文本格式,其属性与另一个文本格式相同。
- __init__()#
创建一个具有
InvalidFormat
的新文本格式。另请参阅
- __init__(type)#
- 参数:
type – int
创建一个具有给定
type
的新文本格式。另请参阅
返回用于绘制文档背景的画刷。
- boolProperty(propertyId)#
- 参数:
propertyId - int
- 返回类型 :
bool
返回由
propertyId
指定的属性值。如果该属性不是 QTextFormat::Bool 类型,则返回 false。返回由
propertyId
给出的属性值;如果该属性不是 QMetaType::QBrush 类型,则返回 Qt::NoBrush。- clearBackground()#
清除用于绘制文档背景的画笔。将使用默认画笔。
- clearForeground()#
清除用于绘制文档前景的画笔。将使用默认画笔。
- clearProperty(propertyId)#
- 参数:
propertyId - int
清除由
propertyId
指定的属性的值。另请参阅
返回由
propertyId
指定的属性的值;如果该属性不是QMetaType::QColor类型,则返回一个无效颜色。- doubleProperty(propertyId)#
- 参数:
propertyId - int
- 返回类型 :
float
返回由
propertyId
指定的属性的值。如果该属性不是QMetaType::Double或QMetaType::Float类型,则返回0。返回用于渲染前景细节(如文本、框架轮廓和表格边框)的画笔。
- hasProperty(propertyId)#
- 参数:
propertyId - int
- 返回类型 :
bool
如果文本格式具有给定
propertyId
的属性,则返回true
;否则返回false
。另请参阅
- intProperty(propertyId)#
- 参数:
propertyId - int
- 返回类型 :
int
返回由
propertyId
指定的属性值。如果该属性不是 QTextFormat::Integer 类型,则返回 0。- isBlockFormat()#
- 返回类型 :
bool
如果此文本格式是
BlockFormat
,则返回true
;否则返回false
。- isCharFormat()#
- 返回类型 :
bool
如果此文本格式是
CharFormat
,则返回true
;否则返回false
。- isEmpty()#
- 返回类型 :
bool
如果格式不存储任何属性,则返回 true;否则返回 false。
- isFrameFormat()#
- 返回类型 :
bool
如果此文本格式是
FrameFormat
,则返回true
;否则返回false
。- isImageFormat()#
- 返回类型 :
bool
如果此文本格式是图像格式,则返回
true
;否则返回false
。- isListFormat()#
- 返回类型 :
bool
如果此文本格式是
ListFormat
,则返回true
;否则返回false
。- isTableCellFormat()#
- 返回类型 :
bool
如果此文本格式是
TableCellFormat
,则返回true
;否则返回false
。- isTableFormat()#
- 返回类型 :
bool
如果此文本格式是
TableFormat
,则返回true
;否则返回false
。- isValid()#
- 返回类型 :
bool
如果格式有效(即不是
InvalidFormat
),则返回true
;否则返回false
。返回文档的布局方向。
另请参阅
- lengthProperty(propertyId)#
- 参数:
propertyId - int
- 返回类型 :
返回由
propertyId
指定的属性的值。- lengthVectorProperty(propertyId)#
- 参数:
propertyId - int
- 返回类型 :
QTextLength 的列表
返回指定
propertyId
的属性值。如果属性类型不是 QTextFormat::LengthVector 类型,则返回空列表。- merge(other)#
- 参数:
other –
QTextFormat
将
other
格式与此格式合并;在存在冲突的情况下,other
格式具有优先权。- objectIndex()#
- 返回类型 :
int
返回格式对象的索引,如果格式对象无效则返回 -1。
另请参阅
- objectType()#
- 返回类型 :
int
返回文本格式的对象类型。
- __ne__(rhs)#
- 参数:
rhs –
QTextFormat
- 返回类型 :
bool
如果此文本格式与另一个文本格式不同,则返回
true
。- __eq__(rhs)#
- 参数:
rhs –
QTextFormat
- 返回类型 :
bool
如果此文本格式与另一个文本格式相同,则返回
true
。返回由
propertyId
给定的属性的值;如果该属性不是 QMetaType::QPen 类型,则返回 Qt::NoPen。- properties()#
- 返回类型 :
具有 .int 类型的键和 QVariant 类型值的字典。
返回包含此文本格式所有属性的映射。
- property(propertyId)#
- 参数:
propertyId - int
- 返回类型 :
对象
根据指定的
propertyId
返回属性。另请参阅
- propertyCount()#
- 返回类型 :
int
返回保存在格式中的属性数量。
将用于绘制文档背景的刷子设置到指定的
brush
。设置前景画笔为指定的
brush
。前景画笔主要用于渲染文本。- setLayoutDirection(direction)#
- 参数:
direction –
LayoutDirection
将文档的布局方向设置为指定的
direction
。另请参阅
- setObjectIndex(object)#
- 参数:
object – int
设置格式对象的
index
。另请参阅
- setObjectType(type)#
- 参数:
type – int
将文本格式对象的类型设置为
type
。另请参阅
- setProperty(propertyId, lengths)#
- 参数:
propertyId - int
lengths – .list of QTextLength
将
propertyId
指定的属性的值设置为value
。- setProperty(propertyId, value)
- 参数:
propertyId - int
value – object
将由
propertyId
指定的属性设置为给定的value
。另请参阅
- stringProperty(propertyId)#
- 参数:
propertyId - int
- 返回类型 :
str
返回由
propertyId
指定的属性值;如果属性不是 QMetaType::QString 类型,则返回一个空字符串。- swap(other)#
- 参数:
other –
QTextFormat
与
other
交换此文本格式。此函数非常快速,永远不会失败。- toBlockFormat()#
- 返回类型 :
将此格式作为块格式返回。
- toCharFormat()#
- 返回类型 :
将此格式作为字符格式返回。
- toFrameFormat()#
- 返回类型 :
将此格式作为帧格式返回。
- toImageFormat()#
- 返回类型 :
将此格式作为图像格式返回。
- toListFormat()#
- 返回类型 :
将此格式作为列表格式返回。
- toTableCellFormat()#
- 返回类型 :
将此格式作为表格单元格格式返回。
- toTableFormat()#
- 返回类型 :
将此格式作为表格格式返回。
- type()#
- 返回类型 :
int
返回此格式类型。
另请参阅