8#include <QtGui/qtguiglobal.h>
9#include <QtCore/qmetatype.h>
10#include <QtCore/qshareddata.h>
18class QPageSizePrivate;
166 LastPageSize = EnvelopeYou4,
186 enum SizeMatchPolicy {
188 FuzzyOrientationMatch,
193 Q_IMPLICIT QPageSize(PageSizeId pageSizeId);
194 explicit QPageSize(
const QSize &pointSize,
195 const QString &name = QString(),
196 SizeMatchPolicy matchPolicy = FuzzyMatch);
197 explicit QPageSize(
const QSizeF &size, Unit units,
198 const QString &name = QString(),
199 SizeMatchPolicy matchPolicy = FuzzyMatch);
200 QPageSize(
const QPageSize &other);
201 QT_MOVE_ASSIGNMENT_OPERATOR_IMPL_VIA_PURE_SWAP(QPageSize)
202 QPageSize &operator=(
const QPageSize &other);
206 void swap(QPageSize &other)
noexcept { d.swap(other.d); }
208#if QT_GUI_REMOVED_SINCE(6
, 4
)
209 friend Q_GUI_EXPORT
bool operator==(
const QPageSize &lhs,
const QPageSize &rhs);
211 bool isEquivalentTo(
const QPageSize &other)
const;
213 bool isValid()
const;
216 QString name()
const;
218 PageSizeId id()
const;
220 int windowsId()
const;
222 QSizeF definitionSize()
const;
223 Unit definitionUnits()
const;
225 QSizeF size(Unit units)
const;
226 QSize sizePoints()
const;
227 QSize sizePixels(
int resolution)
const;
229 QRectF rect(Unit units)
const;
230 QRect rectPoints()
const;
231 QRect rectPixels(
int resolution)
const;
233 static QString key(PageSizeId pageSizeId);
234 static QString name(PageSizeId pageSizeId);
236 static PageSizeId id(
const QSize &pointSize,
237 SizeMatchPolicy matchPolicy = FuzzyMatch);
238 static PageSizeId id(
const QSizeF &size, Unit units,
239 SizeMatchPolicy matchPolicy = FuzzyMatch);
241 static PageSizeId id(
int windowsId);
242 static int windowsId(PageSizeId pageSizeId);
244 static QSizeF definitionSize(PageSizeId pageSizeId);
245 static Unit definitionUnits(PageSizeId pageSizeId);
247 static QSizeF size(PageSizeId pageSizeId, Unit units);
248 static QSize sizePoints(PageSizeId pageSizeId);
249 static QSize sizePixels(PageSizeId pageSizeId,
int resolution);
252 friend class QPageSizePrivate;
253 friend class QPlatformPrintDevice;
255 bool equals(
const QPageSize &other)
const;
256 friend inline bool operator==(
const QPageSize &lhs,
const QPageSize &rhs)
257 {
return lhs.equals(rhs); }
258 friend inline bool operator!=(
const QPageSize &lhs,
const QPageSize &rhs)
259 {
return !(lhs == rhs); }
261 QPageSize(
const QString &key,
const QSize &pointSize,
const QString &name);
262 QPageSize(
int windowsId,
const QSize &pointSize,
const QString &name);
263 QPageSize(QPageSizePrivate &dd);
264 QSharedDataPointer<QPageSizePrivate> d;
269#ifndef QT_NO_DEBUG_STREAM
270Q_GUI_EXPORT
QDebug operator<<(QDebug dbg,
const QPageSize &pageSize);
275QT_DECL_METATYPE_EXTERN(QPageSize, Q_GUI_EXPORT)
276QT_DECL_METATYPE_EXTERN_TAGGED(QPageSize::PageSizeId, QPageSize__PageSizeId, Q_GUI_EXPORT)
277QT_DECL_METATYPE_EXTERN_TAGGED(QPageSize::Unit, QPageSize__Unit, Q_GUI_EXPORT)
bool operator==(const QPageSizePrivate &other) const
QSizeF size(QPageSize::Unit units) const
bool isEquivalentTo(const QPageSizePrivate &other) const
QPageSizePrivate(int windowsId, const QSize &pointSize, const QString &name)
QPageSizePrivate(const QSize &pointSize, const QString &name, QPageSize::SizeMatchPolicy matchPolicy)
QPageSizePrivate(QPageSize::PageSizeId pageSizeId)
QPageSizePrivate(const QSizeF &size, QPageSize::Unit units, const QString &name, QPageSize::SizeMatchPolicy matchPolicy)
QPageSizePrivate(const QString &key, const QSize &size, const QString &name)
QSize sizePixels(int resolution) const
Q_CORE_EXPORT QDebug operator<<(QDebug debug, QDir::Filters filters)
QDebug operator<<(QDebug dbg, const QFileInfo &fi)
static QSizeF qt_definitionSize(QPageSize::PageSizeId pageSizeId)
static QString msgImperialPageSizeInch(int width, int height)
static QString qt_keyForPageSizeId(QPageSize::PageSizeId id)
static qreal qt_pointMultiplier(QPageSize::Unit unit)
static QPageSize::PageSizeId qt_idForWindowsID(int windowsId, QSize *match=nullptr)
static QPageSize::PageSizeId qt_idForSize(const QSizeF &size, QPageSize::Unit units, QPageSize::SizeMatchPolicy matchPolicy, QSize *match)
static QSizeF qt_unitSize(QPageSize::PageSizeId pageSizeId, QPageSize::Unit units)
static QSize qt_convertUnitsToPoints(const QSizeF &size, QPageSize::Unit units)
static QSize qt_convertPointsToPixels(const QSize &size, int resolution)
static const int qt_windowsConversion[][2]
static const int pageSizesCount
static QPageSize::PageSizeId qt_idForPpdKey(const QString &ppdKey, QSize *match=nullptr)
static QString qt_nameForCustomSize(const QSizeF &size, QPageSize::Unit units)
static QString qt_keyForCustomSize(const QSizeF &size, QPageSize::Unit units)
static QSizeF qt_convertUnits(const QSizeF &size, QPageSize::Unit fromUnits, QPageSize::Unit toUnits)
static const StandardPageSize qt_pageSizes[]
static QSizeF qt_convertPointsToUnits(const QSize &size, QPageSize::Unit units)
static QPageSize::PageSizeId qt_idForPointSize(const QSize &size, QPageSize::SizeMatchPolicy matchPolicy, QSize *match)
const char mediaOption[20]