ATTRIBUTE_INFO_4 struttura (winsplp.h)
La struttura ATTRIBUTE_INFO_4 viene usata come parametro per la funzione DrvQueryJobAttributes di un'interfaccia stampante. Tutti i valori membro vengono forniti dalla funzione. Questa struttura è simile a ATTRIBUTE_INFO_3, ma include membri aggiuntivi per controllare la stampa su N, duplex e opuscolo e ridimensionamento.
Sintassi
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;
Members
dwJobNumberOfPagesPerSide
Numero di pagine del documento da inserire su un lato di una pagina fisica, come richiesto dall'utente. I valori consentiti sono 1, 2, 4, 6, 9 o 16.
dwDrvNumberOfPagesPerSide
Numero di pagine di documento che la stampante e il driver possono posizionare su un lato di una pagina fisica. Questo valore deve essere 1 o il valore specificato per dwJobNumberOfPagesPerSide.
dwNupBorderFlags
Uno dei valori di flag di bit seguenti:
Flag | Definizione |
---|---|
BORDER_PRINT | Il processore di stampa deve disegnare un bordo intorno alla pagina. |
NO_BORDER_PRINT | Il processore di stampa non deve disegnare un bordo intorno alla pagina. |
dwJobPageOrderFlags
Uno dei valori di flag di bit seguenti:
Flag | Definizione |
---|---|
BOOKLET_PRINT | Le pagine devono essere stampate in formato opuscolo, con due pagine di documento stampate su un lato di una pagina fisica. In modalità orizzontale, le due pagine del documento vengono stampate side-by-side sul foglio. In modalità verticale, le due pagine del documento vengono stampate in alto e in basso. |
NORMAL_PRINT | Le pagine devono essere stampate in ordine normale: pagina 1, pagina 2 e così via. |
REVERSE_PRINT | Le pagine devono essere stampate in ordine inverso: ultima pagina, successiva all'ultima pagina e così via. |
dwDrvPageOrderFlags
Flag di bit che indicano quali opzioni di ordinamento pagina sono supportate dalla stampante e dal driver. Usa gli stessi flag di dwJobPageOrderFlags.
dwJobNumberOfCopies
Numero di copie del processo di stampa, come richiesto dall'utente.
dwDrvNumberOfCopies
Numero massimo di copie che la stampante e il driver possono gestire contemporaneamente, tenendo conto di tali attributi di processo, come la confronto e la spling.
dwColorOptimization
Uno dei valori di flag di bit seguenti:
Flag | Definizione |
---|---|
COLOR_OPTIMIZATION | Il processore di stampa deve usare l'ottimizzazione dei colori monocromatica. |
NO_COLOR_OPTIMIZATION | Il processore di stampa non deve usare l'ottimizzazione dei colori monocromatica. |
dmPrintQuality
Valore da utilizzare anziché il membro dmPrintQuality della struttura DEVMODEW del processo di stampa, se il flag di COLOR_OPTIMIZATION è impostato in dwColorOptimization.
dmYResolution
Valore da usare anziché il membro dmYResolution della struttura DEVMODEW del processo di stampa, se il flag di COLOR_OPTIMIZATION è impostato in dwColorOptimization.
dwDuplexFlags
Uno dei valori di flag di bit seguenti usati nella stampa duplex:
Flag | Definizione |
---|---|
DONT_SEND_EXTRA_PAGES_FOR_DUPLEX | Il processore di stampa non deve inviare pagine vuote aggiuntive durante la stampa duplex. Ad esempio, se si invia un processo a tre pagine per la stampa duplex, alcune stampanti prevedono di ricevere quattro pagine. Se si stampa questo processo con questo flag impostato, il processore di stampa invia solo le tre pagine del processo di stampa e non invia la pagina vuota aggiuntiva. |
REVERSE_PAGES_FOR_REVERSE_DUPLEX | Il processore di stampa deve invertire l'ordine delle coppie di pagine durante la stampa in modalità duplex inversa. Ad esempio, quando questo flag è impostato, il processore di stampa deve stampare pagine in ordine 7, 8, 5, 6, 3, 4, 1, 2 anziché 8, 7, 6, 5, 4, 3, 2, 1. |
Impostare su 0 se il driver non richiede alcuna di queste opzioni.
dwNupDirection
Uno dei valori di flag di bit seguenti usati nella stampa N:
Flag | Definizione |
---|---|
RIGHT_THEN_DOWN | Il processore di stampa deve fornire immagini di pagina nella sequenza da sinistra a destra, quindi verso il basso la pagina stampata finale. Impostare anche su questo valore se la stampa N non è necessaria. |
DOWN_THEN_RIGHT | Il processore di stampa deve fornire immagini di pagina nella sequenza dall'alto verso il basso, quindi da sinistra a destra nella pagina stampata finale. |
LEFT_THEN_DOWN | Il processore di stampa deve fornire immagini di pagina in sequenza da destra a sinistra, quindi verso il basso la pagina stampata finale. |
DOWN_THEN_LEFT | Il processore di stampa deve fornire immagini di pagina in sequenza dall'alto verso il basso, quindi da destra a sinistra nella pagina stampata finale. |
Questo flag viene considerato solo se dwJobNumberOfPagesPerSide e/o dwDrvNumberOfPagesPerSide indicano che la stampa N-up è attiva. Per altre informazioni, vedere le descrizioni riportate sopra per dwJobNumberOfPagesPerSide e dwDrvNumberOfPagesPerSide.
dwBookletFlags
Se dwJobPageOrderFlags è impostato su BOOKLET_PRINT, uno dei valori seguenti:
Flag | Definizione |
---|---|
BOOKLET_EDGE_LEFT | Il processore di stampa deve stampare pagine in un layout di opuscolo a sinistra a destra, dove il bordo associato del opuscolo piegato finale si trova sul bordo sinistro della pagina 1. |
BOOKLET_EDGE_RIGHT | Il processore di stampa deve stampare pagine in un layout del opuscolo da destra a sinistra, dove il bordo associato del opuscolo piegato finale si trova sul bordo destro della pagina 1. |
Se dwJobPageOrderFlags non è impostato su BOOKLET_PRINT, dwBookletFlags è impostato su 0.
Questo flag viene considerato solo se il membro dwJobPageOrderFlags è impostato su BOOKLET_PRINT.
dwScalingPercentX
Percentuale di ridimensionamento nella direzione orizzontale (x) rispetto alle normali dimensioni della carta. Deve essere compreso nell'intervallo di 1 a 1000. Impostare su 100 se il ridimensionamento non verrà eseguito.
Per garantire risultati di stampa prevedibili, dwScalingPercentX e dwScalingPercentY devono avere lo stesso valore.
dwScalingPercentY
Percentuale di ridimensionamento nella direzione verticale (y) rispetto alle normali dimensioni della carta. Deve essere compreso nell'intervallo di 1 a 1000. Impostare su 100 se il ridimensionamento non verrà eseguito.
Per garantire risultati di stampa prevedibili, dwScalingPercentX e dwScalingPercentY devono avere lo stesso valore.
Commenti
Se il membro dmPrintQuality della struttura DEVMODEW di un processo di stampa è un valore negativo, ad esempio DMRES_HIGH, e se l'ottimizzazione del colore monocromatico è abilitata, il passaggio tra colore e monocromia potrebbe causare risoluzioni diverse da usare. Ciò è dovuto al fatto che DMRES_HIGH potrebbe essere assegnato a valori DPI diversi per il rendering di colori e monocromatici. Per i dispositivi non supportati da Unidrv, questa assegnazione si verifica nel file GPD della stampante. Per garantire una risoluzione coerente nel processo di stampa, il driver può specificare valori dmPrintQuality e dmYResolution (che rappresentano una risoluzione DPI specifica) per eseguire l'override dei valori DEVMODEW equivalenti.
Il processore di stampa EMF usa il flag specificato per dwColorOptimization per determinare se richiedere GDI di eseguire l'ottimizzazione dei colori monocromatica. Se l'ottimizzazione dei colori monocromatica è abilitata, il processo di stampa può essere spostato tra il rendering monocromatico e il rendering dei colori in base alle esigenze.
Se si crea un plug-in di rendering Unidrv per generare filigrane dei colori, si noti che quando il membro dwColorOptimization è impostato su COLOR_OPTIMIZATION, le filigrane dei colori vengono stampate in bianco e nero quando vengono stampate su documenti neri e bianchi. Per garantire che le filigrane di colore vengano stampate correttamente con documenti di colore e nero e bianco, disabilitare l'ottimizzazione dei colori. L'ottimizzazione dei colori può essere controllata anche dall'attributo colore Unidrv *ChangeColorModeOnDoc? (vedere Attributi colore) e dalla funzione GdiEndPageEMF .
Per un elenco di valori predefiniti per i membri ATTRIBUTE_INFO_4, vedere GetJobAttributesEx.
Questa struttura è disponibile in Windows Vista.
Requisiti
Requisito | Valore |
---|---|
Intestazione | winsplp.h (includono Winddiui.h, Winsplp.h) |