Compartilhar via


estrutura CHARFORMAT2A (Rich Edit 2.0)

Contém informações sobre a formatação de caracteres em um controle de edição avançada. CHARFORMAT2 é uma extensão do Microsoft Rich Edit 2.0 da estrutura CHARFORMAT . O Microsoft Rich Edit 2.0 permite que você use qualquer estrutura com as mensagens EM_GETCHARFORMAT e EM_SETCHARFORMAT.

Sintaxe

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;

Membros

cbSize

Tipo: UINT

Especifica o tamanho, em bytes, da estrutura. Antes de passar essa estrutura para um controle de edição avançada, defina cbSize para o tamanho da estrutura ou CHARFORMAT2 charformat . Se cbSize for igual ao tamanho de uma estrutura CHARFORMAT , o controle usará apenas os membros CHARFORMAT .

dwMask

Tipo: DWORD

Especifica as partes da estrutura de CHARFORMAT2 que contêm informações válidas. O membro dwMask pode ser uma combinação dos valores de dois conjuntos de sinalizadores de bits. Um conjunto indica os membros da estrutura válidos. Outro conjunto indica os atributos válidos no membro dwEffects.

Defina os valores a seguir para indicar os atributos válidos do membro dwEffects.

Valor Significado
CFM_ALL
Uma combinação dos seguintes valores: CFM_EFFECTS | CFM_SIZE | CFM_FACE | CFM_OFFSET | CFM_CHARSET
CFM_ALL2
Uma combinação dos seguintes valores: 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
O valor CFE_ALLCAPS é válido.
CFM_EFFECTS
Uma combinação dos seguintes valores: CFM_EFFECTS2 | CFM_FONTBOUND | CFM_EXTENDED | CFM_MATHNOBUILDUP | CFM_MATH | CFM_MATHORDINARY
CFM_BOLD
O valor CFE_BOLD é válido.
CFM_COLOR
O valor CFE_AUTOCOLOR é válido ou o membro crTextColor é válido.
CFM_COOKIE
O valor dwCookie é válido.
CFM_DISABLED
O valor CFE_DISABLED é válido.
CFM_EXTENDED
O valor CFE_EXTENDED é válido.
CFM_EFFECTS
Uma combinação dos seguintes valores: CFM_BOLD | CFM_ITALIC | CFM_UNDERLINE | CFM_COLOR | CFM_STRIKEOUT | CFE_PROTECTED | CFM_LINK
CFM_EFFECTS2
Uma combinação dos seguintes valores: CFM_EFFECTS | CFM_DISABLED | CFM_SMALLCAPS | CFM_ALLCAPS | CFM_HIDDEN | CFM_OUTLINE | CFM_SHADOW | CFM_EMBOSS | CFM_IMPRINT | CFM_REVISED | CFM_SUBSCRIPT | CFM_SUPERSCRIPT | CFM_BACKCOLOR
CFM_EMBOSS
O valor CFE_EMBOSS é válido.
CFM_FONTBOUND
O valor CFE_FONTBOUND é válido.
CFM_HIDDEN
O valor CFE_HIDDEN é válido.
CFM_IMPRINT
O valor CFE_IMPRINT é válido.
CFM_ITALIC
O valor CFE_ITALIC é válido.
CFM_LINK
O valor CFE_LINK é válido.
CFM_LINKPROTECTED
O valor CFE_LINKPROTECTED é válido.
CFM_MATH
O valor CFE_MATH é válido.
CFM_MATHNOBUILDUP
O valor CFE_MATHNOBUILDUP é válido.
CFM_MATHORDINARY
O valor CFE_MATHORDINARY é válido.
CFM_OUTLINE
O valor CFE_OUTLINE é válido.
CFM_PROTECTED
O valor CFE_PROTECTED é válido.
CFM_REVISED
O valor CFE_REVISION é válido.
CFM_SHADOW
O valor CFE_SHADOW é válido.
CFM_SMALLCAPS
O valor CFE_SMALLCAPS é válido.
CFM_STRIKEOUT
O valor CFE_STRIKEOUT é válido.
CFM_SUBSCRIPT
Os valores de CFE_SUBSCRIPT e CFE_SUPERSCRIPT são válidos.
CFM_SUPERSCRIPT
Os valores de CFE_SUBSCRIPT e CFE_SUPERSCRIPT são válidos.
CFM_UNDERLINE
O valor CFE_UNDERLINE é válido.
 

Defina os valores a seguir para indicar os membros válidos da estrutura.

Valor Significado
CFM_ANIMATION
O membro bAnimation é válido.
CFM_BACKCOLOR
O membro crBackColor é válido.
CFM_CHARSET
O membro bCharSet é válido.
CFM_COLOR
O membro crTextColor é válido, a menos que o sinalizador de CFE_AUTOCOLOR seja definido no membro dwEffects.
CFM_FACE
O membro szFaceName do é válido.
CFM_KERNING
O membro wKerning do é válido.
CFM_LCID
O membro lcid é válido.
CFM_OFFSET
O membro yOffset é válido.
CFM_REVAUTHOR
O membro bRevAuthor é válido.
CFM_SIZE
O membro yHeight do é válido.
CFM_SPACING
O membro de espaçamento é válido.
CFM_STYLE
O membro sStyle do é válido.
CFM_UNDERLINETYPE
O membro bUnderlineType é válido.
CFM_WEIGHT
O membro wWeight é válido.

dwEffects

Tipo: DWORD

Um conjunto de sinalizadores de bits que especificam efeitos de caractere. Alguns dos sinalizadores são incluídos apenas para compatibilidade com interfaces TOM (Modelo de Objeto de Texto) da Microsoft ; o controle rich edit armazena o valor, mas não o usa para exibir texto.

Esse membro pode ser uma combinação dos valores a seguir.

Valor Significado
CFE_ALLCAPS
Os caracteres são letras maiúsculas. O valor não afeta a maneira como o controle exibe o texto. Esse valor se aplica apenas a versões anteriores ao Microsoft Rich Edit 3.0.
CFE_AUTOBACKCOLOR
A cor da tela de fundo é o valor retornado de GetSysColor(COLOR_WINDOW). Se esse sinalizador estiver definido, crBackColor membro será ignorado.
CFE_AUTOCOLOR
A cor do texto é o valor retornado de GetSysColor(COLOR_WINDOWTEXT). Se esse sinalizador estiver definido, o membro crTextColor será ignorado.
CFE_BOLD
Os caracteres são em negrito.
CFE_DISABLED
Os caracteres são exibidos com uma sombra que é deslocada por 3/4 pontos ou um pixel, o que for maior.
CFE_EMBOSS
Os caracteres são rebomados. O valor não afeta como o controle exibe o texto.
CFE_EXTENDED
Os caracteres são membros menos comuns de um script. Uma fonte compatível com um script deve verificar se ele tem glifos para esses caracteres.
CFE_FONTBOUND
A fonte é escolhida pelo controle de edição avançada porque a fonte ativa não dá suporte aos caracteres. Esse processo é chamado de associação de fonte.
CFE_HIDDEN
Para o Microsoft Rich Edit 3.0 e posterior, os caracteres não são exibidos.
CFE_IMPRINT
Os caracteres são exibidos como caracteres impressos. O valor não afeta como o controle exibe o texto.
CFE_ITALIC
Os caracteres são itálicos.
CFE_LINK
Um controle de edição avançada pode enviar códigos de notificação EN_LINK quando recebe mensagens do mouse enquanto o ponteiro do mouse está sobre o texto com o efeito CFE_LINK.
CFE_LINKPROTECTED
Os caracteres fazem parte de um link de nome amigável.
CFE_MATH
Os caracteres estão em uma zona matemática.
CFE_MATHNOBUILDUP
Os caracteres não participam de um acúmulo de matemática. Por exemplo, quando aplicado a um /, o /não será usado para criar uma fração.
CFE_MATHORDINARY
Os caracteres são exibidos como texto comum dentro de uma zona matemática.
CFE_OUTLINE
Os caracteres são exibidos como caracteres descritos. O valor não afeta como o controle exibe o texto.
CFE_PROTECTED
Os caracteres são protegidos; uma tentativa de modificá-las causará um código de notificação EN_PROTECTED.
CFE_REVISED
Os caracteres são marcados como revisados.
CFE_SHADOW
Os caracteres são exibidos como caracteres sombreados. O valor não afeta como o controle exibe o texto.
CFE_SMALLCAPS
Os caracteres estão em letras maiúsculas pequenas. O valor não afeta como o controle exibe o texto.
CFE_STRIKEOUT
Os caracteres são eliminados.
CFE_SUBSCRIPT
Os caracteres são subscritos. Os valores CFE_SUPERSCRIPT e CFE_SUBSCRIPT são mutuamente exclusivos. Para ambos os valores, o controle calcula automaticamente um deslocamento e um tamanho de fonte menor. Como alternativa, você pode usar os membros yHeight e yOffset para especificar explicitamente o tamanho da fonte e o deslocamento para caracteres subscritos e sobrescritos.
CFE_SUPERSCRIPT
Os caracteres são sobrescritos.
CFE_UNDERLINE
Os caracteres são sublinhados.

yHeight

Tipo: LONG

Especifica a altura do caractere, em twips (1/1440 de polegada ou 1/20 do ponto de uma impressora). Para usar esse membro, defina o sinalizador CFM_SIZE no membro dwMask .

yOffset

Tipo: LONG

Deslocamento de caractere da linha de base, em twips. Se o valor desse membro for positivo, o caractere será um sobrescrito; se o valor for negativo, o caractere será um subscrito. Para usar esse membro, defina o sinalizador CFM_OFFSET no membro dwMask.

crTextColor

Tipo: COLORREF

Cor do texto. Para usar esse membro, defina o sinalizador CFM_COLOR no membro dwMask . Esse membro será ignorado se o efeito de caractere CFE_AUTOCOLOR for especificado. Para gerar umCOLORREF, use a macro RGB.

bCharSet

Tipo: BYTE

Valor do conjunto de caracteres. Pode ser um dos valores especificados para o membro lfCharSet da estrutura LOGFONT. Para usar esse membro, defina o sinalizador CFM_CHARSET no membro dwMask.

bPitchAndFamily

Tipo: BYTE

Especifica a família de fontes e o pitch. Esse membro é o mesmo que o membro lfPitchAndFamily da estrutura LOGFONT.

szFaceName[LF_FACESIZE]

Tipo: TCHAR [LF_FACESIZE]

Uma matriz de caracteres terminada em nulo especificando o nome da fonte. Para usar esse membro, defina o sinalizador CFM_FACE no membro dwMask .

wWeight

Tipo: WORD

Peso da fonte. Esse membro é o mesmo que o membro lfWeight da estrutura LOGFONT. Para usar esse membro, defina o sinalizador CFM_WEIGHT no membro dwMask .

sSpacing

Tipo: SHORT

Espaço horizontal entre letras, em twips. Esse valor não tem efeito sobre o texto exibido por um controle de edição avançada; ele está incluído para compatibilidade com interfaces TOM do Windows. Para usar esse membro, defina o sinalizador CFM_SPACING no membro dwMask .

crBackColor

Tipo: COLORREF

Cor da tela de fundo. Para usar esse membro, defina o sinalizador CFM_BACKCOLOR no membro dwMask . Esse membro será ignorado se o efeito de caractere CFE_AUTOBACKCOLOR for especificado. Para gerar um, use a macro.

lcid

Tipo: LCID

Um identificador de localidade de 32 bits que contém um identificador de idioma na palavra inferior e um identificador de classificação e um valor reservado na palavra superior. Esse membro não tem efeito sobre o texto exibido por um controle de edição avançada, mas verificadores ortográficos e gramaticais podem usá-lo para lidar com problemas dependentes de linguagem. Você pode usar a macro para criar um valor de LCID . Para usar esse membro, defina o sinalizador CFM_LCID no membro dwMask .

dwReserved

Tipo: DWORD

Reservado; o valor deve ser zero.

Tipo: DWORD

Reservado; o valor deve ser zero.

dwCookie

Tipo: DWORD

Cookie do cliente. Esse membro é opaco para um controle de edição avançada.

sStyle

Tipo: SHORT

Identificador de estilo de caractere. Esse valor não tem efeito sobre o texto exibido por um controle de edição avançada; ele está incluído para compatibilidade com interfaces WindowsTOM. Para usar esse membro, defina o sinalizador CFM_STYLE no membro dwMask . Para obter mais informações, consulte a documentação do TOM.

wKerning

Tipo: WORD

Valor do tamanho da fonte, acima do qual o caractere (yHeight). Esse valor não tem efeito sobre o texto exibido por um controle de edição avançada; ele está incluído para compatibilidade com interfaces TOM. Para usar esse membro, defina o sinalizador CFM_KERNING no membro dwMask.

bUnderlineType

Tipo: BYTE

Especifica o tipo de sublinhado. Para usar esse membro, defina o sinalizador CFM_UNDERLINETYPE no membro dwMask. Esse membro pode ser um dos seguintes valores.

Valor Significado
CFU_CF1UNDERLINE
A estrutura mapeia sublinhado de bits doCHARFORMAT para CHARFORMAT2, (ou seja, executa um tipo CHARFORMAT neste texto).
CFU_INVERT
Para a composição do IME, falsija uma seleção.
CFU_UNDERLINE
Texto sublinhado com uma única linha sólida.
CFU_UNDERLINEDASH
Texto sublinhado com traços.
CFU_UNDERLINEDASHDOT
Texto sublinhado com uma linha tracejada e pontilhada.
CFU_UNDERLINEDASHDOTDOT
Texto sublinhado com uma linha pontilhada tracejada e dobrada.
CFU_UNDERLINEDOTTED
Texto sublinhado com uma linha pontilhada. Para versões anteriores ao Microsoft Rich Edit 3.0, o texto é exibido com um sublinhado sólido.
CFU_UNDERLINEDOUBLE
Texto sublinhado com uma linha dupla. O controle de edição avançada exibe o texto com um sublinhado sólido.
CFU_UNDERLINEDOUBLEWAVE
Exibir como CFU_UNDERLINEWAVE.
CFU_UNDERLINEHAIRLINE
Exibir como CFU_UNDERLINE.
CFU_UNDERLINEHEAVYWAVE
Exibir como CFU_UNDERLINEWAVE.
CFU_UNDERLINELONGDASH
Exibir como CFU_UNDERLINEDASH.
CFU_UNDERLINENONE
Sem sublinhado. Esse é o padrão.
CFU_UNDERLINETHICK
Exibir como CFU_UNDERLINE.
CFU_UNDERLINETHICKDASH
Exibir como CFU_UNDERLINEDASH.
CFU_UNDERLINETHICKDASHDOT
Exibir como CFU_UNDERLINEDASHDOT.
CFU_UNDERLINETHICKDASHDOTDOT
Exibir como CFU_UNDERLINEDASHDOT.
CFU_UNDERLINETHICKDOTTED
Exibir como CFU_UNDERLINEDOT.
CFU_UNDERLINETHICKLONGDASH
Exibir como CFU_UNDERLINEDASH.
CFU_UNDERLINEWAVE
RichEdit 4.1 e posterior: texto sublinhado com uma linha ondulada.
CFU_UNDERLINEWORD
RichEdit 4.1 e posterior: sublinhar somente palavras. O controle de edição avançada exibe o texto com um sublinhado sólido.

bAnimation

Tipo: BYTE

Tipo de animação de texto. Esse valor não tem efeito sobre o texto exibido por um controle de edição avançada; ele está incluído para compatibilidade com interfaces TOM. Para usar esse membro, defina o sinalizador CFM_ANIMATION no membro dwMask .

bRevAuthor

Tipo: BYTE

Um índice que identifica o autor fazendo uma revisão. O controle de edição avançada usa cores de texto diferentes para cada índice de autor diferente. Para usar esse membro, defina o sinalizador CFM_REVAUTHOR no membro dwMask.

bUnderlineColor

Tipo: BYTE

Cor do sublinhado:

  • 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;

Observações

Para desativar um atributo de formatação, defina o valor apropriado em dwMask, mas não defina o valor correspondente em dwEffects. Por exemplo, para desativar itálicos, defina CFM_ITALIC mas não defina CFE_ITALIC.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows Vista [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows Server 2003 [somente aplicativos da área de trabalho]
cabeçalho richedit.h

Consulte também

CHARFORMAT

COLORREF

EM_GETCHARFORMAT

EM_SETCHARFORMAT

EN_PROTECTED

GetSysColor

DO LOGFONT

RGB