Compartir a través de


Variables estándar

Importante

La plataforma de impresión moderna es el medio preferido de Windows para comunicarse con impresoras. Se recomienda usar el controlador de clase de bandeja de entrada IPP de Microsoft, junto con aplicaciones de soporte técnico de impresión (PSA), para personalizar la experiencia de impresión en Windows 10 y 11 para el desarrollo de dispositivos de impresora.

Para obtener más información, consulte Plataforma de impresión moderna y la Guía de diseño de aplicaciones para compatibilidad con impresión.

El lenguaje GPD define un conjunto de variables estándar a las que se puede hacer referencia dentro de las cadenas de comandos, usando el formato de cadena de comandos. El controlador Unidrv asigna valores a estas variables. Desde el punto de vista de un archivo GPD, las variables son de solo lectura.

Todas las variables estándar se almacenan como enteros DWORD.

La siguiente entrada de comando de impresora especifica la cadena de comandos que se envía a una HP LaserJet 4P cuando un bloque de datos de trama está listo:

*Command: CmdSendBlockData: "<1B>*b" %d{NumOfDataBytes} "W"

La siguiente tabla contiene todas las variables estándar, en orden alfabético.

Variable estándar Nombre Valor Comentarios
BlueValue Componente azul del color actual. Válido para su uso en cadenas de comandos CmdDefinePaletteEntry (consulte GreenValue, RedValue).
CurrentFontID Número de identificación de la fuente en pantalla descargada actualmente. Válido si el trabajo de impresión actual incluye fuentes en pantalla descargadas.
CurrentPaletteIndex Índice actual de la paleta de colores. Válido para su uso en cadenas de comandos CmdSelectPaletteEntry (consulte GreenValue, RedValue).
CursorOriginX Coordenada X del origen del cursor, en unidades maestras. Válida siempre que haya un trabajo de impresión en curso.
CursorOriginY Coordenada Y del origen del cursor, en unidades maestras. Válida siempre que haya un trabajo de impresión en curso.
DestX Coordenada X del destino del cursor, en unidades maestras, relativa al origen del cursor. Válido para su uso en cadenas de comandos CmdXMoveAbsolute.
DestXRel Coordenada X del destino del cursor, en unidades maestras, relativa a la posición actual del cursor. Válida para su uso en las cadenas de comandos CmdXMoveRelLeft y CmdXMoveRelRight.
DestY Coordenada Y del destino del cursor, en unidades maestras, relativa al origen del cursor. Válida para su uso en cadenas de comandos CmdYMoveAbsolute.
DestYRel Coordenada Y del destino del cursor, en unidades maestras, relativa a la posición actual del cursor. Válido para su uso en las cadenas de comandos CmdYMoveRelUp y CmdYMoveRelDown.
FontBold Se establece en uno si la fuente actual es negrita, o en cero en caso contrario. Válida cuando se ha especificado una fuente.
FontHeight Altura, en unidades maestras, de la fuente actual. Válida cuando se ha especificado una fuente.
FontItalic Se establece a uno si la fuente actual es cursiva, o a cero en caso contrario. Válida cuando se ha especificado una fuente.
FontMaxWidth Establece el incremento máximo de caracteres de todos los glifos de la fuente. Válida cuando se ha especificado una fuente.
FontStrikeThru Establece a uno si el tachado está habilitado para la fuente actual, o a cero en caso contrario. Válida cuando se ha especificado una fuente.
FontUnderLine Establece a uno si la fuente actual está subrayada, o a cero en caso contrario. Válida cuando se ha especificado una fuente.
FontWidth Anchura, en unidades maestras, de la fuente actual. Válida cuando se ha especificado una fuente.
GraphicsXRes Resolución horizontal actual de los gráficos, en PPP. Válida siempre que haya un trabajo de impresión en curso.
GraphicsYRes Resolución vertical actual de los gráficos, en PPP. Válida siempre que haya un trabajo de impresión en curso.
GrayPercentage Nivel de gris (porcentaje) que se usará para el relleno gris. Válido para su uso en cadenas de comandos CmdRectGrayFill.
GreenValue Componente verde del color actual. Válido para su uso en cadenas de comandos CmdDefinePaletteEntry (consulte BlueValue, RedValue).
LinefeedSpacing Cantidad de espacio vertical, en unidades maestras, que representa un salto de línea. Válido para su uso en cadenas de comandos CmdSetLineSpacing.
NextFontID Número de identificación de la siguiente fuente en pantalla que se va a descargar. Válido para su uso en cadenas de comandos CmdSetFontID.
NextGlyph Código de dos bytes del siguiente glifo que se va a descargar. Válido para su uso en cadenas de comandos CmdSetCharCode.
NumofCopies Número de copias solicitadas por el usuario. Válida siempre que haya un trabajo de impresión en curso.
NumOfDataBytes Número de bytes de datos de trama listos para su transferencia. Válido para su uso en cualquier cadena de comandos CmdSendXXXData. Si los datos están comprimidos, el valor es el número de bytes después de la compresión.
PageNumber El número de la página que se está imprimiendo actualmente. Tenga en cuenta que no se corresponde necesariamente con el número de página de la aplicación, sino con el número de veces que se ha llamado a DrvSendPage. Este valor lo inicializa DrvStartDoc y lo incrementa DrvSendPage. Por ejemplo, si se selecciona N-up = 4, PageNumber se incrementa a 2 solo cuando se imprime la quinta página del documento. Otro ejemplo: si un documento se imprime en orden inverso (de atrás hacia adelante), la variable estándar PageNumber sigue indicando que la primera página que se imprime es la página 1, aunque sea la última página del documento. Este comportamiento es necesario para ser compatible correctamente con la función de impresión a doble cara automática. El OEM debe usar PageNumber solo para determinar si la página actual es el anverso o el reverso. Válida siempre que haya un trabajo de impresión en curso.
PaletteIndexToProgram Índice en la paleta de colores para la siguiente entrada a programar. Válido para su uso en cadenas de comandos CmdDefinePaletteEntry. (Consulte también RedValue, GreenValue, BlueValue, CurrentPaletteIndex).
PatternBrushID Número de identificación de un pincel de patrón descargado. Válido para su uso con las cadenas de comandos CmdDownloadPattern y CmdSelectPattern.
PatternBrushSize Tamaño, en bytes, del pincel patrón actual. Válido para su uso con la cadena de comandos CmdDownloadPattern.
PatternBrushType Tipo del pincel patrón actual. El valor puede ser: 2: Patrón de sombreado 3: Patrón de sombreado cruzado 4: Patrón definido por el usuario. Válido para su uso con las cadenas de comandos CmdDownloadPattern y CmdSelectPattern.
PhysPaperLength Longitud en modo retrato, en unidades y-master, del papel actualmente en uso. Válida siempre que haya un trabajo de impresión en curso.
PhysPaperWidth Anchura en modo retrato, en unidades maestras, del papel actualmente en uso. Válida siempre que haya un trabajo de impresión en curso.
PrintDirInCCDegrees Cantidad de rotación, medida en sentido contrario a las agujas del reloj, en grados. Válido cuando el controlador envía la cadena de comandos CmdSetSimpleRotation o CmdSetAnyRotation.
RasterDataHeightInPixels Altura, en píxeles, de la imagen representada por los datos actuales. Válido para su uso en cualquier cadena de comandos CmdSendXXXData y en cadenas de comandos CmdSetSrcBmpHeight. La compresión no modifica este valor.
RasterDataWidthInBytes Número de bytes contenidos en una línea de escaneo. Válido para su uso en cualquier cadena de comandos CmdSendXXXData y en cadenas de comandos CmdSetSrcBmpWidth. La compresión no modifica este valor.
RectXSize Ancho del rectángulo, en unidades x-master. Válido para su uso en cadenas de comandos CmdSetRectWidth.
RectYSize Longitud del rectángulo, en unidades y-master. Válido para cadenas de comandos CmdSetRectHeight.
RedValue Componente rojo del color actual. Válido para su uso en cadenas de comandos CmdDefinePaletteEntry (consulte GreenValue, BlueValue).
TextXRes Resolución horizontal actual del texto, en PPP. Válida siempre que haya un trabajo de impresión en curso.
TextYRes Resolución vertical actual del texto, en PPP. Válida siempre que haya un trabajo de impresión en curso.