Partager via


fonction wglUseFontBitmapsA (wingdi.h)

La fonction wglUseFontBitmaps crée un ensemble de listes d’affichage bitmap à utiliser dans le contexte de rendu OpenGL actuel. L’ensemble de listes d’affichage bitmap est basé sur les glyphes de la police actuellement sélectionnée dans le contexte de l’appareil. Vous pouvez ensuite utiliser des bitmaps pour dessiner des caractères dans une image OpenGL.

La fonction wglUseFontBitmaps crée des listes d’affichage de nombre , une pour chacune d’une série de glyphes de nombre qui commence par le premier glyphe dans les polices sélectionnées du paramètre hdc .

Syntaxe

BOOL wglUseFontBitmapsA(
  HDC   unnamedParam1,
  DWORD unnamedParam2,
  DWORD unnamedParam3,
  DWORD unnamedParam4
);

Paramètres

unnamedParam1

Spécifie le contexte d’appareil dont la police actuellement sélectionnée sera utilisée pour former les listes d’affichage bitmap de glyphe dans le contexte de rendu OpenGL actuel.

unnamedParam2

Spécifie le premier glyphe de l’exécution des glyphes qui seront utilisés pour former des listes d’affichage bitmap de glyphes.

unnamedParam3

Spécifie le nombre de glyphes dans l’exécution des glyphes qui seront utilisés pour former des listes d’affichage bitmap de glyphes. La fonction crée des listes d’affichage de nombre , une pour chaque glyphe dans l’exécution.

unnamedParam4

Spécifie une liste d’affichage de départ.

Valeur retournée

Si la fonction réussit, la valeur de retour est TRUE.

Si la fonction échoue, la valeur de retour est FALSE. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

La fonction wglUseFontBitmaps définit lenombre de listes d’affichage dans le contexte de rendu OpenGL actuel. Chaque liste d’affichage a un numéro d’identification, commençant à listBase. Chaque liste d’affichage se compose d’un seul appel à glBitmap. La définition de bitmap listBase + i est extraite du premieri du glyphe + de la police actuellement sélectionnée dans le contexte d’appareil spécifié par hdc. Si un glyphe n’est pas défini, la fonction définit une liste d’affichage vide pour celui-ci.

La fonction wglUseFontBitmaps crée du texte bitmap dans le plan de l’écran. Il permet l’étiquetage des objets dans OpenGL.

Dans la version actuelle de l’implémentation d’OpenGL par Microsoft, vous ne pouvez pas effectuer d’appels GDI à un contexte d’appareil qui a un format de pixel à double mise en mémoire tampon. Par conséquent, vous ne pouvez pas utiliser les polices GDI et les fonctions de texte avec ces contextes d’appareil. Vous pouvez utiliser la fonction wglUseFontBitmaps pour contourner cette limitation et dessiner du texte dans un contexte d’appareil à double mise en mémoire tampon.

La fonction détermine les paramètres de chaque appel à glBitmap comme suit.

paramètre glBitmap Signification
width Largeur de la bitmap du glyphe, comme retourné dans le membre gmBlackBoxX de la structure GLYPHMETRICS du glyphe .
height Hauteur de l’image bitmap du glyphe, comme retourné dans le membre gmBlackBoxY de la structure GLYPHMETRICS du glyphe .
xorig Décalage x de l’origine du glyphe, tel que retourné dans le membre gmptGlyphOrigin.x de la structure GLYPHMETRICS du glyphe .
yorig Décalage y de l’origine du glyphe, tel que retourné dans le membre gmptGlyphOrigin.y de la structure GLYPHMETRICS du glyphe .
xmove Distance horizontale à l’origine de la cellule de caractères suivante, comme retourné dans le membre gmCellIncX de la structure GLYPHMETRICS du glyphe .
ymove Distance verticale à l’origine de la cellule de caractères suivante, telle que retournée dans le membre gmCellIncY de la structure GLYPHMETRICS du glyphe .
bitmap Bitmap pour le glyphe, comme retourné par GetGlyphOutline avec uFormat égal à 1.
 

Exemples

L’exemple de code suivant montre comment utiliser wglUseFontBitmaps pour dessiner du texte.

HDC    hdc; 
HGLRC  hglrc; 
 
// create a rendering context  
hglrc = wglCreateContext (hdc); 
 
// make it the calling thread's current rendering context  
wglMakeCurrent (hdc, hglrc); 
 
// now we can call OpenGL API  
 
// make the system font the device context's selected font  
SelectObject (hdc, GetStockObject (SYSTEM_FONT)); 
 
// create the bitmap display lists  
// we're making images of glyphs 0 thru 254  
// the display list numbering starts at 1000, an arbitrary choice  
wglUseFontBitmaps (hdc, 0, 255, 1000); 
 
// display a string:  
// indicate start of glyph display lists  
glListBase (1000); 
// now draw the characters in a string  
glCallLists (24, GL_UNSIGNED_BYTE, "Hello Windows OpenGL World");

Notes

L’en-tête wingdi.h définit wglUseFontBitmaps comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête wingdi.h
Bibliothèque Opengl32.lib
DLL Opengl32.dll

Voir aussi

GLYPHMETRICS

GetGlyphOutline

OpenGL sur Windows

Fonctions WGL

glBitmap

glCallLists

glListBase

wglUseFontOutlines