Variables standard
Important
La plateforme d’impression moderne est le moyen privilégié de Windows pour communiquer avec les imprimantes. Nous vous recommandons d’utiliser le pilote de classe IPP en boîte de Microsoft, ainsi que les applications de support d’impression (PSA), pour personnaliser l’expérience d’impression dans Windows 10 et 11 pour le développement de périphériques d’impression.
Pour plus d’informations, veuillez consulter la section Plateforme d’impression moderne et le Guide de conception des applications de support d’impression.
Le langage GPD définit un ensemble de variables standard qui peuvent être référencées dans les chaînes de commande, en utilisant le format de la chaîne de commande. Le pilote Unidrv attribue des valeurs à ces variables. Du point de vue d'un fichier GPD, les variables sont en lecture seule.
Toutes les variables standard sont stockées sous forme d'entiers DWORD.
L'entrée de commande d'imprimante suivante spécifie la chaîne de commande envoyée à une HP LaserJet 4P lorsqu'un bloc de données matricielles est prêt :
*Command: CmdSendBlockData: "<1B>*b" %d{NumOfDataBytes} "W"
Le tableau suivant contient toutes les variables standard, par ordre alphabétique.
Nom de la variable standard | Valeur | Commentaires |
---|---|---|
Valeur bleue | Composante bleue de la couleur actuelle. | Valable pour les chaînes de commande CmdDefinePaletteEntry (voir GreenValue, RedValue). |
CurrentFontID | Numéro d'identification de la police logicielle téléchargée. | Valable si le travail d'impression en cours comprend des polices logicielles téléchargées. |
CurrentPaletteIndex | Index actuel de la palette de couleurs. | Valable pour les chaînes de commande de CmdSelectPaletteEntry (voir GreenValue, RedValue). |
CursorOriginX | Coordonnée X de l'origine du curseur, en unités principales. | Valide lorsqu'un travail d'impression est en cours. |
CursorOriginY | Coordonnée Y de l'origine du curseur, en unités principales. | Valide lorsqu'un travail d'impression est en cours. |
DestX | Coordonnée X de la destination du curseur, en unités principales, par rapport à l'origine du curseur. | Valable pour les chaînes de commande CmdXMoveAbsolute. |
DestXRel | Coordonnée X de la destination du curseur, en unités principales, par rapport à la position actuelle du curseur. | Valable pour les chaînes de commande CmdXMoveRelLeft et CmdXMoveRelRight. |
DestY | Coordonnée Y de la destination du curseur, en unités principales, par rapport à l'origine du curseur. | Valable pour les chaînes de commande CmdYMoveAbsolute. |
DestYRel | Coordonnée Y de la destination du curseur, en unités principales, par rapport à la position actuelle du curseur. | Valable pour les chaînes de commande CmdYMoveRelUp et CmdYMoveRelDown. |
FontBold | Défini à un si la police actuelle est en gras, ou à zéro dans le cas contraire. | Valable lorsqu'une police a été spécifiée. |
FontHeight | Hauteur, en unités principales, de la police actuelle. | Valable lorsqu'une police a été spécifiée. |
Italique | Valeur égale à un si la police actuelle est en italique, ou zéro dans le cas contraire. | Valable lorsqu'une police a été spécifiée. |
FontMaxWidth | Valeur de l'incrément maximal de tous les glyphes de la police. | Valable lorsqu'une police a été spécifiée. |
FontStrikeThru | Prend la valeur un si le barrage est activé pour la police actuelle, ou zéro dans le cas contraire. | Valable lorsqu'une police a été spécifiée. |
FontUnderLine | Valeur égale à un si la police en cours est soulignée, ou zéro dans le cas contraire. | Valable lorsqu'une police a été spécifiée. |
FontWidth | Largeur, en unités principales, de la police actuelle. | Valable lorsqu'une police a été spécifiée. |
GraphicsXRes | Résolution horizontale actuelle des graphiques, en DPI. | Valide lorsqu'un travail d'impression est en cours. |
GraphicsYRes | Résolution verticale actuelle des graphiques, en DPI. | Valide lorsqu'un travail d'impression est en cours. |
GrayPercentage | Niveau de gris (pourcentage) à utiliser pour le remplissage en gris. | Valable pour les chaînes de commande CmdRectGrayFill. |
GreenValue | Composante verte de la couleur actuelle. | Valable pour les chaînes de commande CmdDefinePaletteEntry (voir BlueValue, RedValue). |
LinefeedSpacing | Quantité d'espace vertical, en unités principales, représentant un saut de ligne. | Valable pour les chaînes de commande CmdSetLineSpacing. |
NextFontID | Numéro d'identification de la prochaine police logicielle à télécharger. | Valable pour les chaînes de commande CmdSetFontID. |
NextGlyph | Code sur deux octets du glyphe suivant à télécharger. | Valable pour les chaînes de commande CmdSetCharCode. |
NumOfCopies | Nombre de copies demandées par l'utilisateur. | Valide lorsqu'un travail d'impression est en cours. |
NumOfDataBytes | Nombre d'octets de données matricielles prêts à être transférés. | Valable pour toute chaîne de commande CmdSendXXXData. Si les données sont compressées, la valeur est le nombre d'octets après compression. |
PageNumber | Numéro de la page en cours d'impression. Notez que cela ne correspond pas nécessairement au numéro de page de l’application, mais plutôt au nombre de fois où DrvSendPage a été appelé. Cette valeur est initialisée par DrvStartDoc et incrémentée par DrvSendPage. Par exemple, si N-up = 4 est sélectionné, PageNumber est incrémenté à 2 uniquement lorsque la cinquième page du document est en cours d'impression. Autre exemple, si un document est imprimé dans l'ordre inverse (du début à la fin), la variable standard PageNumber indique toujours que la première page à imprimer est la page 1, même s'il s'agit de la dernière page du document. Ce comportement est nécessaire pour prendre en charge correctement la fonctionnalité de recto-verso automatique. L'OEM doit utiliser PageNumber uniquement pour déterminer si la page en cours est le recto ou le verso. | Valide lorsqu'un travail d'impression est en cours. |
PaletteIndexToProgram | Index dans la palette de couleurs pour la prochaine entrée à programmer. | Valable pour les chaînes de commande CmdDefinePaletteEntry. (Voir aussi RedValue, GreenValue, BlueValue, CurrentPaletteIndex). |
PatternBrushID | Numéro d'identification d'une brosse de motif téléchargée. | Valable pour les chaînes de commande CmdDownloadPattern et CmdSelectPattern. |
PatternBrushSize | Taille, en octets, de la brosse à motifs actuelle. | Valable pour la chaîne de commande CmdDownloadPattern. |
PatternBrushType | Type de la brosse de motif actuelle. La valeur peut être : 2 : Motif d'ombrage 3 : Motif de hachures 4 : Motif défini par l'utilisateur. | Valable pour les chaînes de commande CmdDownloadPattern et CmdSelectPattern. |
PhysPaperLength | Longueur en mode portrait, en unités de maître y, du papier actuellement utilisé. | Valide lorsqu'un travail d'impression est en cours. |
PhysPaperWidth | Largeur en mode portrait, en unités maître, du papier actuellement utilisé. | Valide lorsqu'un travail d'impression est en cours. |
PrintDirInCCDegrees | Quantité de rotation, mesurée dans le sens inverse des aiguilles d'une montre, en degrés. | Valable lorsque le pilote envoie la chaîne de commande CmdSetSimpleRotation ou CmdSetAnyRotation. |
RasterDataHeightInPixels | Hauteur, en pixels, de l'image représentée par les données actuelles. | Valable pour toute chaîne de commande CmdSendXXXData et pour les chaînes de commande CmdSetSrcBmpHeight. La compression ne modifie pas cette valeur. |
RasterDataWidthInBytes | Nombre d'octets contenus dans une ligne d'analyse. | Valable pour toute chaîne de commande CmdSendXXXData et pour les chaînes de commande CmdSetSrcBmpWidth. La compression ne modifie pas cette valeur. |
RectXSize | Largeur du rectangle, en unités x-master. | Valable pour les chaînes de commande CmdSetRectWidth. |
RectYSize | Longueur du rectangle, en unités de maître y. | Valable pour les chaînes de commande CmdSetRectHeight. |
RedValue | Composante rouge de la couleur actuelle. | Valable pour les chaînes de commande CmdDefinePaletteEntry (voir GreenValue, BlueValue). |
TextXRes | Résolution horizontale actuelle du texte, en DPI. | Valide lorsqu'un travail d'impression est en cours. |
TextYRes | Résolution verticale actuelle du texte, en DPI. | Valide lorsqu'un travail d'impression est en cours. |