Класс QPageLayout
Описывает размер, ориентацию и поля страницы. Подробнее...
| Заголовок: | #include <QPageLayout> |
| CMake: | find_package(Qt6 COMPONENTS Gui REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| С тех пор: | Qt 5.3 |
Типы общедоступных
| Перечисление | Режим { РежимСтандартный, РежимПолнойСтраницы } |
| Перечисление | Ориентация { Портрет, Альбом } |
| Перечисление | Единица { Миллиметр, Точка, Дюйм, Пика, Дидот, Цицерон } |
Общедоступные функции
| QPageLayout(const QPageLayout &other) | |
| QPageLayout(const QPageSize &pageSize, QPageLayout::Orientation orientation, const QMarginsF &margins, QPageLayout::Unit units = Point, const QMarginsF &minMargins = QMarginsF(0, 0, 0, 0)) | |
| QPageLayout() | |
| QPageLayout & | operator=(const QPageLayout &other) |
| QPageLayout & | operator=(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) |
| bool | setLeftMargin(qreal leftMargin) |
| bool | setMargins(const QMarginsF &margins) |
| 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) |
| bool | setTopMargin(qreal topMargin) |
| void | setUnits(QPageLayout::Unit units) |
| void | swap(QPageLayout &other) |
| QPageLayout::Unit | units() const |
Связанные нечлены
| bool | operator!=(const QPageLayout &lhs, const QPageLayout &rhs) |
| bool | operator==(const QPageLayout &lhs, const QPageLayout &rhs) |
Подробное описание
Класс QPageLayout определяет макет страницы в документе с разбиением на страницы, с возможностью задания размера страницы, ориентации и полей, а также получения прямоугольников полной страницы и области рисования в различных единицах измерения.
Размер страницы определяется классом QPageSize, который можно использовать для запроса атрибутов размера страницы. Обратите внимание, что сам QPageSize всегда определен в портретном (Portrait) ориентации.
Минимальные поля могут быть определены для макета, но обычно имеют значение по умолчанию 0. При использовании с поддержкой печати Qt минимальные поля будут отражать минимальную печатаемую область, определенную принтером.
В стандартном режиме StandardMode текущие поля и минимальные поля всегда учитываются. Прямоугольник для рисования — это весь прямоугольник страницы минус текущие поля, и текущие поля могут быть установлены только в значениях между минимальными полями и максимальными полями, разрешенными полным размером страницы.
В режиме FullPageMode текущие поля и минимальные поля не учитываются. Прямоугольник для рисования — это весь прямоугольник страницы, и текущие поля могут быть установлены в любые значения независимо от минимальных полей и размера страницы.
См. также QPageSize.
Документация по типам членов
enum QPageLayout::Mode
Определяет режим макета страницы
| Константа | Значение | Описание |
|---|---|---|
QPageLayout::StandardMode |
0 |
Прямоугольник для рисования включает поля, поля должны быть между минимальным и максимальным значениями. |
QPageLayout::FullPageMode |
1 |
Прямоугольник для рисования не включает поля, поля могут иметь любое значение и должны управляться вручную. |
enum QPageLayout::Orientation
Этот перечисление определяет ориентацию страницы
| Постоянная | Значение | Описание |
|---|---|---|
QPageLayout::Portrait |
0 |
Размер страницы используется в стандартной ориентации |
QPageLayout::Landscape |
1 |
Размер страницы повернут на 90 градусов |
Обратите внимание, что некоторые стандартные размеры страниц определены с шириной, большей, чем высота, поэтому ориентация определяется относительно стандартного размера страницы, а не с использованием относительных размеров страницы.
enum QPageLayout::Unit
Этот тип перечисления используется для указания единиц измерения для макета страницы и отступов.
| Постоянная | Значение | Описание |
|---|---|---|
QPageLayout::Millimeter |
0 |
|
QPageLayout::Point |
1 |
1/72 дюйма |
QPageLayout::Inch |
2 |
|
QPageLayout::Pica |
3 |
1/72 фута, 1/6 дюйма, 12 пунктов |
QPageLayout::Didot |
4 |
1/72 французского дюйма, 0,375 мм |
QPageLayout::Cicero |
5 |
1/6 французского дюйма, 12 дидотов, 4,5 мм |
Документация функций-членов
QPageLayout::QPageLayout(const QPageLayout &other)
Конструктор копирования, копирует other в этот объект.
QPageLayout::QPageLayout(const QPageSize &pageSize, QPageLayout::Orientation orientation, const QMarginsF &margins, QPageLayout::Unit units = Point, const QMarginsF &minMargins = QMarginsF(0, 0, 0, 0))
Создаёт QPageLayout с заданным pageSize, orientation и margins в заданных units.
Необязательно определить минимально допустимые отступы minMargins, например, минимальные отступы, которые может напечатать физическое печатающее устройство.
Созданный QPageLayout будет в режиме StandardMode.
Указанные margins будут ограничены минимальными и максимальными отступами, разрешенными размером страницы.
QPageLayout::QPageLayout()
Создаёт недействительный QPageLayout.
QPageLayout &QPageLayout::operator=(const QPageLayout &other)
Оператор присваивания, присваивает other этому объекту.
QPageLayout &QPageLayout::operator=(QPageLayout &&other)
Перемещающее присваивание, присваивает other этому экземпляру QPageLayout, передавая владение управляемым указателем этому экземпляру.
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 дюйма).
Прямоугольник страницы учитывает размер и ориентацию страницы, но не отступы страницы.
См. также paintRect().
bool QPageLayout::isEquivalentTo(const QPageLayout &other) const
Возвращает true , если макет страницы эквивалентен макету страницы other, т.е. если страница имеет тот же размер, отступы и ориентацию.
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 дюйма).
См. также 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
Возвращает прямоугольник, который можно заполнить, в округленных постскриптовых пунктах (1/72 дюйма).
Прямоугольник, который можно заполнить, учитывает размер страницы, ориентацию и поля.
Если режим FullPageMode установлен, то возвращается fullRect(), и поля необходимо управлять вручную.
bool QPageLayout::setBottomMargin(qreal bottomMargin)
Устанавливает нижнее поле страницы макета страницы в bottomMargin. Возвращает true, если поле было успешно установлено.
Используемые единицы — те, которые в настоящее время определены для макета. Чтобы использовать другие единицы, сначала вызовите setUnits().
Если используется режим по умолчанию StandardMode, то новое значение поля должно находиться между минимальным установленным значением и максимальным значением поля, разрешенным размером страницы, в противном случае поле не будет установлено.
Если используется режим FullPageMode, то любые значения полей будут приняты.
См. также setMargins() и margins().
bool QPageLayout::setLeftMargin(qreal leftMargin)
Устанавливает левое поле страницы макета страницы в leftMargin. Возвращает true, если поле было успешно установлено.
Используемые единицы — те, которые в настоящее время определены для макета. Чтобы использовать другие единицы, сначала вызовите setUnits().
Если используется режим по умолчанию StandardMode, то новое значение поля должно находиться между минимальным установленным значением и максимальным значением поля, разрешенным размером страницы, в противном случае поле не будет установлено.
Если используется режим FullPageMode, то любые значения полей будут приняты.
См. также setMargins() и margins().
bool QPageLayout::setMargins(const QMarginsF &margins)
Устанавливает поля страницы макета страницы в margins. Возвращает true, если поля были успешно установлены.
Используемые единицы — те, которые в настоящее время определены для макета. Чтобы использовать другие единицы, сначала вызовите setUnits().
Если используется режим по умолчанию StandardMode, то все новые значения полей должны находиться между минимальными установленными значениями и максимальными значениями полей, разрешенными размером страницы, в противном случае поля не будут установлены.
Если используется режим FullPageMode, то любые значения полей будут приняты.
См. также 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)
Устанавливает правое поле страницы макета страницы в rightMargin. Возвращает true, если поле было успешно установлено.
Используемые единицы — те, которые в настоящее время определены для макета. Чтобы использовать другие единицы, сначала вызовите setUnits().
Если используется режим по умолчанию StandardMode, то новое значение поля должно находиться между минимальным установленным значением и максимальным значением поля, разрешенным размером страницы, в противном случае поле не будет установлено.
Если используется режим FullPageMode, то любые значения полей будут приняты.
См. также setMargins() и margins().
bool QPageLayout::setTopMargin(qreal topMargin)
Устанавливает верхнее поле страницы макета страницы в topMargin. Возвращает true, если поле было успешно установлено.
Используемые единицы — те, которые в настоящее время определены для макета. Чтобы использовать другие единицы, сначала вызовите setUnits().
Если используется режим по умолчанию StandardMode, то новое значение поля должно находиться между минимальным установленным значением и максимальным значением поля, разрешенным размером страницы, в противном случае поле не будет установлено.
Если используется режим FullPageMode, то любые значения полей будут приняты.
См. также setMargins() и margins().
void QPageLayout::setUnits(QPageLayout::Unit units)
Устанавливает используемые единицы для определения макета страницы.
См. также units().
void QPageLayout::swap(QPageLayout &other)
Меняет местами этот макет страницы с other. Эта функция очень быстрая и никогда не терпит неудачу.
QPageLayout::Unit QPageLayout::units() const
Возвращает единицы, в которых в настоящее время определен макет страницы.
См. также setUnits().
Связанные нечлены
bool operator!=(const QPageLayout &lhs, const QPageLayout &rhs)
Возвращает true если макет страницы lhs не равен макету страницы rhs, то есть если какие-либо атрибуты отличаются.
Обратите внимание, что это строгая проверка равенства, особенно для размера страницы, где идентификатор, имя и размер QPageSize должны точно совпадать, а для полей — единицы должны совпадать.
См. также QPageLayout::isEquivalentTo().
bool operator==(const QPageLayout &lhs, const QPageLayout &rhs)
Возвращает true если макет страницы lhs равен макету страницы rhs, то есть если все атрибуты точно равны.
Обратите внимание, что это строгая проверка равенства, особенно для размера страницы, где идентификатор, имя и размер QPageSize должны точно совпадать, а для полей — единицы должны совпадать.
См. также QPageLayout::isEquivalentTo().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qpagelayout.html