このページでは

QPageLayout Class

ページのサイズ、向き、余白について説明します。詳細...

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

パブリック型

enum Mode { StandardMode, FullPageMode }
enum Orientation { Portrait, Landscape }
(since 6.8) enum class OutOfBoundsPolicy { Reject, Clamp }
enum Unit { Millimeter, Point, Inch, Pica, Didot, Cicero }

パブリック関数

QPageLayout()
QPageLayout(const QPageSize &pageSize, QPageLayout::Orientation orientation, const QMarginsF &margins, QPageLayout::Unit units = Point, const QMarginsF &minMargins = QMarginsF(0, 0, 0, 0))
QPageLayout(const QPageLayout &other)
~QPageLayout()
QRectF fullRect() const
QRectF fullRect(QPageLayout::Unit units) const
QRect fullRectPixels(int resolution) const
QRect fullRectPoints() const
bool isEquivalentTo(const QPageLayout &other) const
bool isValid() const
QMarginsF margins() const
QMarginsF margins(QPageLayout::Unit units) const
QMargins marginsPixels(int resolution) const
QMargins marginsPoints() const
QMarginsF maximumMargins() const
QMarginsF minimumMargins() const
QPageLayout::Mode mode() const
QPageLayout::Orientation orientation() const
QPageSize pageSize() const
QRectF paintRect() const
QRectF paintRect(QPageLayout::Unit units) const
QRect paintRectPixels(int resolution) const
QRect paintRectPoints() const
bool setBottomMargin(qreal bottomMargin, QPageLayout::OutOfBoundsPolicy outOfBoundsPolicy = OutOfBoundsPolicy::Reject)
bool setLeftMargin(qreal leftMargin, QPageLayout::OutOfBoundsPolicy outOfBoundsPolicy = OutOfBoundsPolicy::Reject)
bool setMargins(const QMarginsF &margins, QPageLayout::OutOfBoundsPolicy outOfBoundsPolicy = OutOfBoundsPolicy::Reject)
void setMinimumMargins(const QMarginsF &minMargins)
void setMode(QPageLayout::Mode mode)
void setOrientation(QPageLayout::Orientation orientation)
void setPageSize(const QPageSize &pageSize, const QMarginsF &minMargins = QMarginsF(0, 0, 0, 0))
bool setRightMargin(qreal rightMargin, QPageLayout::OutOfBoundsPolicy outOfBoundsPolicy = OutOfBoundsPolicy::Reject)
bool setTopMargin(qreal topMargin, QPageLayout::OutOfBoundsPolicy outOfBoundsPolicy = OutOfBoundsPolicy::Reject)
void setUnits(QPageLayout::Unit units)
void swap(QPageLayout &other)
QPageLayout::Unit units() const
QPageLayout &operator=(QPageLayout &&other)
QPageLayout &operator=(const QPageLayout &other)
bool operator!=(const QPageLayout &lhs, const QPageLayout &rhs)
bool operator==(const QPageLayout &lhs, const QPageLayout &rhs)

詳細な説明

QPageLayout クラスは、ページ分割されたドキュメント内のページのレイアウトを定義します。ページサイズ、向き、余白を設定でき、これらの属性によって定義される全ページおよび描画可能ページの矩形を、さまざまな単位で照会することができます。

ページサイズは、QPageSize クラスによって定義され、このクラスからページサイズの属性を照会することができます。なお、QPageSize 自体は常に縦向き(Portrait)で定義されることに注意してください。

レイアウトに対して最小余白を定義することは可能ですが、通常はデフォルトで 0 になります。Qt Print Support と組み合わせて使用する場合、最小余白はプリンタによって定義された最小印刷可能領域を反映します。

デフォルトのStandardMode では、現在の余白と最小余白が常に考慮されます。描画可能矩形は、ページ全体の矩形から現在の余白を差し引いたものであり、現在の余白は、最小余白とページ全体のサイズで許容される最大余白の間の値にのみ設定できます。

FullPageMode では、現在の余白と最小余白は考慮されません。描画可能領域はページ全体の矩形そのものであり、現在の余白は、最小余白やページサイズに関係なく、任意の値に設定できます。

「QPageSize」も参照してください 。

メンバ型のドキュメント

enum QPageLayout::Mode

ページレイアウトモードを定義します

定数値説明
QPageLayout::StandardMode0「Paint Rect」には余白が含まれます。余白は最小値と最大値の範囲内である必要があります。
QPageLayout::FullPageMode1Paint Rect には余白は含まれません。余白は任意の値に設定できますが、手動で管理する必要があります。

StandardMode では、マージンを設定する際、Clamp を使用して、マージンが許容される最小値と最大値の範囲内に収まるよう自動的に制限します。

「OutOfBoundsPolicy」も参照してください 。

enum QPageLayout::Orientation

この列挙型は、ページの向きを定義します

定数値説明
QPageLayout::Portrait0ページサイズは、デフォルトの向きで使用されます
QPageLayout::Landscape1ページサイズは 90 度回転されます

一部の標準ページサイズでは、幅が高さよりも大きく定義されているため、向きは相対的なページ寸法ではなく、標準ページサイズを基準として定義されることに注意してください。

[since 6.8] enum class QPageLayout::OutOfBoundsPolicy

範囲外となったマージンに関するポリシーを定義します

定数値説明
QPageLayout::OutOfBoundsPolicy::Reject0マージンは最小値と最大値の範囲内にある必要があります。範囲外の場合は拒否されます。
QPageLayout::OutOfBoundsPolicy::Clamp1マージンは、有効であることを保証するために、最小値と最大値の範囲内に制限されます。

注: FullPageMode では、この ポリシーは 適用されず、すべてのマージンが受け入れられます。

この列挙型はQt 6.8で導入されました。

enum QPageLayout::Unit

この列挙型は、ページレイアウトや余白の測定単位を指定するために使用されます。

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

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

QPageLayout::QPageLayout()

無効な QPageLayout を作成します。

QPageLayout::QPageLayout(const QPageSize &pageSize, QPageLayout::Orientation orientation, const QMarginsF &margins, QPageLayout::Unit units = Point, const QMarginsF &minMargins = QMarginsF(0, 0, 0, 0))

指定された `pageSize`、`orientation `、および `margins ` を用いて、指定された `units` 内に `QPageLayout` を作成します。

オプションで、許容される最小余白minMargins (例:物理的な印刷デバイスで印刷可能な最小余白)を定義します。

構築された QPageLayout はStandardMode に格納されます。

指定されたmargins は、ページサイズで許容される最小余白および最大余白の範囲内に収められます。

QPageLayout::QPageLayout(const QPageLayout &other)

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

[noexcept] QPageLayout::~QPageLayout()

ページのレイアウトが崩れてしまいます。

QRectF QPageLayout::fullRect() const

現在のレイアウト単位で、ページ全体の矩形を返します。

このページ矩形には、ページサイズとページの向きが反映されますが、ページの余白は考慮されません。

paintRect() およびunits()も参照してください 。

QRectF QPageLayout::fullRect(QPageLayout::Unit units) const

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

このページ矩形は、ページサイズとページの向きを考慮しますが、ページの余白は考慮しません。

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

QRect QPageLayout::fullRectPixels(int resolution) const

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

このページ矩形は、ページサイズとページの向きを考慮しますが、ページの余白は考慮しません。

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

QRect QPageLayout::fullRectPoints() const

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

このページ矩形には、ページサイズとページの向きが反映されますが、ページの余白は考慮されません。

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

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

このページレイアウトが「other 」ページレイアウトと同等である場合、つまり、ページのサイズ、余白、向きが同じである場合に、true を返します。

bool QPageLayout::isValid() const

このページレイアウトが有効な場合、true を返します。

QMarginsF QPageLayout::margins() const

現在設定されている単位を使用して、ページレイアウトの余白を返します。

setMargins() およびunits()も参照してください 。

QMarginsF QPageLayout::margins(QPageLayout::Unit units) const

指定されたunits を使用して、ページレイアウトの余白を返します。

setMargins() およびmargins()も参照してください 。

QMargins QPageLayout::marginsPixels(int resolution) const

指定されたresolution に対するページレイアウトの余白を、デバイスピクセル単位で返します。

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

QMargins QPageLayout::marginsPoints() const

ページレイアウトの余白をPostScriptポイント(1インチの72分の1)単位で返します。

setMargins() およびmargins()も参照してください 。

QMarginsF QPageLayout::maximumMargins() const

ページレイアウトが「StandardMode 」の場合に適用される最大余白を返します。

許容される最大余白は、ページの全サイズから設定された最小余白を差し引いて計算されます。たとえば、ページの幅が 100 ポイントで、右側の最小余白が 10 ポイントの場合、左側の最大余白は 90 ポイントになります。

setMinimumMargins() およびminimumMargins()も参照してください 。

QMarginsF QPageLayout::minimumMargins() const

ページレイアウトの最小余白を返します。

setMinimumMargins() およびmaximumMargins()も参照してください 。

QPageLayout::Mode QPageLayout::mode() const

ページレイアウトモードを返します。

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

QPageLayout::Orientation QPageLayout::orientation() const

ページレイアウトのページの向きを返します。

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

QPageSize QPageLayout::pageSize() const

ページレイアウトのページサイズを返します。

なお、QPageSize は常に「縦向き」で定義されている点に注意してください。設定された向きを考慮したサイズを取得するには、fullRect() を使用する必要があります。

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

QRectF QPageLayout::paintRect() const

現在のレイアウト単位でのページ矩形を返します。

描画可能領域は、ページのサイズ、向き、および余白を考慮して算出されます。

FullPageMode モードが設定されている場合、fullRect()が返され、余白は手動で管理する必要があります。

QRectF QPageLayout::paintRect(QPageLayout::Unit units) const

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

描画可能な矩形は、ページのサイズ、向き、および余白を考慮に入れています。

FullPageMode モードが設定されている場合、fullRect()が返され、余白は手動で管理する必要があります。

QRect QPageLayout::paintRectPixels(int resolution) const

指定されたresolution に対する、丸みを帯びたデバイスピクセル単位の描画可能矩形を返します。

この描画可能矩形は、ページサイズ、向き、および余白を考慮に入れています。

FullPageMode モードが設定されている場合、fullRect()が返され、余白は手動で管理する必要があります。

QRect QPageLayout::paintRectPoints() const

ペイント可能な矩形を、丸め処理済みのPostScriptポイント(1インチの72分の1)単位で返します。

この描画可能矩形は、ページサイズ、向き、および余白を考慮しています。

FullPageMode モードが設定されている場合、fullRect()が返され、余白は手動で管理する必要があります。

bool QPageLayout::setBottomMargin(qreal bottomMargin, QPageLayout::OutOfBoundsPolicy outOfBoundsPolicy = OutOfBoundsPolicy::Reject)

ページレイアウトの下部余白をbottomMargin に設定します。余白の設定に成功した場合はtrueを返します。

使用される単位は、レイアウトに対して現在定義されている単位です。別の単位を使用するには、まずsetUnits()を呼び出してください。

Qt 6.8以降、オプションのoutOfBoundsPolicy を使用することで、範囲外となった余白の処理方法を指定できるようになりました。

setMargins() およびmargins()も参照してください 。

bool QPageLayout::setLeftMargin(qreal leftMargin, QPageLayout::OutOfBoundsPolicy outOfBoundsPolicy = OutOfBoundsPolicy::Reject)

ページレイアウトの左余白をleftMargin に設定します。余白の設定に成功した場合はtrueを返します。

使用される単位は、そのレイアウトに対して現在定義されている単位です。異なる単位を使用するには、まず `setUnits()` を呼び出してください。

Qt 6.8 以降、オプションの `outOfBoundsPolicy ` を使用して、範囲外の余白の処理方法を指定できるようになりました。

setMargins() およびmargins()も参照してください 。

bool QPageLayout::setMargins(const QMarginsF &margins, QPageLayout::OutOfBoundsPolicy outOfBoundsPolicy = OutOfBoundsPolicy::Reject)

ページレイアウトの余白をmargins に設定します。余白の設定に成功した場合はtrueを返します。

使用される単位は、そのレイアウトに対して現在定義されている単位です。別の単位を使用するには、まずsetUnits()を呼び出してください。

Qt 6.8 以降では、オプションの `outOfBoundsPolicy ` を使用して、範囲外の余白をどのように扱うかを指定できます。

margins() およびunits()も参照してください 。

void QPageLayout::setMinimumMargins(const QMarginsF &minMargins)

ページレイアウトの最小余白を「minMargins 」に設定します。

ページサイズに対して設定されたデフォルト値を上書きすることは推奨されません。これは、物理的な印刷デバイスにとっての最小印刷可能領域である可能性があるためです。

StandardMode モードが設定されている場合、既存の余白は、新しいminMargins およびページサイズで許可される最大値の範囲内に制限されます。FullPageMode が設定されている場合、既存の余白は変更されません。

minimumMargins() およびsetMargins()も参照してください 。

void QPageLayout::setMode(QPageLayout::Mode mode)

ページレイアウトモードを「mode 」に設定します。

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

void QPageLayout::setOrientation(QPageLayout::Orientation orientation)

ページレイアウトのページ向きを「orientation 」に設定します。

向きを変更しても、現在の余白や最小余白には影響しません。

「orientation()」も参照してください 。

void QPageLayout::setPageSize(const QPageSize &pageSize, const QMarginsF &minMargins = QMarginsF(0, 0, 0, 0))

ページレイアウトのページサイズをpageSize に設定します。

オプションで、許容される最小余白minMargins を定義できます。例えば、物理的な印刷デバイスで印刷可能な最小余白などです。定義しない場合、最小余白はデフォルトで 0 になります。

StandardMode が設定されている場合、既存の余白は、新しい最小余白およびページサイズで許容される最大余白の範囲内に制限されます。FullPageMode が設定されている場合、既存の余白は変更されません。

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

bool QPageLayout::setRightMargin(qreal rightMargin, QPageLayout::OutOfBoundsPolicy outOfBoundsPolicy = OutOfBoundsPolicy::Reject)

ページレイアウトの右余白をrightMargin に設定します。余白の設定に成功した場合はtrueを返します。

使用される単位は、そのレイアウトに対して現在定義されている単位です。別の単位を使用するには、まず `setUnits()` を呼び出してください。

Qt 6.8 以降、オプションの `outOfBoundsPolicy ` を使用して、範囲外の余白の扱い方を指定できるようになりました。

setMargins() およびmargins()も参照してください 。

bool QPageLayout::setTopMargin(qreal topMargin, QPageLayout::OutOfBoundsPolicy outOfBoundsPolicy = OutOfBoundsPolicy::Reject)

ページレイアウトの上部余白をtopMargin に設定します。余白の設定に成功した場合はtrueを返します。

使用される単位は、そのレイアウトに対して現在定義されている単位です。別の単位を使用するには、まずsetUnits()を呼び出してください。

Qt 6.8 以降、オプションの `outOfBoundsPolicy ` を使用して、範囲外の余白の処理方法を指定できるようになりました。

setMargins() およびmargins()も参照してください 。

void QPageLayout::setUnits(QPageLayout::Unit units)

ページのレイアウトを定義するために使用されるunits を設定します。

「units()」も参照してください 。

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

このページのレイアウトを「other 」と入れ替えます。この操作は非常に高速で、失敗することはありません。

QPageLayout::Unit QPageLayout::units() const

ページレイアウトが現在定義されている単位を返します。

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

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

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

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

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

関連する非メンバー

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

ページレイアウトlhs がページレイアウトrhs と等しくない場合、すなわちいずれかの属性が異なる場合、true を返します。

これは厳密な等価性であることに注意してください。特にページサイズについては、QPageSize のID、名前、サイズが完全に一致する必要があり、余白については単位が一致する必要があります。

QPageLayout::isEquivalentTo()も参照してください 。

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

ページレイアウトlhs がページレイアウトrhs と等しい場合、すなわちすべての属性が完全に一致する場合に、true を返します。

これは厳密な等価性であることに注意してください。特にページサイズについては、QPageSize のID、名前、サイズが完全に一致している必要があり、余白については単位が一致している必要があります。

QPageLayout::isEquivalentTo()も参照してください 。

© 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.