Partager via


structure CHARFORMAT2A (Rich Edit 2.0)

Contient des informations sur la mise en forme des caractères dans un contrôle d’édition enrichi. CHARFORMAT2 est une extension Microsoft Rich Edit 2.0 de la structure CHARFORMAT . Microsoft Rich Edit 2.0 vous permet d’utiliser l’une ou l’autre structure avec les messages EM_GETCHARFORMAT et EM_SETCHARFORMAT .

Syntaxe

typedef struct _charformat2a {
  UINT     cbSize;
  DWORD    dwMask;
  DWORD    dwEffects;
  LONG     yHeight;
  LONG     yOffset;
  COLORREF crTextColor;
  BYTE     bCharSet;
  BYTE     bPitchAndFamily;
  char     szFaceName[LF_FACESIZE];
  WORD     wWeight;
  SHORT    sSpacing;
  COLORREF crBackColor;
  LCID     lcid;
  union {
    DWORD dwReserved;
    DWORD dwCookie;
  };
  DWORD    dwReserved;
  SHORT    sStyle;
  WORD     wKerning;
  BYTE     bUnderlineType;
  BYTE     bAnimation;
  BYTE     bRevAuthor;
  BYTE     bUnderlineColor;
} CHARFORMAT2A;

Membres

cbSize

Type : UINT

Spécifie la taille, en octets, de la structure. Avant de passer cette structure à un contrôle d’édition enrichi, définissez cbSize sur la taille de la structure CHARFORMAT ou CHARFORMAT2 . Si cbSize est égal à la taille d’une structure CHARFORMAT , le contrôle utilise uniquement les membres CHARFORMAT .

dwMask

Type : DWORD

Spécifie les parties de la structure CHARFORMAT2 qui contiennent des informations valides. Le membre dwMask peut être une combinaison des valeurs de deux jeux d’indicateurs de bits. Un jeu indique les membres de la structure qui sont valides. Un autre ensemble indique les attributs valides dans le membre dwEffects .

Définissez les valeurs suivantes pour indiquer les attributs valides du membre dwEffects .

Valeur Signification
CFM_ALL
Combinaison des valeurs suivantes : CFM_EFFECTS CFM_SIZE | CFM_FACE | CFM_OFFSET | | CFM_CHARSET
CFM_ALL2
Combinaison des valeurs suivantes : CFM_ALL CFM_EFFECTS2 | CFM_BACKCOLOR | CFM_LCID | CFM_UNDERLINETYPE | CFM_WEIGHT | CFM_REVAUTHOR | | CFM_SPACING | CFM_KERNING | CFM_STYLE CFM_ANIMATION | | CFM_COOKIE
CFM_ALLCAPS
La valeur CFE_ALLCAPS est valide.
CFM_EFFECTS
Combinaison des valeurs suivantes : CFM_EFFECTS2 CFM_FONTBOUND | CFM_EXTENDED | CFM_MATHNOBUILDUP | CFM_MATH | CFM_MATHORDINARY |
CFM_BOLD
La valeur CFE_BOLD est valide.
CFM_COLOR
La valeur CFE_AUTOCOLOR est valide ou le membre crTextColor est valide.
CFM_COOKIE
La valeur dwCookie est valide.
CFM_DISABLED
La valeur CFE_DISABLED est valide.
CFM_EXTENDED
La valeur CFE_EXTENDED est valide.
CFM_EFFECTS
Combinaison des valeurs suivantes : CFM_BOLD CFM_ITALIC | | CFM_UNDERLINE | CFM_COLOR CFM_STRIKEOUT | CFE_PROTECTED | | CFM_LINK
CFM_EFFECTS2
Combinaison des valeurs suivantes : CFM_EFFECTS | CFM_DISABLED | CFM_SMALLCAPS CFM_ALLCAPS | CFM_HIDDEN | CFM_OUTLINE | | CFM_SHADOW CFM_EMBOSS | | CFM_IMPRINT CFM_IMPRINT | CFM_REVISED | CFM_SUBSCRIPT | CFM_SUPERSCRIPT | CFM_BACKCOLOR
CFM_EMBOSS
La valeur CFE_EMBOSS est valide.
CFM_FONTBOUND
La valeur CFE_FONTBOUND est valide.
CFM_HIDDEN
La valeur CFE_HIDDEN est valide.
CFM_IMPRINT
La valeur CFE_IMPRINT est valide.
CFM_ITALIC
La valeur CFE_ITALIC est valide.
CFM_LINK
La valeur CFE_LINK est valide.
CFM_LINKPROTECTED
La valeur CFE_LINKPROTECTED est valide.
CFM_MATH
La valeur CFE_MATH est valide.
CFM_MATHNOBUILDUP
La valeur CFE_MATHNOBUILDUP est valide.
CFM_MATHORDINARY
La valeur CFE_MATHORDINARY est valide.
CFM_OUTLINE
La valeur CFE_OUTLINE est valide.
CFM_PROTECTED
La valeur CFE_PROTECTED est valide.
CFM_REVISED
La valeur CFE_REVISION est valide.
CFM_SHADOW
La valeur CFE_SHADOW est valide.
CFM_SMALLCAPS
La valeur CFE_SMALLCAPS est valide.
CFM_STRIKEOUT
La valeur CFE_STRIKEOUT est valide.
CFM_SUBSCRIPT
Les valeurs CFE_SUBSCRIPT et CFE_SUPERSCRIPT sont valides.
CFM_SUPERSCRIPT
Les valeurs CFE_SUBSCRIPT et CFE_SUPERSCRIPT sont valides.
CFM_UNDERLINE
La valeur CFE_UNDERLINE est valide.
 

Définissez les valeurs suivantes pour indiquer les membres de structure valides.

Valeur Signification
CFM_ANIMATION
Le membre bAnimation est valide.
CFM_BACKCOLOR
Le membre crBackColor est valide.
CFM_CHARSET
Le membre bCharSet est valide.
CFM_COLOR
Le membre crTextColor est valide, sauf si l’indicateur CFE_AUTOCOLOR est défini dans le membre dwEffects .
CFM_FACE
Le membre szFaceName est valide.
CFM_KERNING
Le membre wKerning est valide.
CFM_LCID
Le membre lcid est valide.
CFM_OFFSET
Le membre yOffset est valide.
CFM_REVAUTHOR
Le membre bRevAuthor est valide.
CFM_SIZE
Le membre yHeight est valide.
CFM_SPACING
Le membre sSpacing est valide.
CFM_STYLE
Le membre sStyle est valide.
CFM_UNDERLINETYPE
Le membre bUnderlineType est valide.
CFM_WEIGHT
Le membre wWeight est valide.

dwEffects

Type : DWORD

Ensemble d’indicateurs de bits qui spécifient des effets de caractère. Certains indicateurs sont inclus uniquement pour la compatibilité avec les interfaces TOM ( Text Object Model ) Microsoft ; le contrôle d’édition enrichi stocke la valeur, mais ne l’utilise pas pour afficher du texte.

Ce membre peut être une combinaison des valeurs suivantes.

Valeur Signification
CFE_ALLCAPS
Les caractères sont tous des lettres majuscules. La valeur n’affecte pas la façon dont le contrôle affiche le texte. Cette valeur s’applique uniquement aux versions antérieures à Microsoft Rich Edit 3.0.
CFE_AUTOBACKCOLOR
La couleur d’arrière-plan est la valeur de retour de GetSysColor(COLOR_WINDOW). Si cet indicateur est défini, le membre crBackColor est ignoré.
CFE_AUTOCOLOR
La couleur du texte est la valeur de retour de GetSysColor(COLOR_WINDOWTEXT). Si cet indicateur est défini, le membre crTextColor est ignoré.
CFE_BOLD
Les caractères sont en gras.
CFE_DISABLED
Les caractères sont affichés avec une ombre décalée de 3/4 point ou d’un pixel, selon la valeur la plus grande.
CFE_EMBOSS
Les caractères sont en relief. La valeur n’affecte pas la façon dont le contrôle affiche le texte.
CFE_EXTENDED
Les caractères sont des membres moins courants d’un script. Une police qui prend en charge un script doit case activée si elle a des glyphes pour ces caractères.
CFE_FONTBOUND
La police est choisie par le contrôle d’édition enrichi, car la police active ne prend pas en charge les caractères. Ce processus est appelé liaison de polices.
CFE_HIDDEN
Pour Microsoft Rich Edit 3.0 et versions ultérieures, les caractères ne sont pas affichés.
CFE_IMPRINT
Les caractères sont affichés sous forme de caractères imprimés. La valeur n’affecte pas la façon dont le contrôle affiche le texte.
CFE_ITALIC
Les caractères sont italiques.
CFE_LINK
Un contrôle d’édition enrichi peut envoyer des codes de notification EN_LINK lorsqu’il reçoit des messages de souris alors que le pointeur de la souris se trouve sur du texte avec l’effet CFE_LINK .
CFE_LINKPROTECTED
Les caractères font partie d’un lien de nom convivial.
CFE_MATH
Les caractères se trouvent dans une zone mathématique.
CFE_MATHNOBUILDUP
Les caractères ne participent pas à une accumulation mathématique. Par exemple, lorsqu’il est appliqué à un /, le / ne sera pas utilisé pour générer une fraction.
CFE_MATHORDINARY
Les caractères sont affichés sous forme de texte ordinaire dans une zone mathématique.
CFE_OUTLINE
Les caractères sont affichés sous forme de caractères hiérarchiques. La valeur n’affecte pas la façon dont le contrôle affiche le texte.
CFE_PROTECTED
Les caractères sont protégés ; Une tentative de modification entraîne une EN_PROTECTED code de notification.
CFE_REVISED
Les caractères sont marqués comme révisés.
CFE_SHADOW
Les caractères sont affichés sous forme de caractères ombrés. La valeur n’affecte pas la façon dont le contrôle affiche le texte.
CFE_SMALLCAPS
Les caractères sont en minuscules majuscules. La valeur n’affecte pas la façon dont le contrôle affiche le texte.
CFE_STRIKEOUT
Les caractères sont rayés.
CFE_SUBSCRIPT
Les caractères sont des indices. Les valeurs CFE_SUPERSCRIPT et CFE_SUBSCRIPT s’excluent mutuellement. Pour les deux valeurs, le contrôle calcule automatiquement un décalage et une taille de police plus petite. Vous pouvez également utiliser les membres yHeight et yOffset pour spécifier explicitement la taille de police et le décalage des caractères d’indice et d’exposant.
CFE_SUPERSCRIPT
Les caractères sont en exposant.
CFE_UNDERLINE
Les caractères sont soulignés.

yHeight

Type : LONG

Spécifie la hauteur des caractères, en twips (1/1440 de pouce ou 1/20 du point d’une imprimante). Pour utiliser ce membre, définissez l’indicateur CFM_SIZE dans le membre dwMask .

yOffset

Type : LONG

Décalage de caractères par rapport à la ligne de base, en twips. Si la valeur de ce membre est positive, le caractère est un exposant ; si la valeur est négative, le caractère est un indice. Pour utiliser ce membre, définissez l’indicateur CFM_OFFSET dans le membre dwMask .

crTextColor

Type : COLORREF

Couleur du texte. Pour utiliser ce membre, définissez l’indicateur CFM_COLOR dans le membre dwMask . Ce membre est ignoré si l’effet de caractère CFE_AUTOCOLOR est spécifié. Pour générer un COLORREF, utilisez la macro RVB .

bCharSet

Type : BYTE

Valeur du jeu de caractères. Il peut s’agir de l’une des valeurs spécifiées pour le membre lfCharSet de la structure LOGFONT . Pour utiliser ce membre, définissez l’indicateur CFM_CHARSET dans le membre dwMask .

bPitchAndFamily

Type : BYTE

Spécifie la famille de polices et le pitch. Ce membre est identique au membre lfPitchAndFamily de la structure LOGFONT .

szFaceName[LF_FACESIZE]

Type : TCHAR[LF_FACESIZE]

Tableau de caractères avec fin null spécifiant le nom de la police. Pour utiliser ce membre, définissez l’indicateur CFM_FACE dans le membre dwMask .

wWeight

Type : WORD

Poids de police. Ce membre est identique au membre lfWeight de la structure LOGFONT . Pour utiliser ce membre, définissez l’indicateur CFM_WEIGHT dans le membre dwMask .

sSpacing

Type : SHORT

Espace horizontal entre les lettres, en twips. Cette valeur n’a aucun effet sur le texte affiché par un contrôle d’édition enrichi ; il est inclus pour la compatibilité avec les interfaces Windows TOM. Pour utiliser ce membre, définissez l’indicateur CFM_SPACING dans le membre dwMask .

crBackColor

Type : COLORREF

Couleur d’arrière-plan. Pour utiliser ce membre, définissez l’indicateur CFM_BACKCOLOR dans le membre dwMask . Ce membre est ignoré si l’effet de caractère CFE_AUTOBACKCOLOR est spécifié. Pour générer un , utilisez la macro.

lcid

Type : LCID

Identificateur de paramètres régionaux 32 bits qui contient un identificateur de langue dans le mot inférieur et un identificateur de tri et une valeur réservée dans le mot supérieur. Ce membre n’a aucun effet sur le texte affiché par un contrôle d’édition enrichi, mais les vérificateurs d’orthographe et de grammaire peuvent l’utiliser pour résoudre les problèmes liés à la langue. Vous pouvez utiliser la macro pour créer une valeur LCID . Pour utiliser ce membre, définissez l’indicateur CFM_LCID dans le membre dwMask .

dwReserved

Type : DWORD

Réservés au; la valeur doit être égale à zéro.

Type : DWORD

Réservés au; la valeur doit être égale à zéro.

dwCookie

Type : DWORD

Cookie client. Ce membre est opaque à un contrôle d’édition enrichi.

sStyle

Type : SHORT

Handle de style caractère. Cette valeur n’a aucun effet sur le texte affiché par un contrôle d’édition enrichi ; il est inclus pour la compatibilité avec les interfaces WindowsTOM. Pour utiliser ce membre, définissez l’indicateur CFM_STYLE dans le membre dwMask . Pour plus d’informations, consultez la documentation TOM.

wKerning

Type : WORD

Valeur de la taille de police, au-dessus de laquelle kernner le caractère (yHeight). Cette valeur n’a aucun effet sur le texte affiché par un contrôle d’édition enrichi ; il est inclus pour la compatibilité avec les interfaces TOM. Pour utiliser ce membre, définissez l’indicateur CFM_KERNING dans le membre dwMask .

bUnderlineType

Type : BYTE

Spécifie le type de soulignement. Pour utiliser ce membre, définissez l’indicateur CFM_UNDERLINETYPE dans le membre dwMask . Ce membre peut être l’une des valeurs suivantes.

Valeur Signification
CFU_CF1UNDERLINE
La structure mappe le soulignement de bits de CHARFORMAT à CHARFORMAT2 (autrement dit, elle effectue un soulignement de type CHARFORMAT sur ce texte).
CFU_INVERT
Pour la composition IME, falsifier une sélection.
CFU_UNDERLINE
Texte souligné avec une seule ligne pleine.
CFU_UNDERLINEDASH
Texte souligné avec des tirets.
CFU_UNDERLINEDASHDOT
Texte souligné avec une ligne pointillée et pointillée.
CFU_UNDERLINEDASHDOTDOT
Texte souligné avec une ligne pointillée et doublée.
CFU_UNDERLINEDOTTED
Texte souligné avec une ligne en pointillés. Pour les versions antérieures à Microsoft Rich Edit 3.0, le texte s’affiche avec un soulignement solide.
CFU_UNDERLINEDOUBLE
Texte souligné avec une double ligne. Le contrôle d’édition enrichi affiche le texte avec un soulignement solide.
CFU_UNDERLINEDOUBLEWAVE
Afficher en tant que CFU_UNDERLINEWAVE.
CFU_UNDERLINEHAIRLINE
Afficher en tant que CFU_UNDERLINE.
CFU_UNDERLINEHEAVYWAVE
Afficher en tant que CFU_UNDERLINEWAVE.
CFU_UNDERLINELONGDASH
Afficher en tant que CFU_UNDERLINEDASH.
CFU_UNDERLINENONE
Pas de soulignement. Il s’agit de la valeur par défaut.
CFU_UNDERLINETHICK
Afficher en tant que CFU_UNDERLINE.
CFU_UNDERLINETHICKDASH
Afficher en tant que CFU_UNDERLINEDASH.
CFU_UNDERLINETHICKDASHDOT
Afficher en tant que CFU_UNDERLINEDASHDOT.
CFU_UNDERLINETHICKDASHDOTDOT
Afficher en tant que CFU_UNDERLINEDASHDOT.
CFU_UNDERLINETHICKDOTTED
Afficher en tant que CFU_UNDERLINEDOT.
CFU_UNDERLINETHICKLONGDASH
Afficher en tant que CFU_UNDERLINEDASH.
CFU_UNDERLINEWAVE
RichEdit 4.1 et versions ultérieures : texte souligné avec une ligne ondulée.
CFU_UNDERLINEWORD
RichEdit 4.1 et versions ultérieures : soulignez uniquement les mots. Le contrôle d’édition enrichi affiche le texte avec un soulignement solide.

bAnimation

Type : BYTE

Type d’animation de texte. Cette valeur n’a aucun effet sur le texte affiché par un contrôle d’édition enrichi ; il est inclus pour la compatibilité avec les interfaces TOM. Pour utiliser ce membre, définissez l’indicateur CFM_ANIMATION dans le membre dwMask .

bRevAuthor

Type : BYTE

Index qui identifie l’auteur qui effectue une révision. Le contrôle d’édition enrichi utilise des couleurs de texte différentes pour chaque index d’auteur différent. Pour utiliser ce membre, définissez l’indicateur CFM_REVAUTHOR dans le membre dwMask .

bUnderlineColor

Type : BYTE

Couleur de soulignement :

  • UnderlineColor_Black = 0x00 ;
  • UnderlineColor_Blue = 0x01 ;
  • UnderlineColor_Aqua = 0x02 ;
  • UnderlineColor_Lime = 0x03 ;
  • UnderlineColor_Fuchsia = 0x04 ;
  • UnderlineColor_Red = 0x05 ;
  • UnderlineColor_Yellow = 0x06 ;
  • UnderlineColor_White = 0x07 ;
  • UnderlineColor_Navy = 0x08 ;
  • UnderlineColor_Teal = 0x09 ;
  • UnderlineColor_Green = 0x0A ;
  • UnderlineColor_Purple = 0x0B ;
  • UnderlineColor_Maroon = 0x0C ;
  • UnderlineColor_Olive = 0x0D ;
  • UnderlineColor_DkGray = 0x0E ;
  • UnderlineColor_LtGray = 0x0F ;

Remarques

Pour désactiver un attribut de mise en forme, définissez la valeur appropriée dans dwMask , mais ne définissez pas la valeur correspondante dans dwEffects. Par exemple, pour désactiver l’italique, définissez CFM_ITALIC mais ne définissez pas CFE_ITALIC.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête richedit.h

Voir aussi

CHARFORMAT

COLORREF

EM_GETCHARFORMAT

EM_SETCHARFORMAT

EN_PROTECTED

GetSysColor

LOGFONT

RGB