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::A0 | 3 | 841 × 1189 mm |
QPageSize::A1 | 4 | 594 × 841 mm |
QPageSize::A2 | 5 | 420 × 594 mm |
QPageSize::A3 | 6 | 297 × 420 mm |
QPageSize::A4 | 7 | 210 x 297 mm、8.26 x 11.69 インチ |
QPageSize::A5 | 8 | 148 × 210 mm |
QPageSize::A6 | 9 | 105 × 148 mm |
QPageSize::A7 | 10 | 74 × 105 mm |
QPageSize::A8 | 11 | 52 × 74 mm |
QPageSize::A9 | 12 | 37 × 52 mm |
QPageSize::B0 | 14 | 1000 × 1414 mm |
QPageSize::B1 | 15 | 707 × 1000 mm |
QPageSize::B2 | 16 | 500 × 707 mm |
QPageSize::B3 | 17 | 353 × 500 mm |
QPageSize::B4 | 18 | 250 × 353 mm |
QPageSize::B5 | 19 | 176 × 250 mm、6.93 × 9.84 インチ |
QPageSize::B6 | 20 | 125 × 176 mm |
QPageSize::B7 | 21 | 88 × 125 mm |
QPageSize::B8 | 22 | 62 × 88 mm |
QPageSize::B9 | 23 | 44 × 62 mm |
QPageSize::B10 | 24 | 31 × 44 mm |
QPageSize::C5E | 25 | 163 × 229 mm |
QPageSize::Comm10E | 26 | 105 × 241 mm、米国標準10号封筒 |
QPageSize::DLE | 27 | 110 × 220 mm |
QPageSize::Executive | 2 | 7.5 × 10 インチ、190.5 × 254 mm |
QPageSize::Folio | 28 | 210 × 330 mm |
QPageSize::Ledger | 29 | 431.8 × 279.4 mm |
QPageSize::Legal | 1 | 8.5 x 14 インチ、215.9 x 355.6 mm |
QPageSize::Letter | 0 | 8.5 × 11 インチ、215.9 × 279.4 mm |
QPageSize::Tabloid | 30 | 279.4 x 431.8 mm |
QPageSize::Custom | 31 | 不明、またはユーザー定義のサイズ。 |
QPageSize::A10 | 13 | |
QPageSize::A3Extra | 32 | |
QPageSize::A4Extra | 33 | |
QPageSize::A4Plus | 34 | |
QPageSize::A4Small | 35 | |
QPageSize::A5Extra | 36 | |
QPageSize::B5Extra | 37 | |
QPageSize::JisB0 | 38 | |
QPageSize::JisB1 | 39 | |
QPageSize::JisB2 | 40 | |
QPageSize::JisB3 | 41 | |
QPageSize::JisB4 | 42 | |
QPageSize::JisB5 | 43 | |
QPageSize::JisB6 | 44 | , |
QPageSize::JisB7 | 45 | |
QPageSize::JisB8 | 46 | |
QPageSize::JisB9 | 47 | |
QPageSize::JisB10 | 48 | |
QPageSize::AnsiA | Letter | = 書簡 |
QPageSize::AnsiB | Ledger | = 元帳 |
QPageSize::AnsiC | 49 | |
QPageSize::AnsiD | 50 | |
QPageSize::AnsiE | 51 | |
QPageSize::LegalExtra | 52 | |
QPageSize::LetterExtra | 53 | |
QPageSize::LetterPlus | 54 | |
QPageSize::LetterSmall | 55 | |
QPageSize::TabloidExtra | 56 | |
QPageSize::ArchA | 57 | |
QPageSize::ArchB | 58 | |
QPageSize::ArchC | 59 | |
QPageSize::ArchD | 60 | |
QPageSize::ArchE | 61 | |
QPageSize::Imperial7x9 | 62 | |
QPageSize::Imperial8x10 | 63 | |
QPageSize::Imperial9x11 | 64 | |
QPageSize::Imperial9x12 | 65 | |
QPageSize::Imperial10x11 | 66 | |
QPageSize::Imperial10x13 | 67 | |
QPageSize::Imperial10x14 | 68 | |
QPageSize::Imperial12x11 | 69 | |
QPageSize::Imperial15x11 | 70 | |
QPageSize::ExecutiveStandard | 71 | |
QPageSize::Note | 72 | |
QPageSize::Quarto | 73 | |
QPageSize::Statement | 74 | |
QPageSize::SuperA | 75 | |
QPageSize::SuperB | 76 | |
QPageSize::Postcard | 77 | |
QPageSize::DoublePostcard | 78 | |
QPageSize::Prc16K | 79 | |
QPageSize::Prc32K | 80 | |
QPageSize::Prc32KBig | 81 | |
QPageSize::FanFoldUS | 82 | |
QPageSize::FanFoldGerman | 83 | |
QPageSize::FanFoldGermanLegal | 84 | |
QPageSize::EnvelopeB4 | 85 | |
QPageSize::EnvelopeB5 | 86 | |
QPageSize::EnvelopeB6 | 87 | |
QPageSize::EnvelopeC0 | 88 | |
QPageSize::EnvelopeC1 | 89 | |
QPageSize::EnvelopeC2 | 90 | |
QPageSize::EnvelopeC3 | 91 | |
QPageSize::EnvelopeC4 | 92 | |
QPageSize::EnvelopeC5 | C5E | = C5E |
QPageSize::EnvelopeC6 | 93 | |
QPageSize::EnvelopeC65 | 94 | |
QPageSize::EnvelopeC7 | 95 | |
QPageSize::EnvelopeDL | DLE | = DLE |
QPageSize::Envelope9 | 96 | |
QPageSize::Envelope10 | Comm10E | = Comm10E |
QPageSize::Envelope11 | 97 | |
QPageSize::Envelope12 | 98 | |
QPageSize::Envelope14 | 99 | |
QPageSize::EnvelopeMonarch | 100 | |
QPageSize::EnvelopePersonal | 101 | |
QPageSize::EnvelopeChou3 | 102 | |
QPageSize::EnvelopeChou4 | 103 | |
QPageSize::EnvelopeInvite | 104 | |
QPageSize::EnvelopeItalian | 105 | |
QPageSize::EnvelopeKaku2 | 106 | |
QPageSize::EnvelopeKaku3 | 107 | |
QPageSize::EnvelopePrc1 | 108 | |
QPageSize::EnvelopePrc2 | 109 | |
QPageSize::EnvelopePrc3 | 110 | |
QPageSize::EnvelopePrc4 | 111 | |
QPageSize::EnvelopePrc5 | 112 | |
QPageSize::EnvelopePrc6 | 113 | |
QPageSize::EnvelopePrc7 | 114 | |
QPageSize::EnvelopePrc8 | 115 | |
QPageSize::EnvelopePrc9 | 116 | |
QPageSize::EnvelopePrc10 | 117 | |
QPageSize::EnvelopeYou4 | 118 | |
QPageSize::LastPageSize | EnvelopeYou4 | = EnvelopeYou4 |
歴史的な理由により、QPageSize::Executive は標準の PostScript および Windows の Executive サイズとは異なります。代わりに QPageSize::ExecutiveStandard を使用してください。
PostScript標準サイズのQPageSize::Folioは、WindowsのDMPAPER_FOLIOサイズとは異なります。必要に応じて、PostScript標準サイズのQPageSize::FanFoldGermanLegalを使用してください。
enum QPageSize::SizeMatchPolicy
| 定数 | 値 | 説明 |
|---|---|---|
QPageSize::FuzzyMatch | 0 | 許容範囲内であれば、標準ページサイズに合わせる。 |
QPageSize::FuzzyOrientationMatch | 1 | 向きに関係なく、許容誤差の範囲内であれば標準ページサイズに一致させる。 |
QPageSize::ExactMatch | 2 | サイズが完全に一致する場合にのみ、標準ページサイズに一致させます。 |
enum QPageSize::Unit
この列挙型は、ページサイズの測定単位を指定するために使用されます。
| 定数 | 値 | 説明 |
|---|---|---|
QPageSize::Millimeter | 0 | |
QPageSize::Point | 1 | 1/72インチ |
QPageSize::Inch | 2 | |
QPageSize::Pica | 3 | 1フィートの72分の1、1インチの6分の1、12ポイント |
QPageSize::Didot | 4 | 1/72フレンチインチ、0.375 mm |
QPageSize::Cicero | 5 | 1/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.