CFont::CreateFontIndirect
Initialise un objet d' CFont avec les caractéristiques données dans une structure de LOGFONT.
BOOL CreateFontIndirect(
const LOGFONT* lpLogFont
);
Paramètres
- lpLogFont
Les points à LOGFONT structure qui définit les caractéristiques de police logique.
Valeur de retour
Une valeur différente de zéro si l'opération a réussi ; sinon 0.
Notes
La police peut ensuite être sélectionnée comme police actuelle pour tout appareil.
Cette police fait spécifier les caractéristiques de la structure de LOGFONT .Lorsque la police sélectionnée à l'aide de la fonction membre de CDC::SelectObject , le mappeur de polices GDI tente de faire correspondre la police logique avec une police physique existant.Si le mappeur de polices ne trouve pas de correspondance exacte de la police logique, il fournit une autre police dont les caractéristiques correspondent autant de les fonctionnalités demandées que possible.
Lorsque vous n'avez plus besoin de l'objet d' CFont créé par la fonction d' CreateFontIndirect , utilisez CDC::SelectObject pour sélectionner une police dans le contexte de périphérique, puis supprimez l'objet d' CFont qui n'est plus nécessaire.
Exemple
// The code fragment shows how to create a font object,
// select the font object into a DC (device context) for text
// drawing, and finally delete the font object.
// Initializes a CFont object with the characteristics given
// in a LOGFONT structure.
CFont font;
LOGFONT lf;
memset(&lf, 0, sizeof(LOGFONT)); // zero out structure
lf.lfHeight = 12; // request a 12-pixel-height font
_tcsncpy_s(lf.lfFaceName, LF_FACESIZE,
_T("Arial"), 7); // request a face name "Arial"
VERIFY(font.CreateFontIndirect(&lf)); // create the font
// Do something with the font just created...
CClientDC dc(this);
CFont* def_font = dc.SelectObject(&font);
dc.TextOut(5, 5, _T("Hello"), 5);
dc.SelectObject(def_font);
// Done with the font. Delete the font object.
font.DeleteObject();
Configuration requise
en-tête : afxwin.h