このページでは

QPageSize Class

QPageSize クラスは、定義済みのページサイズのサイズと名前を表します。詳細...

ヘッダー: #include <QPageSize>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui

パブリック型

enum PageSizeId { A0, A1, A2, A3, A4, …, LastPageSize }
enum SizeMatchPolicy { FuzzyMatch, FuzzyOrientationMatch, ExactMatch }
enum Unit { Millimeter, Point, Inch, Pica, Didot, Cicero }

パブリック関数

QPageSize()
QPageSize(QPageSize::PageSizeId pageSize)
QPageSize(const QSize &pointSize, const QString &name = QString(), QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)
QPageSize(const QSizeF &size, QPageSize::Unit units, const QString &name = QString(), QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)
QPageSize(const QPageSize &other)
~QPageSize()
QSizeF definitionSize() const
QPageSize::Unit definitionUnits() const
QPageSize::PageSizeId id() const
bool isEquivalentTo(const QPageSize &other) const
bool isValid() const
QString key() const
QString name() const
QRectF rect(QPageSize::Unit units) const
QRect rectPixels(int resolution) const
QRect rectPoints() const
QSizeF size(QPageSize::Unit units) const
QSize sizePixels(int resolution) const
QSize sizePoints() const
void swap(QPageSize &other)
int windowsId() const
QPageSize &operator=(QPageSize &&other)
QPageSize &operator=(const QPageSize &other)

静的パブリックメンバー

QSizeF definitionSize(QPageSize::PageSizeId pageSizeId)
QPageSize::Unit definitionUnits(QPageSize::PageSizeId pageSizeId)
QPageSize::PageSizeId id(int windowsId)
QPageSize::PageSizeId id(const QSize &pointSize, QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)
QPageSize::PageSizeId id(const QSizeF &size, QPageSize::Unit units, QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)
QString key(QPageSize::PageSizeId pageSizeId)
QString name(QPageSize::PageSizeId pageSizeId)
QSizeF size(QPageSize::PageSizeId pageSizeId, QPageSize::Unit units)
QSize sizePixels(QPageSize::PageSizeId pageSizeId, int resolution)
QSize sizePoints(QPageSize::PageSizeId pageSizeId)
int windowsId(QPageSize::PageSizeId pageSizeId)
bool operator!=(const QPageSize &lhs, const QPageSize &rhs)
bool operator==(const QPageSize &lhs, const QPageSize &rhs)

詳細な説明

このクラスは、Adobe PostScript PPD Standard v4.3 で定義されている一連の標準ページサイズへの対応を実装しています。このクラスは、ポイント、ミリメートル、インチ単位での標準ページサイズセットを定義し、これらのサイズが一貫して使用されるようにします。他のサイズ単位も使用可能ですが、それらは計算結果となるため、必ずしも一貫性があるとは限りません。 定義されたポイントサイズは常に整数ですが、その他のサイズは単位の分数でも指定可能です。

定義されたサイズは常に「幅 × 高さ」の順序で指定され、ページの向きは暗黙的に指定されません。QPageSize::Ledger のように、幅が高さよりも大きいページサイズが定義される可能性があるため、幅と高さの値を比較してページの向きを判断することはできません。

たとえば、A4 は規格により 210mm × 297mm、8.27 インチ × 11.69 インチ、または 595pt × 842pt と定義されています。

また、任意の単位でカスタム名を付けたカスタムページサイズを定義することもでき、この単位サイズは保持され、他のすべての単位サイズの計算の基準として使用されます。

カスタムQSize を使用してQPageSizeを作成する際、QPageSizeがそのサイズを標準のページサイズに合わせようとするかどうかを選択できます。デフォルトでは、QPaperSizeはFuzzyMatch モードを使用し、指定されたページサイズが定義された標準サイズの3ポストスクリプトポイント以内の誤差に収まる場合、標準のページサイズに合わせます。 これを上書きして完全一致のみを要求することも可能ですが、単位間の変換で3ポイントが容易に失われ、誤ったページサイズになる可能性があるため、この方法は推奨されません。

QPageSizeのインスタンスは、印刷デバイスがサポートするページサイズを照会することによっても取得できます。この場合、返されるローカライズされた名前は、プリンタ自体によって定義されたものです。なお、印刷デバイスが現在のデフォルトロケールの言語をサポートしていない可能性があることに注意してください。

また、このクラスには、ページサイズIDと各種単位サイズとの相互変換を行うための便利なメソッドも用意されています。

QPagedPaintDevice およびQPdfWriterも参照してください 。

メンバ型のドキュメント

enum QPageSize::PageSizeId

この列挙型は、PostScript PPD 規格で定義されている利用可能なページサイズを一覧表示しています。これらの値は、QPagedPaintDevice およびQPrinter にも記載されています。

定義されているサイズは以下の通りです:

定数値説明
QPageSize::A03841 × 1189 mm
QPageSize::A14594 × 841 mm
QPageSize::A25420 × 594 mm
QPageSize::A36297 × 420 mm
QPageSize::A47210 x 297 mm、8.26 x 11.69 インチ
QPageSize::A58148 × 210 mm
QPageSize::A69105 × 148 mm
QPageSize::A71074 × 105 mm
QPageSize::A81152 × 74 mm
QPageSize::A91237 × 52 mm
QPageSize::B0141000 × 1414 mm
QPageSize::B115707 × 1000 mm
QPageSize::B216500 × 707 mm
QPageSize::B317353 × 500 mm
QPageSize::B418250 × 353 mm
QPageSize::B519176 × 250 mm、6.93 × 9.84 インチ
QPageSize::B620125 × 176 mm
QPageSize::B72188 × 125 mm
QPageSize::B82262 × 88 mm
QPageSize::B92344 × 62 mm
QPageSize::B102431 × 44 mm
QPageSize::C5E25163 × 229 mm
QPageSize::Comm10E26105 × 241 mm、米国標準10号封筒
QPageSize::DLE27110 × 220 mm
QPageSize::Executive27.5 × 10 インチ、190.5 × 254 mm
QPageSize::Folio28210 × 330 mm
QPageSize::Ledger29431.8 × 279.4 mm
QPageSize::Legal18.5 x 14 インチ、215.9 x 355.6 mm
QPageSize::Letter08.5 × 11 インチ、215.9 × 279.4 mm
QPageSize::Tabloid30279.4 x 431.8 mm
QPageSize::Custom31不明、またはユーザー定義のサイズ。
QPageSize::A1013 
QPageSize::A3Extra32 
QPageSize::A4Extra33 
QPageSize::A4Plus34 
QPageSize::A4Small35 
QPageSize::A5Extra36 
QPageSize::B5Extra37 
QPageSize::JisB038 
QPageSize::JisB139 
QPageSize::JisB240 
QPageSize::JisB341 
QPageSize::JisB442 
QPageSize::JisB543 
QPageSize::JisB644,
QPageSize::JisB745 
QPageSize::JisB846 
QPageSize::JisB947 
QPageSize::JisB1048 
QPageSize::AnsiALetter= 書簡
QPageSize::AnsiBLedger= 元帳
QPageSize::AnsiC49 
QPageSize::AnsiD50 
QPageSize::AnsiE51 
QPageSize::LegalExtra52 
QPageSize::LetterExtra53 
QPageSize::LetterPlus54 
QPageSize::LetterSmall55 
QPageSize::TabloidExtra56 
QPageSize::ArchA57 
QPageSize::ArchB58 
QPageSize::ArchC59 
QPageSize::ArchD60 
QPageSize::ArchE61 
QPageSize::Imperial7x962 
QPageSize::Imperial8x1063 
QPageSize::Imperial9x1164 
QPageSize::Imperial9x1265 
QPageSize::Imperial10x1166 
QPageSize::Imperial10x1367 
QPageSize::Imperial10x1468 
QPageSize::Imperial12x1169 
QPageSize::Imperial15x1170 
QPageSize::ExecutiveStandard71 
QPageSize::Note72 
QPageSize::Quarto73 
QPageSize::Statement74 
QPageSize::SuperA75 
QPageSize::SuperB76 
QPageSize::Postcard77 
QPageSize::DoublePostcard78 
QPageSize::Prc16K79 
QPageSize::Prc32K80 
QPageSize::Prc32KBig81 
QPageSize::FanFoldUS82 
QPageSize::FanFoldGerman83 
QPageSize::FanFoldGermanLegal84 
QPageSize::EnvelopeB485 
QPageSize::EnvelopeB586 
QPageSize::EnvelopeB687 
QPageSize::EnvelopeC088 
QPageSize::EnvelopeC189 
QPageSize::EnvelopeC290 
QPageSize::EnvelopeC391 
QPageSize::EnvelopeC492 
QPageSize::EnvelopeC5C5E= C5E
QPageSize::EnvelopeC693 
QPageSize::EnvelopeC6594 
QPageSize::EnvelopeC795 
QPageSize::EnvelopeDLDLE= DLE
QPageSize::Envelope996 
QPageSize::Envelope10Comm10E= Comm10E
QPageSize::Envelope1197 
QPageSize::Envelope1298 
QPageSize::Envelope1499 
QPageSize::EnvelopeMonarch100 
QPageSize::EnvelopePersonal101 
QPageSize::EnvelopeChou3102 
QPageSize::EnvelopeChou4103 
QPageSize::EnvelopeInvite104 
QPageSize::EnvelopeItalian105 
QPageSize::EnvelopeKaku2106 
QPageSize::EnvelopeKaku3107 
QPageSize::EnvelopePrc1108 
QPageSize::EnvelopePrc2109 
QPageSize::EnvelopePrc3110 
QPageSize::EnvelopePrc4111 
QPageSize::EnvelopePrc5112 
QPageSize::EnvelopePrc6113 
QPageSize::EnvelopePrc7114 
QPageSize::EnvelopePrc8115 
QPageSize::EnvelopePrc9116 
QPageSize::EnvelopePrc10117 
QPageSize::EnvelopeYou4118 
QPageSize::LastPageSizeEnvelopeYou4= EnvelopeYou4

歴史的な理由により、QPageSize::Executive は標準の PostScript および Windows の Executive サイズとは異なります。代わりに QPageSize::ExecutiveStandard を使用してください。

PostScript標準サイズのQPageSize::Folioは、WindowsのDMPAPER_FOLIOサイズとは異なります。必要に応じて、PostScript標準サイズのQPageSize::FanFoldGermanLegalを使用してください。

enum QPageSize::SizeMatchPolicy

定数値説明
QPageSize::FuzzyMatch0許容範囲内であれば、標準ページサイズに合わせる。
QPageSize::FuzzyOrientationMatch1向きに関係なく、許容誤差の範囲内であれば標準ページサイズに一致させる。
QPageSize::ExactMatch2サイズが完全に一致する場合にのみ、標準ページサイズに一致させます。

enum QPageSize::Unit

この列挙型は、ページサイズの測定単位を指定するために使用されます。

定数値説明
QPageSize::Millimeter0 
QPageSize::Point11/72インチ
QPageSize::Inch2 
QPageSize::Pica31フィートの72分の1、1インチの6分の1、12ポイント
QPageSize::Didot41/72フレンチインチ、0.375 mm
QPageSize::Cicero51/6フレンチインチ、12ディド、4.5mm

メンバー関数のドキュメント

QPageSize::QPageSize()

null の QPageSize を作成します。

QPageSize::QPageSize(QPageSize::PageSizeId pageSize)

標準の `pageSize` に基づく `QPageSize` を作成します。

pageSize がQPageSize::Custom の場合、結果として生成されるQPageSizeは無効になります。その場合は、カスタムサイズのコンストラクタを使用してください。

[explicit] QPageSize::QPageSize(const QSize &pointSize, const QString &name = QString(), QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)

指定されたpointSize を、対応するmatchPolicy を用いてポイント単位のQPageSizeとして作成します。

指定されたpointSize が標準のQPageSize::PageSizeId と一致する場合、そのページサイズが使用されます。なお、matchPolicy がFuzzyMatch の場合、pointSize が標準サイズに調整される可能性があることに注意してください。これを防ぐには、代わりにmatchPolicy としてExactMatch を使用してください。

指定されたpointSize が標準のQPageSize::PageSizeId でない場合、QPageSize::Custom サイズが作成されます。

name がnullの場合、標準のローカライズされた名前が使用されます。カスタムページサイズの場合は、「Custom (幅 x 高さ)」という形式のカスタム名が作成されます。

matchPolicy のデフォルト値はFuzzyMatch です。

[explicit] QPageSize::QPageSize(const QSizeF &size, QPageSize::Unit units, const QString &name = QString(), QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)

units 内の、指定されたsize に対応するカスタムページを作成します。

指定されたsize が標準のQPageSize::PageSizeId と一致する場合、そのページサイズが使用されます。なお、matchPolicy がFuzzyMatch の場合、size が標準サイズに調整される可能性があることに注意してください。これを防ぐには、代わりにmatchPolicy にExactMatch を指定してください。

指定されたsize が標準のQPageSize::PageSizeId ではない場合、QPageSize::Custom のサイズが作成されます。元の単位サイズは保持され、他のすべての単位サイズの計算の基準として使用されます。

name がnullの場合、「Custom (幅 × 高さ)」という形式のカスタム名が作成されます。ここで、サイズは指定された単位で表されます。

QPageSize::QPageSize(const QPageSize &other)

コピーコンストラクタ。other を this にコピーします。

[noexcept] QPageSize::~QPageSize()

ページを削除します。

QSizeF QPageSize::definitionSize() const

ページサイズの定義サイズを返します。

標準のページサイズの場合、これは関連する規格で定義されたサイズとなります。つまり、ISO A4はミリメートル単位で定義され、ANSI Letterはインチ単位で定義されます。

カスタムページサイズの場合、これはページサイズオブジェクトの作成に使用された元のサイズになります。

QPageSize が無効な場合、QSizeF も無効になります。

definitionUnits()も参照してください 。

[static] QSizeF QPageSize::definitionSize(QPageSize::PageSizeId pageSizeId)

標準のpageSizeId の定義サイズを返します。

定義単位を取得するには、QPageSize::definitionUnits() を呼び出します。

QPageSize::Unit QPageSize::definitionUnits() const

ページサイズの定義単位を返します。

標準のページサイズの場合、これは関連する規格で定義されている単位となります。つまり、ISO A4はミリメートル単位で定義され、ANSI Letterはインチ単位で定義されます。

カスタムページサイズの場合、これはページサイズオブジェクトの作成に使用された元の単位となります。

QPageSize が無効な場合、QPageSize::Unit も無効になります。

definitionSize()も参照してください 。

[static] QPageSize::Unit QPageSize::definitionUnits(QPageSize::PageSizeId pageSizeId)

標準のpageSizeId の定義単位を返します。

定義サイズを取得するには、QPageSize::definitionSize() を呼び出します。

QPageSize::PageSizeId QPageSize::id() const

そのページの標準的なQPageSize::PageSizeId を返すか、QPageSize::Custom を返す。

QPageSize が無効な場合、IDはQPageSize::Custom となります。

[static] QPageSize::PageSizeId QPageSize::id(int windowsId)

指定された Windows DMPAPER 列挙値 `windowsId` に対応する `PageSizeId ` を返します。

一致するPageSizeId が存在しない場合は、QPageSize::Custom が返されます。

[static] QPageSize::PageSizeId QPageSize::id(const QSize &pointSize, QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)

指定された `pointSize ` の標準的な `QPageSize::PageSizeId ` を、指定された `matchPolicy` を使用してポイント単位で返します。

FuzzyMatch を使用する場合、返されるPageSizeId のポイントサイズは、渡したpointSize と完全に一致しない可能性があります。計算に使用する前に、返されたPageSizeId を使用してQPageSize::sizePoints()を呼び出し、PageSizeId の実際のポイントサイズを確認してください。

[static] QPageSize::PageSizeId QPageSize::id(const QSizeF &size, QPageSize::Unit units, QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)

指定されたmatchPolicy を使用して、units 内の指定されたsize の標準QPageSize::PageSizeId を返します。

FuzzyMatch を使用する場合、返されるPageSizeId の単位サイズは、渡したsize と完全に一致しない可能性があります。計算に使用する前に、返されたPageSizeId を使用してQPageSize::size()を呼び出し、PageSizeId の実際の単位サイズを確認してください。

bool QPageSize::isEquivalentTo(const QPageSize &other) const

このページがother ページと同等である場合、つまり、名前などの他の属性にかかわらずページサイズが同じである場合に、true を返します。

bool QPageSize::isValid() const

このページサイズが有効な場合、true を返します。

ページサイズは、無効な `PageSizeId` で作成された場合、または負の値や無効な `QSize ` もしくは `QSizeF` で作成された場合、あるいは null コンストラクタで作成された場合、無効となる可能性があります。

QString QPageSize::key() const

ページサイズの一意なキーを返します。

デフォルトでは、これはページサイズに対するPPD標準のmediaOptionキーワード、またはPPDカスタムフォーマットキーとなります。QPageSize インスタンスが印刷デバイスから取得された場合、これは印刷デバイスによって提供されたキーとなり、標準のキーとは異なる場合があります。

QPageSize が無効な場合、キーは空の文字列になります。

このキーはエンドユーザーに表示してはならず、内部用のキーのみです。人間が読み取れる名前については、name() を使用してください。

name()も参照してください 。

[static] QString QPageSize::key(QPageSize::PageSizeId pageSizeId)

標準のpageSizeId のPPD mediaOptionキーワードを返します。

QPageSize が無効な場合、このキーは空になります。

QString QPageSize::name() const

ページサイズを表す、ローカライズされた人間が読みやすい名前を返します。

QPageSize インスタンスが印刷デバイスから取得された場合、使用される名前は印刷デバイスによって提供されたものになります。なお、印刷デバイスが現在のデフォルトのロケール言語に対応していない可能性があることに注意してください。

QPageSize が無効な場合、名前は空の文字列になります。

[static] QString QPageSize::name(QPageSize::PageSizeId pageSizeId)

標準のpageSizeId のローカライズされた名前を返します。

QPageSize が無効な場合、名前は空になります。

QRectF QPageSize::rect(QPageSize::Unit units) const

指定されたunits 形式でページの矩形を返します。

QPageSize が無効な場合、QRect も無効になります。

QRect QPageSize::rectPixels(int resolution) const

指定されたresolution に対応する、デバイスピクセル単位のページ矩形を返します。

QPageSize が無効な場合、QRect も無効になります。

QRect QPageSize::rectPoints() const

ページの矩形をPostscriptポイント(1インチの72分の1)単位で返します。

QPageSize が無効な場合、QRect も無効になります。

QSizeF QPageSize::size(QPageSize::Unit units) const

指定されたunits 内のページのサイズを返します。

QPageSize が無効な場合、QSizeF も無効になります。

[static] QSizeF QPageSize::size(QPageSize::PageSizeId pageSizeId, QPageSize::Unit units)

指定されたunits 形式で、標準のpageSizeId のサイズを返します。

QSize QPageSize::sizePixels(int resolution) const

指定されたresolution におけるページのサイズをデバイスピクセル単位で返します。

QPageSize が無効な場合、QSize も無効になります。

[static] QSize QPageSize::sizePixels(QPageSize::PageSizeId pageSizeId, int resolution)

指定されたresolution の、標準pageSizeId のサイズをデバイスピクセル単位で返します。

QSize QPageSize::sizePoints() const

ページのサイズをポストスクリプト・ポイント(1インチの72分の1)単位で返します。

QPageSize が無効な場合、QSize も無効になります。

[static] QSize QPageSize::sizePoints(QPageSize::PageSizeId pageSizeId)

標準のpageSizeId のサイズをポイント単位で返します。

[noexcept] void QPageSize::swap(QPageSize &other)

QPageSize をother に置き換えます。この処理は非常に高速で、失敗することはありません。

int QPageSize::windowsId() const

指定されたページサイズに対応する Windows DMPAPER 列挙型の値を返します。

有効な PPD ページサイズのすべてに Windows での対応する値があるわけではありません。その場合は 0 が返されます。

QPageSize が無効な場合、Windows IDは0になります。

id()も参照してください 。

[static] int QPageSize::windowsId(QPageSize::PageSizeId pageSizeId)

標準のpageSizeId に対応するWindowsのDMPAPER列挙値を返します。

有効な PPD ページサイズすべてに Windows での対応するサイズがあるわけではないため、対応するサイズがない場合は 0 が返されます。

[noexcept] QPageSize &QPageSize::operator=(QPageSize &&other)

other をこのQPageSize インスタンスに move-assign し、管理ポインタの所有権をこのインスタンスに移します。

QPageSize &QPageSize::operator=(const QPageSize &other)

代入演算子。other を this に代入します。

関連する非メンバー

bool operator!=(const QPageSize &lhs, const QPageSize &rhs)

ページサイズ `lhs ` とページサイズ `rhs` が等しくない場合、つまりページサイズの属性が異なる場合に、true を返します。現在の属性は size と name です。

bool operator==(const QPageSize &lhs, const QPageSize &rhs)

ページサイズ `lhs ` がページサイズ `rhs` と等しい場合、つまりページサイズが同じ属性を持つ場合に、true を返します。現在の属性は size と name です。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.