PySide6.QtGui.QPageSize¶
- class QPageSize¶
QPageSize类描述了定义页面大小的名称和尺寸。更多…概要¶
方法¶
def
__init__()def
definitionSize()def
id()def
isEquivalentTo()def
isValid()def
key()def
name()def
__ne__()def
__eq__()def
rect()def
rectPixels()def
rectPoints()def
size()def
sizePixels()def
sizePoints()def
swap()def
windowsId()
静态函数¶
def
definitionSize()def
id()def
key()def
name()def
size()def
sizePixels()def
sizePoints()def
windowsId()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
该类实现了对Adobe Postscript PPD标准v4.3中定义的标准页面尺寸集的支持。它定义了以点、毫米和英寸为单位的标准页面尺寸集,并确保这些尺寸被一致使用。其他尺寸单位也可以使用,但将是计算结果,因此可能不总是一致。定义的点尺寸始终是整数,所有其他尺寸可以是单位的分数。
定义的大小始终以宽度 x 高度的顺序排列,没有隐含的页面方向。请注意,页面大小可以定义为宽度大于高度的情况,例如
Ledger,因此您不能依赖比较宽度和高度值来确定页面方向。例如,A4 由标准定义为 210mm x 297mm,8.27in x 11.69in,或 595pt x 842pt。
您还可以使用自定义名称定义任何单位的自定义页面大小,此单位大小将被保留并用作所有其他单位大小计算的基础。
当使用自定义的QSize创建
QPageSize时,您可以选择是否希望QPageSize尝试将尺寸与标准页面尺寸匹配。默认情况下,QPaperSize使用FuzzyMatch模式,如果给定的页面尺寸在定义的3个PostScript点范围内,它将匹配到标准页面尺寸。您可以覆盖此设置以请求仅进行精确匹配,但不建议这样做,因为单位之间的转换很容易丢失3个点,从而导致页面尺寸不正确。一个
QPageSize实例也可以通过查询打印设备支持的页面大小来获得。在这种情况下,返回的本地化名称是由打印机本身定义的。请注意,打印设备可能不支持当前的默认区域设置语言。该类还提供了方便的方法,用于将页面大小ID与各种单位大小之间进行转换。
- class PageSizeId¶
此枚举类型列出了Postscript PPD标准中定义的可用页面尺寸。这些值在
QPagedPaintDevice和QPrinter中重复。定义的尺寸为:
常量
描述
QPageSize.A0
841 x 1189 毫米
QPageSize.A1
594 x 841 毫米
QPageSize.A2
420 x 594 毫米
QPageSize.A3
297 x 420 毫米
QPageSize.A4
210 x 297 毫米, 8.26 x 11.69 英寸
QPageSize.A5
148 x 210 毫米
QPageSize.A6
105 x 148 毫米
QPageSize.A7
74 x 105 毫米
QPageSize.A8
52 x 74 毫米
QPageSize.A9
37 x 52 毫米
QPageSize.B0
1000 x 1414 毫米
QPageSize.B1
707 x 1000 毫米
QPageSize.B2
500 x 707 毫米
QPageSize.B3
353 x 500 毫米
QPageSize.B4
250 x 353 毫米
QPageSize.B5
176 x 250 毫米, 6.93 x 9.84 英寸
QPageSize.B6
125 x 176 毫米
QPageSize.B7
88 x 125 毫米
QPageSize.B8
62 x 88 毫米
QPageSize.B9
44 x 62 毫米
QPageSize.B10
31 x 44 毫米
QPageSize.C5E
163 x 229 毫米
QPageSize.Comm10E
105 x 241 毫米,美国通用 10 号信封
QPageSize.DLE
110 x 220 毫米
QPageSize.Executive
7.5 x 10 英寸, 190.5 x 254 毫米
QPageSize.Folio
210 x 330 毫米
QPageSize.Ledger
431.8 x 279.4 毫米
QPageSize.Legal
8.5 x 14 英寸, 215.9 x 355.6 毫米
QPageSize.Letter
8.5 x 11 英寸,215.9 x 279.4 毫米
QPageSize.Tabloid
279.4 x 431.8 毫米
QPageSize.Custom
未知,或用户定义的大小。
QPageSize.A10
QPageSize.A3Extra
QPageSize.A4Extra
QPageSize.A4Plus
QPageSize.A4Small
QPageSize.A5Extra
QPageSize.B5Extra
QPageSize.JisB0
QPageSize.JisB1
QPageSize.JisB2
QPageSize.JisB3
QPageSize.JisB4
QPageSize.JisB5
QPageSize.JisB6
,
QPageSize.JisB7
QPageSize.JisB8
QPageSize.JisB9
QPageSize.JisB10
QPageSize.AnsiA
= 信纸
QPageSize.AnsiB
= 分类账
QPageSize.AnsiC
QPageSize.AnsiD
QPageSize.AnsiE
QPageSize.LegalExtra
QPageSize.LetterExtra
QPageSize.LetterPlus
QPageSize.LetterSmall
QPageSize.TabloidExtra
QPageSize.ArchA
QPageSize.ArchB
QPageSize.ArchC
QPageSize.ArchD
QPageSize.ArchE
QPageSize.Imperial7x9
QPageSize.Imperial8x10
QPageSize.Imperial9x11
QPageSize.Imperial9x12
QPageSize.Imperial10x11
QPageSize.Imperial10x13
QPageSize.Imperial10x14
QPageSize.Imperial12x11
QPageSize.Imperial15x11
QPageSize.ExecutiveStandard
QPageSize.注意
QPageSize.Quarto
QPageSize.Statement
QPageSize.SuperA
QPageSize.SuperB
QPageSize.明信片
QPageSize.DoublePostcard
QPageSize.Prc16K
QPageSize.Prc32K
QPageSize.Prc32KBig
QPageSize.FanFoldUS
QPageSize.FanFoldGerman
QPageSize.FanFoldGermanLegal
QPageSize.EnvelopeB4
QPageSize.EnvelopeB5
QPageSize.EnvelopeB6
QPageSize.EnvelopeC0
QPageSize.EnvelopeC1
QPageSize.EnvelopeC2
QPageSize.EnvelopeC3
QPageSize.信封C4
QPageSize.EnvelopeC5
= C5E
QPageSize.EnvelopeC6
QPageSize.EnvelopeC65
QPageSize.EnvelopeC7
QPageSize.EnvelopeDL
= DLE
QPageSize.Envelope9
QPageSize.Envelope10
= Comm10E
QPageSize.Envelope11
QPageSize.信封12
QPageSize.信封14
QPageSize.信封君主
QPageSize.信封个人
QPageSize.EnvelopeChou3
QPageSize.EnvelopeChou4
QPageSize.邀请信封
QPageSize.意大利信封
QPageSize.EnvelopeKaku2
QPageSize.信封Kaku3
QPageSize.EnvelopePrc1
QPageSize.EnvelopePrc2
QPageSize.EnvelopePrc3
QPageSize.信封Prc4
QPageSize.信封Prc5
QPageSize.EnvelopePrc6
QPageSize.EnvelopePrc7
QPageSize.EnvelopePrc8
QPageSize.EnvelopePrc9
QPageSize.EnvelopePrc10
QPageSize.EnvelopeYou4
QPageSize.LastPageSize
= EnvelopeYou4
由于历史原因,QPageSize::Executive 与标准的 Postscript 和 Windows Executive 尺寸不同,请改用 QPageSize::ExecutiveStandard。
Postscript标准尺寸QPageSize::Folio与Windows DMPAPER_FOLIO尺寸不同,如果需要,请使用Postscript标准尺寸QPageSize::FanFoldGermanLegal。
- class Unit¶
此枚举类型用于指定页面大小的测量单位。
常量
描述
QPageSize.毫米
QPageSize.Point
1/72英寸
QPageSize.英寸
QPageSize.Pica
1/72英尺,1/6英寸,12点
QPageSize.Didot
1/72 法国英寸,0.375 毫米
QPageSize.Cicero
1/6法国英寸,12迪多,4.5毫米
- class SizeMatchPolicy¶
常量
描述
QPageSize.FuzzyMatch
如果在容差范围内,则匹配到标准页面大小。
QPageSize.FuzzyOrientationMatch
如果页面大小在容差范围内,则匹配标准页面大小,无论方向如何。
QPageSize.ExactMatch
仅当尺寸完全匹配时,才与标准页面尺寸匹配。
- __init__()¶
创建一个空的
QPageSize。- __init__(pageSizeId)
- Parameters:
pageSizeId –
PageSizeId
创建一个标准
QPageSize的pageSize。如果
pageSize是Custom,那么生成的QPageSize将无效。请改用自定义大小的构造函数。- __init__(other)
- Parameters:
其他 –
QPageSize
复制构造函数,将
other复制到此。- __init__(pointSize[, name=""[, matchPolicy=QPageSize.SizeMatchPolicy.FuzzyMatch]])
- Parameters:
pointSize –
QSizename – str
matchPolicy –
SizeMatchPolicy
使用匹配的
matchPolicy创建一个给定pointSize(以点为单位)的QPageSize。如果给定的
pointSize与标准的PageSizeId匹配,则将使用该页面大小。请注意,如果matchPolicy是FuzzyMatch,这可能会导致pointSize被调整为标准大小。为了防止这种情况发生,请使用ExactMatch的matchPolicy。如果给定的
pointSize不是标准的PageSizeId,则将创建一个Custom尺寸。如果
name为空,则将使用标准的本地化名称。如果是自定义页面大小,则将创建一个格式为“自定义(宽度 x 高度)”的自定义名称。matchPolicy默认为FuzzyMatch。- __init__(size, units[, name=""[, matchPolicy=QPageSize.SizeMatchPolicy.FuzzyMatch]])
- Parameters:
size –
QSizeFunits –
Unitname – str
matchPolicy –
SizeMatchPolicy
创建一个具有给定
size的自定义页面,单位为units。如果给定的
size与标准的PageSizeId匹配,则将使用该页面大小。请注意,如果matchPolicy是FuzzyMatch,这可能会导致size被调整为标准大小。为了防止这种情况发生,请使用ExactMatch的matchPolicy。如果给定的
size不是标准的PageSizeId,则会创建一个Custom尺寸。原始的单位尺寸将被保留并用作所有其他单位尺寸计算的基础。如果
name为空,则将创建一个自定义名称,格式为“自定义(宽度 x 高度)”,其中尺寸以提供的单位表示。返回页面大小的定义大小。
对于标准页面尺寸,这将是相关标准中定义的尺寸,即ISO A4将以毫米为单位定义,而ANSI Letter将以英寸为单位定义。
对于自定义页面大小,这将是用于创建页面大小对象的原始大小。
如果
QPageSize无效,则QSizeF也将无效。另请参阅
- static definitionSize(pageSizeId)
- Parameters:
pageSizeId –
PageSizeId- Return type:
返回标准
pageSizeId的定义大小。要获取定义单位,请调用
definitionUnits()。返回页面大小的定义单位。
对于标准页面尺寸,这将是相关标准中定义的单位,即ISO A4将以毫米为单位定义,而ANSI Letter将以英寸为单位定义。
对于自定义页面大小,这将是用于创建页面大小对象的原始单位。
另请参阅
- static definitionUnits(pageSizeId)
- Parameters:
pageSizeId –
PageSizeId- Return type:
返回标准
pageSizeId的定义单位。要获取定义大小,请调用
definitionSize()。- id()¶
- Return type:
返回页面的标准
PageSizeId,或Custom。- static id(windowsId)
- Parameters:
windowsId – int
- Return type:
返回给定Windows DMPAPER枚举值
windowsId的PageSizeId。如果没有匹配的
PageSizeId,则返回Custom。- static id(pointSize[, matchPolicy=QPageSize.SizeMatchPolicy.FuzzyMatch])
- Parameters:
pointSize –
QSizematchPolicy –
SizeMatchPolicy
- Return type:
返回给定
pointSize的标准PageSizeId,使用给定的matchPolicy。如果使用
FuzzyMatch,则返回的PageSizeId的点大小可能不完全匹配您传入的pointSize。在使用它进行任何计算之前,您应该使用返回的PageSizeId调用sizePoints()来找出PageSizeId的实际点大小。- static id(size, units[, matchPolicy=QPageSize.SizeMatchPolicy.FuzzyMatch])
- Parameters:
size –
QSizeFunits –
UnitmatchPolicy –
SizeMatchPolicy
- Return type:
返回给定
size在units中使用给定matchPolicy的标准PageSizeId。如果使用
FuzzyMatch,则返回的PageSizeId的单位大小可能不完全匹配您传入的size。在使用它进行任何计算之前,您应该使用返回的PageSizeId调用size()来找出PageSizeId的实际单位大小。如果此页面与
other页面等效,即页面大小相同,而不考虑名称等其他属性,则返回true。- isValid()¶
- Return type:
布尔
如果此页面大小有效,则返回
true。如果使用无效的
PageSizeId、负值或无效的QSize或QSizeF,或者使用空构造函数创建,页面大小可能无效。- key()¶
- Return type:
字符串
返回页面大小的唯一键。
默认情况下,这是页面大小的PPD标准mediaOption关键字,或PPD自定义格式键。如果
QPageSize实例是从打印设备获取的,那么这将是打印设备提供的键,可能与标准键不同。如果
QPageSize无效,则键将为空字符串。此密钥绝不应显示给最终用户,它仅是一个内部密钥。对于人类可读的名称,请使用
name()。另请参阅
- static key(pageSizeId)
- Parameters:
pageSizeId –
PageSizeId- Return type:
字符串
返回标准
pageSizeId的PPD mediaOption关键字。如果
QPageSize无效,则键将为空。- name()¶
- Return type:
字符串
返回页面大小的本地化可读名称。
如果
QPageSize实例是从打印设备获取的,则使用的名称是打印设备提供的名称。请注意,打印设备可能不支持当前的默认区域设置语言。如果
QPageSize无效,则名称将为空字符串。- static name(pageSizeId)
- Parameters:
pageSizeId –
PageSizeId- Return type:
字符串
返回标准
pageSizeId的本地化名称。如果
QPageSize无效,则名称将为空。如果页面大小
lhs不等于页面大小rhs,即页面大小具有不同的属性,则返回true。当前的属性包括大小和名称。如果页面大小
lhs等于页面大小rhs,即页面大小具有相同的属性,则返回true。当前的属性包括大小和名称。返回所需
units中的页面矩形。如果
QPageSize无效,则QRect将无效。返回给定
resolution下的设备像素页面矩形。如果
QPageSize无效,则QRect将无效。返回以Postscript点(1/72英寸)为单位的页面矩形。
如果
QPageSize无效,则QRect将无效。返回页面在所需
units中的大小。如果
QPageSize无效,则QSizeF也将无效。- static size(pageSizeId, units)
- Parameters:
pageSizeId –
PageSizeIdunits –
Unit
- Return type:
返回请求的
units中标准pageSizeId的大小。返回给定
resolution下页面的设备像素大小。如果
QPageSize无效,则QSize也将无效。- static sizePixels(pageSizeId, resolution)
- Parameters:
pageSizeId –
PageSizeIdresolution – int
- Return type:
返回给定
resolution的标准pageSizeId的设备像素大小。返回页面的大小,单位为Postscript点(1/72英寸)。
如果
QPageSize无效,则 QSize 也将无效。- static sizePoints(pageSizeId)
- Parameters:
pageSizeId –
PageSizeId- Return type:
返回标准
pageSizeId的大小,单位为点。将此
QPageSize与other交换。此函数非常快且永远不会失败。- windowsId()¶
- Return type:
整数
返回页面大小的Windows DMPAPER枚举值。
并非所有有效的PPD页面尺寸都有Windows等效项,在这种情况下将返回0。
如果
QPageSize无效,则Windows ID将为0。另请参阅
- static windowsId(pageSizeId)
- Parameters:
pageSizeId –
PageSizeId- Return type:
整数
返回标准
pageSizeId的Windows DMPAPER枚举值。并非所有有效的PPD页面尺寸都有Windows等效项,在这种情况下将返回0。