Variabili standard
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.
Il linguaggio GPD definisce un set di variabili standard a cui è possibile fare riferimento all'interno di stringhe di comando, usando il formato della stringa di comando. Il driver Unidrv assegna valori a queste variabili. Dal punto di vista di un file GPD, le variabili sono di sola lettura.
Tutte le variabili standard vengono archiviate come numeri interi DWORD.
La voce di comando della stampante seguente specifica la stringa di comando inviata a un HP LaserJet 4P quando un blocco di dati raster è pronto:
*Command: CmdSendBlockData: "<1B>*b" %d{NumOfDataBytes} "W"
La tabella seguente contiene tutte le variabili standard, in ordine alfabetico.
Nome variabile standard | Valore | Commenti |
---|---|---|
BlueValue | Componente blu del colore corrente. | Valido per l'uso nelle stringhe di comando CmdDefinePaletteEntry (vedere GreenValue, RedValue). |
CurrentFontID | Numero di identificazione del tipo di carattere soft scaricato corrente. | Valido se il processo di stampa corrente include caratteri soft scaricati. |
CurrentPaletteIndex | Indice corrente nella tavolozza dei colori. | Valido per l'uso nelle stringhe di comando CmdSelectPaletteEntry (vedere GreenValue, RedValue). |
CursorOriginX | Coordinata X dell'origine del cursore, in unità master. | Valido ogni volta che è in corso un processo di stampa. |
CursorOriginY | Coordinata Y dell'origine del cursore, in unità master. | Valido ogni volta che è in corso un processo di stampa. |
DestX | Coordinata X della destinazione del cursore, in unità master, rispetto all'origine del cursore. | Valido per l'uso nelle stringhe di comando CmdXMoveAbsolute. |
DestXRel | Coordinata X della destinazione del cursore, in unità master, rispetto alla posizione corrente del cursore. | Valido per l'uso nelle stringhe di comando CmdXMoveRelLeft e CmdXMoveRelRight. |
DestY | Coordinata Y della destinazione del cursore, in unità master, rispetto all'origine del cursore. | Valido per l'uso nelle stringhe di comando CmdYMoveAbsolute. |
DestYRel | Coordinata Y della destinazione del cursore, in unità master, rispetto alla posizione corrente del cursore. | Valido per l'uso nelle stringhe di comando CmdYMoveRelUp e CmdYMoveRelDown. |
FontBold | Impostare su uno se il tipo di carattere corrente è in grassetto o zero in caso contrario. | Valido quando è stato specificato un tipo di carattere. |
FontHeight | Altezza, in unità master, del tipo di carattere corrente. | Valido quando è stato specificato un tipo di carattere. |
FontItalic | Impostare su uno se il tipo di carattere corrente è corsivo o zero in caso contrario. | Valido quando è stato specificato un tipo di carattere. |
FontMaxWidth | Impostare sull'incremento massimo dei caratteri di tutti i glifi nel tipo di carattere. | Valido quando è stato specificato un tipo di carattere. |
FontStrikeThru | Impostare su uno se barrato è abilitato per il tipo di carattere corrente o zero in caso contrario. | Valido quando è stato specificato un tipo di carattere. |
FontUnderLine | Impostare su uno se il tipo di carattere corrente è sottolineato o zero in caso contrario. | Valido quando è stato specificato un tipo di carattere. |
FontWidth | Larghezza, in unità master, del tipo di carattere corrente. | Valido quando è stato specificato un tipo di carattere. |
GraphicsXRes | Risoluzione orizzontale corrente per la grafica, in DPI. | Valido ogni volta che è in corso un processo di stampa. |
GraphicsYRes | Risoluzione verticale corrente per la grafica, in DPI. | Valido ogni volta che è in corso un processo di stampa. |
GrayPercentage | Livello grigio (percentuale) da usare per il riempimento grigio. | Valido per l'uso nelle stringhe di comando CmdRectGrayFill. |
GreenValue | Componente verde del colore corrente. | Valido per l'uso nelle stringhe di comando CmdDefinePaletteEntry (vedere BlueValue, RedValue). |
Avanzamento rigaSpacing | Quantità di spazio verticale, in unità master, che rappresenta un avanzamento riga. | Valido per l'uso nelle stringhe di comando CmdSetLineSpacing. |
NextFontID | Numero di identificazione del successivo carattere soft da scaricare. | Valido per l'uso nelle stringhe di comando CmdSetFontID. |
NextGlyph | Codice a due byte del glifo successivo da scaricare. | Valido per l'uso nelle stringhe di comando CmdSetCharCode. |
NumOfCopies | Numero di copie richieste dall'utente. | Valido ogni volta che è in corso un processo di stampa. |
NumOfDataBytes | Numero di byte di dati raster pronti per il trasferimento. | Valido per l'uso in qualsiasi stringa di comando CmdSendXXXData. Se i dati vengono compressi, il valore corrisponde al numero di byte dopo la compressione. |
PageNumber | Numero della pagina attualmente stampata. Si noti che questo non corrisponde necessariamente al numero di pagina dell'applicazione, ma piuttosto al numero di chiamate di DrvSendPage. Questo valore viene inizializzato da DrvStartDoc e viene incrementato da DrvSendPage. Ad esempio, se è selezionato N-up = 4, PageNumber viene incrementato a 2 solo quando viene stampata la quinta pagina del documento. Come altro esempio, se un documento viene stampato in ordine inverso (indietro all'inizio) la variabile standard PageNumber segnala comunque la prima pagina da stampare come pagina 1, anche se si tratta dell'ultima pagina del documento. Questo comportamento è necessario per supportare correttamente la funzionalità di duplex automatico. L'OEM deve usare PageNumber solo per determinare se la pagina corrente è il lato anteriore o posteriore. | Valido ogni volta che è in corso un processo di stampa. |
PaletteIndexToProgram | Indice nella tavolozza dei colori per la voce successiva al programma. | Valido per l'uso nelle stringhe di comando CmdDefinePaletteEntry. (Vedere ancheRedValue, GreenValue, BlueValue, CurrentPaletteIndex). |
PatternBrushID | Numero di identificazione di un pennello modello scaricato. | Valido per l'uso con le stringhe di comando CmdDownloadPattern e CmdSelectPattern. |
PatternBrushSize | Dimensioni, in byte, del pennello pattern corrente. | Valido per l'uso con la stringa di comando CmdDownloadPattern. |
PatternBrushType | Tipo del pennello del motivo corrente. Il valore può essere: 2: Modello di ombreggiatura 3: Modello di tratteggio incrociato 4: Modello definito dall'utente. | Valido per l'uso con le stringhe di comando CmdDownloadPattern e CmdSelectPattern. |
PhysPaperLength | Lunghezza in modalità verticale, in unità master y, della carta attualmente in uso. | Valido ogni volta che è in corso un processo di stampa. |
PhysPaperWidth | Larghezza in modalità verticale, in unità master, del foglio attualmente in uso. | Valido ogni volta che è in corso un processo di stampa. |
PrintDirInCCDegrees | Quantità di rotazione, misurata in senso antiorario, in gradi. | Valido quando il driver invia la stringa di comando CmdSetSimpleRotation o CmdSetAnyRotation. |
RasterDataHeightInPixels | Altezza, in pixel, dell'immagine rappresentata dai dati correnti. | Valido per l'uso in qualsiasi stringa di comando CmdSendXXXData e nelle stringhe di comando CmdSetSrcBmpHeight. La compressione non modifica questo valore. |
RasterDataWidthInBytes | Numero di byte contenuti in una riga di analisi. | Valido per l'uso in qualsiasi stringa di comando CmdSendXXXData e nelle stringhe di comando CmdSetSrcBmpWidth. La compressione non modifica questo valore. |
RectXSize | Larghezza rettangolo, in unità master x. | Valido per l'uso nelle stringhe di comando CmdSetRectWidth. |
RectYSize | Lunghezza del rettangolo, in unità master y. | Valido per l'uso nelle stringhe di comando CmdSetRectHeight. |
RedValue | Componente rosso del colore corrente. | Valido per l'uso nelle stringhe di comando CmdDefinePaletteEntry (vedere GreenValue, BlueValue). |
TextXRes | Risoluzione orizzontale corrente per il testo, in DPI. | Valido ogni volta che è in corso un processo di stampa. |
TextYRes | Risoluzione verticale corrente per il testo, in DPI. | Valido ogni volta che è in corso un processo di stampa. |