Fonction EngTextOut (winddi.h)
La fonction EngTextOut permet à GDI de restituer un ensemble de glyphes à des positions spécifiées.
Syntaxe
ENGAPI BOOL EngTextOut(
SURFOBJ *pso,
STROBJ *pstro,
FONTOBJ *pfo,
CLIPOBJ *pco,
RECTL *prclExtra,
RECTL *prclOpaque,
BRUSHOBJ *pboFore,
BRUSHOBJ *pboOpaque,
POINTL *pptlOrg,
[in] MIX mix
);
Paramètres
pso
Pointeur vers une structure SURFOBJ qui décrit la surface sur laquelle écrire.
pstro
Pointeur vers une structure STROBJ qui définit les glyphes à afficher et les positions où ils doivent être placés.
pfo
Pointeur vers une structure FONTOBJ utilisée pour récupérer des informations sur la police et ses glyphes.
pco
Pointeur vers une structure CLIPOBJ qui définit la région d’clip à travers laquelle le rendu doit être effectué. Aucun pixel ne peut être affecté en dehors de cette région de clip.
prclExtra
Pointeur vers une structure RECTL . Ce paramètre doit toujours être NULL.
prclOpaque
Pointeur vers une structure RECTL qui identifie un rectangle opaque unique exclusif en bas à droite. Les pixels de ce rectangle (ceux qui ne sont pas au premier plan et qui ne sont pas coupés) doivent être affichés avec le pinceau opaque. Ce rectangle limite toujours le texte à dessiner. Si ce paramètre a la valeur NULL, aucun pixel opaque ne doit être rendu.
pboFore
Pointeur vers une structure BRUSHOBJ qui représente l’objet brush à utiliser pour les pixels de premier plan. Ce pinceau sera toujours un pinceau de couleur unie.
pboOpaque
Pointeur vers une structure BRUSHOBJ qui représente l’objet pinceau pour les pixels opaques. Les modes de combinaison de premier plan et d’arrière-plan pour ce pinceau sont supposés être R2_COPYPEN. Sauf si le pilote définit le bit de fonctionnalités GCAPS_ARBRUSHOPAQUE dans le membre flGraphicsCaps de la structure DEVINFO , il est toujours appelé avec un pinceau de couleur unie.
pptlOrg
Pointeur vers une structure POINTL qui définit l’origine du pinceau pour les deux pinceaux. Si ce paramètre est défini sur 0 lorsque EngTextOut est appelé, certains pilotes d’imprimante peuvent imprimer des images couleur de manière incorrecte. Pour plus d’informations, consultez Remarques.
[in] mix
Spécifie les opérations de trame de premier plan et d’arrière-plan (modes de combinaison) pour pboFore.
Valeur retournée
La valeur de retour est TRUE si la fonction réussit. Sinon, il est FALSE et un code d’erreur est journalisé.
Remarques
Le pilote doit appeler EngTextOut lorsqu’il a crocheté DrvTextOut et ne peut pas afficher les glyphes.
Lorsque le paramètre pptlOrg de cette fonction est défini sur 0, certains pilotes d’imprimante impriment des images couleur de manière incorrecte dans Microsoft Windows Server 2003 (version japonaise). La définition de pptlOrg sur 0, une valeur de pointeur NULL , est interprétée comme signifiant qu’aucune origine de pinceau n’est définie. Pour éviter ce problème, initialisez pptlOrg avec l’adresse d’une structure POINTL dont les membres sont définis sur (0,0), avant l’appel à EngTextOut.
Les pixels opaques et au premier plan sont considérés comme un écran à travers lequel la couleur est brossée sur la surface. Les glyphes de la police n’ont pas de couleur en eux-mêmes.
Les paramètres d’entrée de EngTextOut définissent l’ensemble de pixels de glyphe, l’ensemble de rectangles supplémentaires, le rectangle opaque et la zone de clip. Le pilote doit calculer, puis restituer l’ensemble de pixels opaques et de premier plan.
Le mode mixte définit la façon dont le modèle entrant doit être mélangé avec les données déjà présentes sur la surface de l’appareil. Le type de données MIX se compose de deux valeurs ROP2 empaquetées dans un seul ULONG. L’octet d’ordre inférieur définit l’opération de raster au premier plan ; l’octet suivant définit l’opération de trame d’arrière-plan. Pour plus d’informations sur les codes d’opération raster, consultez la documentation Microsoft Windows SDK.
Configuration requise
Client minimal pris en charge | Disponible dans Windows 2000 et versions ultérieures des systèmes d’exploitation Windows. |
Plateforme cible | Universal |
En-tête | winddi.h (inclure Winddi.h) |
Bibliothèque | Win32k.lib |
DLL | Win32k.sys |