PySide6.QtGui.QFontDatabase¶
- class QFontDatabase¶
QFontDatabase
类提供了关于底层窗口系统中可用字体的信息。更多…概要¶
方法¶
def
__init__()
静态函数¶
def
bold()
def
families()
def
font()
def
hasFamily()
def
isFixedPitch()
def
isScalable()
def
italic()
def
pointSizes()
def
smoothSizes()
def
standardSizes()
def
styleString()
def
styles()
def
systemFont()
def
weight()
def
writingSystems()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
这个类最常见的用途是查询数据库以获取字体
families()
的列表,以及每个字体家族可用的pointSizes()
和styles()
。pointSizes()
的替代方法是smoothSizes()
,它返回给定字体家族和样式看起来吸引人的大小。如果字体家族可以从两个或更多的铸造厂获得,铸造厂名称将包含在家族名称中;例如:“Helvetica [Adobe]”和“Helvetica [Cronyx]”。当您指定一个家族时,您可以使用旧的连字符“铸造厂-家族”格式或括号“家族 [铸造厂]”格式;例如:“Cronyx-Helvetica”或“Helvetica [Cronyx]”。如果家族有铸造厂,它总是以括号格式返回,就像
families()
返回的值一样。font()
函数根据给定的字体族、样式和点大小返回一个QFont
。可以检查一个字体和样式的组合,看看它是否是
italic()
或bold()
,并获取它的weight()
。同样,我们可以调用isBitmapScalable()
、isSmoothlyScalable()
、isScalable()
和isFixedPitch()
。使用
styleString()
来获取样式的文本版本。QFontDatabase
类提供了一些辅助函数,例如standardSizes()
。你可以使用writingSystemName()
检索书写系统的描述,并使用writingSystemSample()
获取书写系统中字符的示例。示例:
fontTree = QTreeWidget() fontTree.setColumnCount(2) fontTree.setHeaderLabels(QStringList() << "Font" << "Smooth Sizes") fontFamilies = QFontDatabase.families() for family in fontFamilies: familyItem = QTreeWidgetItem(fontTree) familyItem.setText(0, family) fontStyles = QFontDatabase.styles(family) for style in fontStyles: styleItem = QTreeWidgetItem(familyItem) styleItem.setText(0, style) sizes = QString() smoothSizes = QFontDatabase.smoothSizes(family, style) for points in smoothSizes: sizes += QString.number(points) + ' ' styleItem.setText(1, sizes.trimmed())
此示例获取字体家族的列表、每个家族的样式列表以及每个家族和样式组合可用的点大小,并在树视图中显示此信息。
另请参阅
- class WritingSystem¶
常量
描述
QFontDatabase.Any
QFontDatabase.Latin
QFontDatabase.Greek
QFontDatabase.Cyrillic
QFontDatabase.Armenian
QFontDatabase.Hebrew
QFontDatabase.Arabic
QFontDatabase.Syriac
QFontDatabase.Thaana
QFontDatabase.天城文
QFontDatabase.Bengali
QFontDatabase.Gurmukhi
QFontDatabase.古吉拉特语
QFontDatabase.Oriya
QFontDatabase.Tamil
QFontDatabase.Telugu
QFontDatabase.Kannada
QFontDatabase.Malayalam
QFontDatabase.Sinhala
QFontDatabase.泰语
QFontDatabase.Lao
QFontDatabase.Tibetan
QFontDatabase.缅甸
QFontDatabase.Georgian
QFontDatabase.Khmer
QFontDatabase.简体中文
QFontDatabase.繁体中文
QFontDatabase.日语
QFontDatabase.Korean
QFontDatabase.越南语
QFontDatabase.Symbol
QFontDatabase.Other
(与Symbol相同)
QFontDatabase.Ogham
QFontDatabase.Runic
QFontDatabase.Nko
- class SystemFont¶
常量
描述
QFontDatabase.GeneralFont
默认的系统字体。
QFontDatabase.FixedFont
系统推荐的固定字体。
QFontDatabase.TitleFont
系统标准的标题字体。
QFontDatabase.SmallestReadableFont
最小的可读系统字体。
- __init__()¶
注意
此函数已弃用。
将类方法作为静态函数调用。
创建一个字体数据库对象。
- static addApplicationFont(fileName)¶
- Parameters:
fileName – str
- Return type:
整数
从
fileName
指定的文件加载字体,并使其可供应用程序使用。返回一个ID,该ID可用于通过removeApplicationFont()
再次移除字体,或检索字体中包含的字体家族名称列表。如果字体无法加载,函数返回 -1。
目前仅支持TrueType字体、TrueType字体集合和OpenType字体。
- static addApplicationFontFromData(fontData)¶
- Parameters:
fontData –
QByteArray
- Return type:
整数
从由
fontData
指定的二进制数据加载字体,并使其对应用程序可用。返回一个ID,该ID可用于通过removeApplicationFont()
再次移除字体,或检索字体中包含的家族名称列表。如果字体无法加载,函数返回-1。
目前仅支持TrueType字体、TrueType字体集合和OpenType字体。
- static applicationFontFamilies(id)¶
- Parameters:
id – int
- Return type:
字符串列表
返回由
id
标识的应用程序字体的字体家族列表。- static bold(family, style)¶
- Parameters:
family – str
style – str
- Return type:
布尔
如果字体家族为
family
且样式为style
的字体是粗体,则返回true
;否则返回false
。- static families([writingSystem=QFontDatabase.WritingSystem.Any])¶
- Parameters:
writingSystem –
WritingSystem
- Return type:
字符串列表
返回支持
writingSystem
的可用字体家族的排序列表。如果一个字体家族存在于多个铸造厂中,返回的字体名称将以“家族 [铸造厂]”的形式呈现。例如:“Times [Adobe]”、“Times [Cronyx]”、“Palatino”。
另请参阅
- static font(family, style, pointSize)¶
- Parameters:
family – str
style – str
pointSize – int
- Return type:
返回一个
QFont
对象,该对象具有字体族family
、样式style
和点大小pointSize
。如果无法创建匹配的字体,则返回使用应用程序默认字体的QFont
对象。- static hasFamily(family)¶
- Parameters:
family – str
- Return type:
布尔
- static isBitmapScalable(family[, style=""])¶
- Parameters:
family – str
style – str
- Return type:
布尔
如果具有家族
family
和样式style
的字体是可缩放的位图字体,则返回true
;否则返回false
。缩放位图字体通常会产生不美观且难以阅读的结果,因为字体的像素会被缩放。如果你需要缩放位图字体,最好将其缩放到由smoothSizes()
返回的固定大小之一。- static isFixedPitch(family[, style=""])¶
- Parameters:
family – str
style – str
- Return type:
布尔
如果字体家族为
family
且样式为style
的字体是等宽字体,则返回true
;否则返回false
。- static isPrivateFamily(family)¶
- Parameters:
family – str
- Return type:
布尔
当且仅当
family
字体家族为私有时,返回true
。例如,在macOS和iOS上,系统UI字体对用户不可访问。为了完整性,
families()
返回所有字体家族,包括私有的。如果您正在开发字体选择控件,应使用此函数以隐藏私有字体。另请参阅
- static isScalable(family[, style=""])¶
- Parameters:
family – str
style – str
- Return type:
布尔
如果具有家族
family
和样式style
的字体是可缩放的,则返回true
;否则返回false
。- static isSmoothlyScalable(family[, style=""])¶
- Parameters:
family – str
style – str
- Return type:
布尔
如果具有家族
family
和样式style
的字体可以平滑缩放,则返回true
;否则返回false
。如果此函数返回true
,则可以安全地将此字体缩放到任何大小,结果将始终看起来很有吸引力。- static italic(family, style)¶
- Parameters:
family – str
style – str
- Return type:
布尔
如果字体家族为
family
且样式为style
的字体是斜体,则返回true
;否则返回false
。- static pointSizes(family[, style=""])¶
- Parameters:
family – str
style – str
- Return type:
整数列表
返回可用于具有字体族
family
和样式styleName
的字体的点大小列表。该列表可能为空。- static removeAllApplicationFonts()¶
- Return type:
布尔
移除之前使用
addApplicationFont()
和addApplicationFontFromData()
添加的所有应用程序本地字体。如果字体卸载成功,返回
true
;否则返回false
。- static removeApplicationFont(id)¶
- Parameters:
id – int
- Return type:
布尔
移除先前加载的应用程序字体,该字体由
id
标识。如果卸载字体成功,则返回true
;否则返回false
。- static smoothSizes(family, style)¶
- Parameters:
family – str
style – str
- Return type:
整数列表
返回具有
family
字体族和styleName
样式的字体的点大小,这些点大小看起来会很有吸引力。列表可能为空。对于非可缩放字体和位图可缩放字体,此函数等同于pointSizes()
。- static standardSizes()¶
- Return type:
整数列表
返回标准字体大小的列表。
返回一个描述
font
样式的字符串。例如,“粗体斜体”、“粗体”、“斜体”或“正常”。可能会返回一个空字符串。- static styleString(fontInfo)
- Parameters:
fontInfo –
QFontInfo
- Return type:
字符串
返回一个描述
fontInfo
样式的字符串。例如,“粗体斜体”、“粗体”、“斜体”或“正常”。可能会返回一个空字符串。- static styles(family)¶
- Parameters:
family – str
- Return type:
字符串列表
返回字体族
family
可用的样式列表。一些示例样式:“Light”(轻体)、“Light Italic”(轻体斜体)、“Bold”(粗体)、“Oblique”(斜体)、“Demi”(半粗体)。该列表可能为空。另请参阅
- static systemFont(type)¶
- Parameters:
类型 –
SystemFont
- Return type:
返回最适合给定
type
情况的字体,以便与系统的外观和感觉进行适当的集成。另请参阅
- static weight(family, style)¶
- Parameters:
family – str
style – str
- Return type:
整数
返回具有字体族
family
和样式style
的字体的权重。如果没有这样的字体族和样式组合,则返回 -1。- static writingSystemName(writingSystem)¶
- Parameters:
writingSystem –
WritingSystem
- Return type:
字符串
返回
writingSystem
的名称(例如,用于在对话框中显示给用户)。- static writingSystemSample(writingSystem)¶
- Parameters:
writingSystem –
WritingSystem
- Return type:
字符串
返回一个包含来自
writingSystem
的示例字符的字符串。- static writingSystems()¶
- Return type:
返回可用书写系统的排序列表。此列表是根据系统中所有已安装字体的信息生成的。
另请参阅
- static writingSystems(family)
- Parameters:
family – str
- Return type:
返回给定字体
family
支持的书写系统的排序列表。另请参阅