Partager via


IDWriteTextRenderer1::D rawUnderline, méthode (dwrite_2.h)

IDWriteTextLayout::Draw appelle cette fonction pour demander au client de dessiner un soulignement.

Syntaxe

HRESULT DrawUnderline(
       void                           *clientDrawingContext,
       FLOAT                          baselineOriginX,
       FLOAT                          baselineOriginY,
       DWRITE_GLYPH_ORIENTATION_ANGLE orientationAngle,
  [in] DWRITE_UNDERLINE const         *underline,
       IUnknown                       *clientDrawingEffect
);

Paramètres

clientDrawingContext

Type : void*

Contexte de dessin défini par l’application passé à IDWriteTextLayout::Draw.

baselineOriginX

Type : FLOAT

Emplacement des pixels (coordonnée X) à l’origine de la ligne de base de l’exécution où le soulignement s’applique.

baselineOriginY

Type : FLOAT

Emplacement des pixels (coordonnée Y) à l’origine de la ligne de base de l’exécution où le soulignement s’applique.

orientationAngle

Type : DWRITE_GLYPH_ORIENTATION_ANGLE

Orientation du soulignement.

[in] underline

Type : const DWRITE_UNDERLINE*

Pointeur vers une structure contenant des informations logiques de soulignement.

clientDrawingEffect

Type : IUnknown*

Effet défini par l’application à appliquer au soulignement. Généralement, cet argument représente des effets tels que le pinceau de premier plan remplissant l’intérieur d’une ligne.

Valeur retournée

Type : HRESULT

Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Notes

Un soulignement unique peut être divisé en plusieurs appels, selon la façon dont la mise en forme modifie les attributs. Si les tailles/styles de police changent au sein d’un soulignement, l’épaisseur et le décalage seront pondérés en moyenne en fonction des caractères. Pour obtenir une position de pixel de départ appropriée, ajoutez soulignement::offset à la ligne de base. Sinon, il n’y aura pas d’espacement entre le texte. La coordonnée x est toujours passée sur le côté gauche, quelle que soit la direction du texte. Cela simplifie le dessin et réduit le problème d’arrondi qui pourrait entraîner des lacunes ou un mélange alpha doublement marqué. Pour éviter le chevauchement alpha, arrondissez les points de terminaison au pixel d’appareil le plus proche.

Spécifications

   
Client minimal pris en charge Windows 7, Windows Vista avec SP2 et Mise à jour de plateforme pour Windows Vista [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2008 R2, Windows Server 2008 avec SP2 et Mise à jour de plateforme pour Windows Server 2008 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête dwrite_2.h
Bibliothèque Dwrite.lib
DLL Dwrite.dll

Voir aussi

IDWriteTextRenderer1