estructura ATTRIBUTE_INFO_4 (winsplp.h)
La estructura ATTRIBUTE_INFO_4 se usa como parámetro para la función DrvQueryJobAttributes de una interfaz de impresora DLL. Todos los valores de miembro son proporcionados por la función. Esta estructura es similar a ATTRIBUTE_INFO_3, pero incluye miembros adicionales para controlar N-up, dúplex y impresión de folletos, y escalado.
Sintaxis
typedef struct _ATTRIBUTE_INFO_4 {
DWORD dwJobNumberOfPagesPerSide;
DWORD dwDrvNumberOfPagesPerSide;
DWORD dwNupBorderFlags;
DWORD dwJobPageOrderFlags;
DWORD dwDrvPageOrderFlags;
DWORD dwJobNumberOfCopies;
DWORD dwDrvNumberOfCopies;
DWORD dwColorOptimization;
short dmPrintQuality;
short dmYResolution;
DWORD dwDuplexFlags;
DWORD dwNupDirection;
DWORD dwBookletFlags;
DWORD dwScalingPercentX;
DWORD dwScalingPercentY;
} ATTRIBUTE_INFO_4, *PATTRIBUTE_INFO_4;
Miembros
dwJobNumberOfPagesPerSide
Número de páginas de documento que se van a colocar en un lado de una página física, tal como lo solicita el usuario. Los valores permitidos son 1, 2, 4, 6, 9 o 16.
dwDrvNumberOfPagesPerSide
Número de páginas de documento que la impresora y el controlador pueden colocar en un lado de una página física. Este valor debe ser 1 o el valor especificado para dwJobNumberOfPagesPerSide.
dwNupBorderFlags
Uno de los siguientes valores de marca de bits:
Marca | Definición |
---|---|
BORDER_PRINT | El procesador de impresión debe dibujar un borde alrededor de la página. |
NO_BORDER_PRINT | El procesador de impresión no debe dibujar un borde alrededor de la página. |
dwJobPageOrderFlags
Uno de los siguientes valores de marca de bits:
Marca | Definición |
---|---|
BOOKLET_PRINT | Las páginas deben imprimirse en formato de folleto, con dos páginas de documento impresas en un lado de una página física. En el modo horizontal, las dos páginas de documento se imprimen en paralelo en el papel. En modo vertical, las dos páginas de documento se imprimen arriba e inferior. |
NORMAL_PRINT | Las páginas deben imprimirse en orden normal: página 1, página 2, etc. |
REVERSE_PRINT | Las páginas deben imprimirse en orden inverso: última página, página siguiente a última, etc. |
dwDrvPageOrderFlags
Marcas de bits que indican qué opciones de ordenación de páginas son compatibles con la impresora y el controlador. Usa las mismas marcas que dwJobPageOrderFlags.
dwJobNumberOfCopies
Número de copias del trabajo de impresión, según lo solicite el usuario.
dwDrvNumberOfCopies
Número máximo de copias que la impresora y el controlador pueden controlar a la vez, teniendo en cuenta estos atributos de trabajo como la intercalación y la asociación.
dwColorOptimization
Uno de los siguientes valores de marca de bits:
Marca | Definición |
---|---|
COLOR_OPTIMIZATION | El procesador de impresión debe usar la optimización del color monocromático. |
NO_COLOR_OPTIMIZATION | El procesador de impresión no debe usar la optimización del color monocromático. |
dmPrintQuality
Valor que se va a usar en lugar del miembro dmPrintQuality de la estructura DEVMODEW del trabajo de impresión, si la marca de COLOR_OPTIMIZATION está establecida en dwColorOptimization.
dmYResolution
Valor que se va a usar en lugar del miembro dmYResolution de la estructura DEVMODEW del trabajo de impresión, si la marca de COLOR_OPTIMIZATION se establece en dwColorOptimization.
dwDuplexFlags
Uno de los siguientes valores de marca de bits usados en la impresión dúplex:
Marca | Definición |
---|---|
DONT_SEND_EXTRA_PAGES_FOR_DUPLEX | El procesador de impresión no debe enviar páginas en blanco adicionales al imprimir dúplex. Por ejemplo, si envía un trabajo de tres páginas para la impresión dúplex, algunas impresoras esperan recibir cuatro páginas. Si imprime este trabajo con este conjunto de marcas, el procesador de impresión envía solo las tres páginas del trabajo de impresión y no envía la página en blanco adicional. |
REVERSE_PAGES_FOR_REVERSE_DUPLEX | El procesador de impresión debe invertir el orden de los pares de página al imprimir en modo dúplex inverso. Por ejemplo, cuando se establece esta marca, el procesador de impresión debe imprimir páginas en orden 7, 8, 5, 6, 3, 4, 1, 2 en lugar de 8, 7, 6, 5, 4, 3, 2, 1. |
Establezca en 0 si el controlador no requiere ninguna de estas opciones.
dwNupDirection
Uno de los siguientes valores de marca de bits usados en la impresión N-up:
Marca | Definición |
---|---|
RIGHT_THEN_DOWN | El procesador de impresión debe proporcionar imágenes de página en secuencia de izquierda a derecha y, a continuación, bajar la página impresa final. También se establece en este valor si no se necesita impresión en N.º. |
DOWN_THEN_RIGHT | El procesador de impresión debe proporcionar imágenes de página en secuencia de arriba abajo y, a continuación, de izquierda a derecha en la página impresa final. |
LEFT_THEN_DOWN | El procesador de impresión debe proporcionar imágenes de página en secuencia de derecha a izquierda y, a continuación, bajar la página impresa final. |
DOWN_THEN_LEFT | El procesador de impresión debe proporcionar imágenes de página en secuencia de arriba a abajo y, a continuación, de derecha a izquierda en la página impresa final. |
Esta marca solo se considera si dwJobNumberOfPagesPerSide o dwDrvNumberOfPagesPerSide indican que la impresión de N-up está activa. Para obtener más información, vea las descripciones anteriores para dwJobNumberOfPagesPerSide y dwDrvNumberOfPagesPerSide.
dwBookletFlags
Si dwJobPageOrderFlags se establece en BOOKLET_PRINT, uno de los siguientes valores:
Marca | Definición |
---|---|
BOOKLET_EDGE_LEFT | El procesador de impresión debe imprimir páginas en un diseño de folleto de izquierda a derecha, donde el borde límite del folleto plegado final está en el borde izquierdo de la página uno. |
BOOKLET_EDGE_RIGHT | El procesador de impresión debe imprimir páginas en un diseño de folleto de derecha a izquierda, donde el borde enlazado del folleto plegado final está en el borde derecho de la página uno. |
Si dwJobPageOrderFlags no está establecido en BOOKLET_PRINT, dwBookletFlags se establece en 0.
Esta marca solo se considera si el miembro dwJobPageOrderFlags está establecido en BOOKLET_PRINT.
dwScalingPercentX
Porcentaje de escalado en la dirección horizontal (x) con respecto al tamaño normal del papel. Debe estar en el intervalo de 1 a 1000. Establézcalo en 100 si no se realizará el escalado.
Para garantizar resultados de impresión predecibles, dwScalingPercentX y dwScalingPercentY deben tener el mismo valor.
dwScalingPercentY
Porcentaje de escalado en la dirección vertical (y) con respecto al tamaño normal del papel. Debe estar en el intervalo de 1 a 1000. Establézcalo en 100 si no se realizará el escalado.
Para garantizar resultados de impresión predecibles, dwScalingPercentX y dwScalingPercentY deben tener el mismo valor.
Comentarios
Si el miembro dmPrintQuality de la estructura DEVMODEW de un trabajo de impresión es un valor negativo, como DMRES_HIGH, y si está habilitada la optimización del color monocromo, cambiar entre color y monocromo podría dar lugar a que se usen resoluciones diferentes. Esto se debe a que DMRES_HIGH se pueden asignar a valores de PPP diferentes para la representación de color y monocromo. (Para los dispositivos compatibles con Unidrv, esta asignación se produce en el archivo GPD de la impresora). Para garantizar una resolución coherente a lo largo del trabajo de impresión, el controlador puede especificar valores dmPrintQuality y dmYResolution positivos (que representan una resolución de PPP específica) para invalidar los valores equivalentes de DEVMODEW .
El procesador de impresión EMF usa la marca especificada para dwColorOptimization para determinar si se debe solicitar GDI para realizar la optimización de color monocromático. Si la optimización del color monocromático está habilitada, el trabajo de impresión se puede cambiar entre la representación monocromática y el color según corresponda.
Si va a crear un complemento de representación Unidrv para generar marcas de agua de color, tenga en cuenta que, cuando el miembro dwColorOptimization está establecido en COLOR_OPTIMIZATION, las marcas de agua de color se imprimen en blanco y negro cuando se imprimen en documentos en blanco y negro. Para asegurarse de que las marcas de agua de color se imprimen correctamente con documentos de color y blanco y negro, deshabilite la optimización del color. La optimización de color también se puede controlar mediante el atributo de color Unidrv *ChangeColorModeOnDoc( vea Atributos de color) y por la función GdiEndPageEMF .
Para obtener una lista de valores predeterminados para ATTRIBUTE_INFO_4 miembros, consulte GetJobAttributesEx.
Esta estructura está disponible en Windows Vista.
Requisitos
Requisito | Valor |
---|---|
Header | winsplp.h (incluya Winddiui.h, Winsplp.h) |