QPageSize Class
La clase QPageSize describe el tamaño y el nombre de un tamaño de página definido. Más...
| Cabecera: | #include <QPageSize> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
Tipos Públicos
| enum | PageSizeId { A0, A1, A2, A3, A4, …, LastPageSize } |
| enum | SizeMatchPolicy { FuzzyMatch, FuzzyOrientationMatch, ExactMatch } |
| enum | Unit { Millimeter, Point, Inch, Pica, Didot, Cicero } |
Funciones públicas
| 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) |
Miembros públicos estáticos
| 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) |
No miembros relacionados
| bool | operator!=(const QPageSize &lhs, const QPageSize &rhs) |
| bool | operator==(const QPageSize &lhs, const QPageSize &rhs) |
Descripción detallada
Esta clase implementa el soporte para el conjunto de tamaños de página estándar definidos en el Adobe Postscript PPD Standard v4.3. Define el conjunto estándar de tamaños de página en puntos, milímetros y pulgadas y garantiza que estos tamaños se utilicen de forma coherente. Se pueden utilizar otras unidades de tamaño, pero se calcularán los resultados y, por tanto, no siempre serán coherentes. Los tamaños de punto definidos son siempre enteros, todos los demás tamaños pueden ser fracciones de una unidad.
El tamaño definido es siempre en orden ancho x alto sin orientación de página implícita. Tenga en cuenta que es posible que se definan tamaños de página en los que la anchura sea mayor que la altura, como QPageSize::Ledger, por lo que no puede confiar en la comparación de los valores de anchura y altura para determinar la orientación de la página.
Por ejemplo, la norma define A4 como 210 mm x 297 mm, 8,27 pulg. x 11,69 pulg. o 595pt x 842pt.
También puede definir tamaños de página personalizados con nombres personalizados en las unidades que desee y este tamaño de unidad se conservará y se utilizará como base para todos los demás cálculos de tamaño de unidad.
Al crear un QPageSize utilizando un QSize personalizado, puede elegir si desea que QPageSize intente ajustar el tamaño a un tamaño de página estándar. Por defecto, QPaperSize utiliza el modo FuzzyMatch, en el que hará coincidir un tamaño de página dado con un tamaño de página estándar si se encuentra dentro de los 3 puntos postscript de un tamaño estándar definido. Puede anular este modo para solicitar sólo una coincidencia exacta, pero no se recomienda, ya que las conversiones entre unidades pueden fácilmente perder 3 puntos y dar lugar a tamaños de página incorrectos.
También se puede obtener una instancia de QPageSize consultando los tamaños de página admitidos para un dispositivo de impresión. En este caso el nombre localizado devuelto es el definido por la propia impresora. Tenga en cuenta que el dispositivo de impresión puede no soportar el idioma por defecto.
La clase también proporciona métodos prácticos para convertir IDs de tamaño de página a y desde varios tamaños de unidad.
Véase también QPagedPaintDevice y QPdfWriter.
Documentación de tipos de miembros
enum QPageSize::PageSizeId
Este tipo enum enumera los tamaños de página disponibles según se definen en el estándar PPD de Postscript. Estos valores están duplicados en QPagedPaintDevice y QPrinter.
Los tamaños definidos son:
| Constante | Valor | Descripción |
|---|---|---|
QPageSize::A0 | 3 | 841 x 1189 mm |
QPageSize::A1 | 4 | 594 x 841 mm |
QPageSize::A2 | 5 | 420 x 594 mm |
QPageSize::A3 | 6 | 297 x 420 mm |
QPageSize::A4 | 7 | 210 x 297 mm, 8,26 x 11,69 pulgadas |
QPageSize::A5 | 8 | 148 x 210 mm |
QPageSize::A6 | 9 | 105 x 148 mm |
QPageSize::A7 | 10 | 74 x 105 mm |
QPageSize::A8 | 11 | 52 x 74 mm |
QPageSize::A9 | 12 | 37 x 52 mm |
QPageSize::B0 | 14 | 1000 x 1414 mm |
QPageSize::B1 | 15 | 707 x 1000 mm |
QPageSize::B2 | 16 | 500 x 707 mm |
QPageSize::B3 | 17 | 353 x 500 mm |
QPageSize::B4 | 18 | 250 x 353 mm |
QPageSize::B5 | 19 | 176 x 250 mm, 6,93 x 9,84 pulgadas |
QPageSize::B6 | 20 | 125 x 176 mm |
QPageSize::B7 | 21 | 88 x 125 mm |
QPageSize::B8 | 22 | 62 x 88 mm |
QPageSize::B9 | 23 | 44 x 62 mm |
QPageSize::B10 | 24 | 31 x 44 mm |
QPageSize::C5E | 25 | 163 x 229 mm |
QPageSize::Comm10E | 26 | 105 x 241 mm, U.S. Common 10 Sobre |
QPageSize::DLE | 27 | 110 x 220 mm |
QPageSize::Executive | 2 | 7,5 x 10 pulgadas, 190,5 x 254 mm |
QPageSize::Folio | 28 | 210 x 330 mm |
QPageSize::Ledger | 29 | 431,8 x 279,4 mm |
QPageSize::Legal | 1 | 8,5 x 14 pulgadas, 215,9 x 355,6 mm |
QPageSize::Letter | 0 | 8,5 x 11 pulgadas, 215,9 x 279,4 mm |
QPageSize::Tabloid | 30 | 279,4 x 431,8 mm |
QPageSize::Custom | 31 | Desconocido, o un tamaño definido por el usuario. |
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 | = Carta |
QPageSize::AnsiB | Ledger | = 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 |
Debido a razones históricas QPageSize::Executive no es el mismo que el tamaño estándar Postscript y Windows Executive, utilice QPageSize::ExecutiveStandard en su lugar.
El tamaño estándar Postscript QPageSize::Folio es diferente al tamaño Windows DMPAPER_FOLIO, utilice el tamaño estándar Postscript QPageSize::FanFoldGermanLegal si es necesario.
enum QPageSize::SizeMatchPolicy
| Constante | Valor | Descripción |
|---|---|---|
QPageSize::FuzzyMatch | 0 | Coincide con un tamaño de página estándar si está dentro del margen de tolerancia. |
QPageSize::FuzzyOrientationMatch | 1 | Coincide con un tamaño de página estándar si está dentro del margen de tolerancia, independientemente de la orientación. |
QPageSize::ExactMatch | 2 | Sólo coincide con un tamaño de página estándar si los tamaños coinciden exactamente. |
enum QPageSize::Unit
Este tipo enum se utiliza para especificar la unidad de medida de los tamaños de página.
| Constante | Valor | Descripción |
|---|---|---|
QPageSize::Millimeter | 0 | |
QPageSize::Point | 1 | 1/72 de pulgada |
QPageSize::Inch | 2 | |
QPageSize::Pica | 3 | 1/72 de pie, 1/6 de pulgada, 12 Puntos |
QPageSize::Didot | 4 | 1/72 de pulgada francesa, 0,375 mm |
QPageSize::Cicero | 5 | 1/6 de pulgada francesa, 12 Didot, 4,5 mm |
Documentación de la función de miembro
QPageSize::QPageSize()
Crea un QPageSize nulo.
QPageSize::QPageSize(QPageSize::PageSizeId pageSize)
Crea un QPageSize del estándar pageSize.
Si pageSize es QPageSize::Custom entonces el QPageSize resultante no será válido. Utilice el constructor de tamaño personalizado en su lugar.
[explicit] QPageSize::QPageSize(const QSize &pointSize, const QString &name = QString(), QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)
Crea un QPageSize del pointSize dado en Puntos usando el matchPolicy coincidente.
Si el pointSize coincide con un QPageSize::PageSizeId estándar, se utilizará ese tamaño de página. Tenga en cuenta que si matchPolicy es FuzzyMatch, pointSize puede ajustarse al tamaño estándar. Para evitarlo, utilice matchPolicy o ExactMatch.
Si el pointSize dado no es un QPageSize::PageSizeId estándar entonces se creará un tamaño QPageSize::Custom.
Si name es nulo, se utilizará el nombre localizado estándar. Si se trata de un tamaño de página personalizado, se creará un nombre personalizado con el formato "Personalizado (ancho x alto)".
El valor predeterminado de matchPolicy es FuzzyMatch.
[explicit] QPageSize::QPageSize(const QSizeF &size, QPageSize::Unit units, const QString &name = QString(), QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)
Crea una página personalizada del size dado en units.
Si el size dado coincide con un QPageSize::PageSizeId estándar, entonces se utilizará ese tamaño de página. Tenga en cuenta que si matchPolicy es FuzzyMatch, size puede ajustarse al tamaño estándar. Para evitarlo, utilice matchPolicy o ExactMatch.
Si el size dado no es un QPageSize::PageSizeId estándar, se creará un tamaño QPageSize::Custom. El tamaño de unidad original se conservará y se utilizará como base para todos los demás cálculos de tamaño de unidad.
Si name es nulo entonces se creará un nombre personalizado de la forma "Personalizado (ancho x alto)" donde el tamaño se expresa en las unidades proporcionadas.
QPageSize::QPageSize(const QPageSize &other)
Constructor de copia, copia other a esto.
[noexcept] QPageSize::~QPageSize()
Destruye la página.
QSizeF QPageSize::definitionSize() const
Devuelve el tamaño de definición del tamaño de página.
Para un tamaño de página estándar, será el tamaño definido en la norma correspondiente, es decir, ISO A4 se definirá en milímetros, mientras que ANSI Letter se definirá en pulgadas.
Para un tamaño de página personalizado, será el tamaño original utilizado para crear el objeto de tamaño de página.
Si QPageSize no es válido, tampoco lo será QSizeF.
Véase también definitionUnits().
[static] QSizeF QPageSize::definitionSize(QPageSize::PageSizeId pageSizeId)
Devuelve el tamaño de definición del estándar pageSizeId.
Para obtener las unidades de definición, llame a QPageSize::definitionUnits().
QPageSize::Unit QPageSize::definitionUnits() const
Devuelve las unidades de definición del tamaño de página.
Para un tamaño de página estándar, serán las unidades definidas en la norma correspondiente, es decir, ISO A4 se definirá en milímetros, mientras que ANSI Letter se definirá en pulgadas.
Para un tamaño de página personalizado, serán las unidades originales utilizadas para crear el objeto de tamaño de página.
Si QPageSize no es válido, entonces QPageSize::Unit tampoco lo será.
Véase también definitionSize().
[static] QPageSize::Unit QPageSize::definitionUnits(QPageSize::PageSizeId pageSizeId)
Devuelve las unidades de definición del estándar pageSizeId.
Para obtener el tamaño de definición, llame a QPageSize::definitionSize().
QPageSize::PageSizeId QPageSize::id() const
Devuelve el QPageSize::PageSizeId estándar de la página, o QPageSize::Custom.
Si QPageSize no es válido, el ID será QPageSize::Custom.
[static] QPageSize::PageSizeId QPageSize::id(int windowsId)
Devuelve el PageSizeId para el valor de Windows DMPAPER enum windowsId.
Si no hay ningún PageSizeId que coincida, se devuelve QPageSize::Custom.
[static] QPageSize::PageSizeId QPageSize::id(const QSize &pointSize, QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)
Devuelve el QPageSize::PageSizeId estándar del pointSize dado en puntos utilizando el matchPolicy dado.
Si se utiliza FuzzyMatch, es posible que el tamaño en puntos del PageSizeId devuelto no coincida exactamente con el pointSize introducido. Debería llamar a QPageSize::sizePoints() utilizando el PageSizeId devuelto para averiguar el tamaño en puntos real del PageSizeId antes de utilizarlo en cualquier cálculo.
[static] QPageSize::PageSizeId QPageSize::id(const QSizeF &size, QPageSize::Unit units, QPageSize::SizeMatchPolicy matchPolicy = FuzzyMatch)
Devuelve el QPageSize::PageSizeId estándar del size dado en units utilizando el matchPolicy dado.
Si se utiliza FuzzyMatch, es posible que el tamaño unitario de PageSizeId devuelto no coincida exactamente con size. Debería llamar a QPageSize::size() utilizando el PageSizeId devuelto para averiguar el tamaño unitario real del PageSizeId antes de utilizarlo en cualquier cálculo.
bool QPageSize::isEquivalentTo(const QPageSize &other) const
Devuelve true si esta página es equivalente a la página other, es decir, si la página tiene el mismo tamaño independientemente de otros atributos como el nombre.
bool QPageSize::isValid() const
Devuelve true si este tamaño de página es válido.
El tamaño de página puede ser inválido si se crea con un PageSizeId inválido , o un QSize o QSizeF negativo o inválido , o el constructor null.
QString QPageSize::key() const
Devuelve la clave única del tamaño de página.
Por defecto, esta es la palabra clave mediaOption estándar de PPD para el tamaño de página, o la clave de formato personalizada de PPD. Si la instancia QPageSize se obtuvo de un dispositivo de impresión, entonces será la clave proporcionada por el dispositivo de impresión y puede diferir de la clave estándar.
Si QPageSize no es válido, la clave será una cadena vacía.
Esta clave nunca debe mostrarse a los usuarios finales, es sólo una clave interna. Para un nombre legible por humanos utilice name().
Véase también name().
[static] QString QPageSize::key(QPageSize::PageSizeId pageSizeId)
Devuelve la palabra clave PPD mediaOption del estándar pageSizeId.
Si QPageSize no es válido, la clave estará vacía.
QString QPageSize::name() const
Devuelve un nombre localizado legible por humanos para el tamaño de página.
Si la instancia QPageSize se obtuvo de un dispositivo de impresión, el nombre utilizado es el proporcionado por el dispositivo de impresión. Tenga en cuenta que es posible que un dispositivo de impresión no admita el idioma por defecto.
Si QPageSize no es válido, el nombre será una cadena vacía.
[static] QString QPageSize::name(QPageSize::PageSizeId pageSizeId)
Devuelve el nombre localizado del estándar pageSizeId.
Si QPageSize no es válido, el nombre estará vacío.
QRectF QPageSize::rect(QPageSize::Unit units) const
Devuelve el rectángulo de página en el units requerido.
Si QPageSize no es válido, entonces QRect tampoco lo será.
QRect QPageSize::rectPixels(int resolution) const
Devuelve el rectángulo de página en píxeles de dispositivo en el resolution dado.
Si QPageSize no es válido, entonces QRect tampoco lo será.
QRect QPageSize::rectPoints() const
Devuelve el rectángulo de la página en puntos Postscript (1/72 de pulgada).
Si QPageSize no es válido, QRect tampoco lo será.
QSizeF QPageSize::size(QPageSize::Unit units) const
Devuelve el tamaño de la página en el units requerido.
Si QPageSize no es válido, entonces QSizeF tampoco lo será.
[static] QSizeF QPageSize::size(QPageSize::PageSizeId pageSizeId, QPageSize::Unit units)
Devuelve el tamaño de la norma pageSizeId en la dirección units solicitada.
QSize QPageSize::sizePixels(int resolution) const
Devuelve el tamaño de la página en píxeles de dispositivo en el resolution dado.
Si QPageSize no es válido, entonces QSize tampoco lo será.
[static] QSize QPageSize::sizePixels(QPageSize::PageSizeId pageSizeId, int resolution)
Devuelve el tamaño del estándar pageSizeId en píxeles de dispositivo para el resolution dado.
QSize QPageSize::sizePoints() const
Devuelve el tamaño de la página en puntos Postscript (1/72 de pulgada).
Si QPageSize no es válido, entonces QSize tampoco lo será.
[static] QSize QPageSize::sizePoints(QPageSize::PageSizeId pageSizeId)
Devuelve el tamaño de la norma pageSizeId en Puntos.
[noexcept] void QPageSize::swap(QPageSize &other)
Cambia este QPageSize por other. Esta operación es muy rápida y nunca falla.
int QPageSize::windowsId() const
Devuelve el valor DMPAPER enum de Windows para el tamaño de página.
No todos los tamaños de página PPD válidos tienen un equivalente en Windows, en cuyo caso se devolverá 0.
Si QPageSize no es válido, el ID de Windows será 0.
Véase también id().
[static] int QPageSize::windowsId(QPageSize::PageSizeId pageSizeId)
Devuelve el valor DMPAPER enum de Windows del estándar pageSizeId.
No todos los tamaños de página PPD válidos tienen un equivalente en Windows, en cuyo caso se devolverá 0.
[noexcept] QPageSize &QPageSize::operator=(QPageSize &&other)
Move-asigna other a esta instancia QPageSize, transfiriendo la propiedad del puntero gestionado a esta instancia.
QPageSize &QPageSize::operator=(const QPageSize &other)
Operador de asignación, asigna other a esto.
No miembros relacionados
bool operator!=(const QPageSize &lhs, const QPageSize &rhs)
Devuelve true si el tamaño de página lhs es desigual al tamaño de página rhs, es decir, si el tamaño de página tiene atributos diferentes. Los atributos actuales son tamaño y nombre.
bool operator==(const QPageSize &lhs, const QPageSize &rhs)
Devuelve true si el tamaño de página lhs es igual al tamaño de página rhs, es decir, si los tamaños de página tienen los mismos atributos. Los atributos actuales son tamaño y nombre.
© 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.