Condividi tramite


Attributi della funzionalità della stampante

Importante

La piattaforma di stampa moderna è il mezzo preferito di Windows per comunicare con le stampanti. Ti consigliamo di usare il driver di classe IPP di Microsoft, insieme a Print Support Apps (PSA), per personalizzare l'esperienza di stampa in Windows 10 e 11 per lo sviluppo di dispositivi per stampanti.

Per altre informazioni, vedere Piattaforma di stampa moderna e guida alla progettazione dell'app di supporto per la stampa.

Gli attributi delle funzionalità della stampante sono attributi di stampa generali che specificano tali caratteristiche della stampante, come le funzionalità di stampa di pagine, rotazione e stampa di testo che influiscono su tutte le dimensioni e gli orientamenti della carta.

Attribute name Parametro dell'attributo Commenti
MemoriaUsage ELENCO di costanti che indicano i tipi di dati archiviati nella memoria della stampante. Può essere uno o più tipi di CARATTERE RASTER VECTOR. Se un tipo di dati è elencato ma non supportato dalla stampante, viene ignorato. Facoltativo. Se non specificato, il valore predefinito è LIST(FONT, RASTER, VECTOR). Per altre informazioni, vedere Descrizione delle configurazioni di memoria della stampante.
OEMCustomData Stringa di testo tra virgolette da fornire a un plug-in di rendering quando chiama IPrintOemDriverUni::D rvGetGPDData. Obbligatorio se un plug-in di rendering chiama IPrintOemDriverUni::D rvGetGPDData. L'interpretazione del contenuto della stringa di testo è determinata dal plug-in di rendering. Questo attributo è un attributo globale rilocabile; può essere posizionato a livello radice (vedere Attributi solo a livello di radice) per indicare che non ha alcuna dipendenza dalla configurazione della stampante oppure può apparire con costrutti Option o Case se esiste una certa dipendenza.
OutputOrderReversed? TRUE o FALSE, che indica se i documenti a più pagine vengono ordinati dall'ultima pagina alla prima. Facoltativo. Se non specificato, il valore predefinito è FALSE. Il simbolo EXTERN_GLOBAL non deve essere usato con OutputOrderReversed?.
RiselezionareFont ELENCO di costanti che indicano le operazioni dopo le quali Unidrv deve deselezionare nuovamente il tipo di carattere corrente. Può essere presente nei comandi seguenti: AFTER_GRXDATA - Dopo qualsiasi comando di emissione di dati raster CmdSendXxxxData. AFTER_XMOVE: dopo qualsiasi comando di cursore di spostamento x. AFTER_FF : dopo il comando CmdFF. Facoltativo. Se non specificato, Unidrv non riseleziona i tipi di carattere.
ReverseBandOrderForEvenPages? TRUE o FALSE, che indica se la banda inversa è abilitata. Questo attributo viene usato per supportare le stampanti con funzionalità autoduplex; ovvero stampanti in grado di stampare su entrambi i lati di un foglio di carta. La sezione che segue questa tabella contiene altre informazioni. Il valore predefinito di questo attributo è FALSE. L'impostazione di questo attributo su TRUE consente l'ordine di banda inversa. Questo attributo è un attributo globale rilocabile. Può essere posizionato a livello radice (vedere Attributi solo a livello di radice) per indicare che non ha alcuna dipendenza dalla configurazione della stampante oppure può apparire con costrutti Option o Case se esiste una dipendenza.
RotateCoordinate? TRUE o FALSE, che indica se la stampante supporta i comandi per ruotare il sistema di coordinate in modo che corrisponda all'orientamento della pagina. Facoltativo. Se non specificato, il valore predefinito è FALSE. Se TRUE, le voci di opzione per la funzionalità Orientamento devono specificare i comandi della stampante. Non è possibile inserire una voce Case.
RotateFont? TRUE o FALSE, che indica se la stampante ruota automaticamente i tipi di carattere in modo che corrispondano all'orientamento della pagina. Facoltativo. Se non specificato, il valore predefinito è FALSE. Se TRUE, anche RotateCoordinate? deve essere TRUE. Non è possibile inserire una voce Case.
RotateRaster? TRUE o FALSE, che indica se la stampante ruota automaticamente i dati raster in modo che corrispondano all'orientamento della pagina. Facoltativo. Se non specificato, il valore predefinito è FALSE. Se TRUE, anche RotateCoordinate? deve essere TRUE. Non è possibile inserire una voce Case.
TextCaps ELENCO di costanti che indicano le funzionalità di testo della stampante. Può essere costituito da uno o più flag TC_xxx descritti in GetDeviceCaps. Facoltativo. Se non specificato, Unidrv presuppone che non siano supportate funzionalità di testo.

Altre informazioni su ReverseBandOrderForEvenPages?

Un effetto collaterale della funzionalità autoduplex è che il bordo inferiore di una pagina stampata viene rimesso nella stampante, per diventare il bordo superiore della pagina successiva. Per mantenere l'orientamento della seconda pagina rispetto alla prima, l'immagine raster della seconda pagina deve essere inviata alla stampante in ordine inverso. In altre parole, se la stampante ha stampato il lato anteriore inviando prima la riga di analisi superiore, deve stampare prima la riga posteriore della scansione inferiore.

Quando ReverseBandOrderForEvenPages? è TRUE e il duplex è attivo, Unidrv enumera ogni banda in ordine inverso per le pagine numerate pari (i lati posteriore delle pagine con numeri dispari). Il plug-in di rendering OEM deve memorizzare nella cache solo una banda di dati prima di inviarli alla stampante. L'ordine delle linee di analisi all'interno di ogni banda non viene invertito, quindi il plug-in deve comunque gestire tale attività e deve anche invertire l'ordine dei bit all'interno di ogni riga di analisi. Anche se questo è un lavoro aggiuntivo per il plug-in, il vantaggio è che il plug-in non deve memorizzare nella cache dati raster e può iniziare immediatamente a inviare dati alla stampante.

L'attributo ReverseBandOrderForEvenPages? viene valutato solo quando il duplex è impostato su "Flip on Long Edge". Questo attributo viene ignorato quando il duplex è impostato su "Flip on Short Edge".

Sia il valore dell'attributo ReverseBandOrderForEvenPages? che la rotazione simulata dal driver influiscono sulla modalità di enumerazione delle bande, come illustrato nella tabella seguente. L'ordine di enumerazione della banda specificato nella colonna con TRUE si applica quando ReverseBandOrderForEvenPages? è TRUE e viene selezionato il duplex e la pagina da stampare è il secondo lato (o indietro). In caso contrario, viene applicata la colonna con FALSE .

Rotazione simulata dal driver Pagina TRUE e Even PAGINA FALSE o Dispari
CCW_ROTATE90 SW_LTOR SW_RTOL
CCW_ROTATE270 SW_RTOL SW_LTOR
Nessuna rotazione SW_UP SW_DOWN

Legenda: SW_LTOR = Da sinistra a destra, SW_RTOL = Da destra a sinistra, SW_UP = Dal basso verso l'alto, SW_DOWN = Dall'alto verso il basso.

Un plug-in per il rendering OEM può supportare il blocco automatico senza usare l'attributo ReverseBandOrderForEvenPages? . Il plug-in può farlo memorizzando nella cache tutti i dati per l'intera pagina e inviandoli alla stampante, a partire dalla riga di analisi inferiore. Tale riga di analisi, e tutte le altre della pagina, devono essere inviate in ordine inverso.

Il plug-in di rendering OEM è responsabile dell'inversione dell'ordine dei bit con ogni riga di analisi e dell'ordine delle righe di analisi con ogni banda man mano che invia i dati alla stampante. Per determinare quando eseguire questa operazione, è possibile ottenere il valore della variabile standard PageNumber effettuando una chiamata a IPrintOemDriverUni::D rvGetStandardVariable, usando l'indice SVI_PAGENUMBER. Se il numero di pagina è dispari, non è necessaria alcuna inversione. Se il numero è pari e viene selezionato il duplex, è necessario ripristinare il numero.