NORM_FORM enumeration (winnls.h)

Specifies the supported normalization forms.

Syntax

typedef enum _NORM_FORM {
  NormalizationOther = 0,
  NormalizationC = 0x1,
  NormalizationD = 0x2,
  NormalizationKC = 0x5,
  NormalizationKD = 0x6
} NORM_FORM;

Constants

 
NormalizationOther
Value: 0
Not supported.
NormalizationC
Value: 0x1
Unicode normalization form C, canonical composition. Transforms each decomposed grouping, consisting of a base character plus combining characters, to the canonical precomposed equivalent. For example, A + ¨ becomes Ä.
NormalizationD
Value: 0x2
Unicode normalization form D, canonical decomposition. Transforms each precomposed character to its canonical decomposed equivalent. For example, Ä becomes A + ¨.
NormalizationKC
Value: 0x5
Unicode normalization form KC, compatibility composition. Transforms each base plus combining characters to the canonical precomposed equivalent and all compatibility characters to their equivalents. For example, the ligature fi becomes f + i; similarly, A + ¨ + fi + n becomes Ä + f + i + n.
NormalizationKD
Value: 0x6
Unicode normalization form KD, compatibility decomposition. Transforms each precomposed character to its canonical decomposed equivalent and all compatibility characters to their equivalents. For example, Ä + fi + n becomes A + ¨ + f + i + n.

Remarks

For more information about the normalization forms, see Using Unicode Normalization to Represent Strings.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 [desktop apps | UWP apps]
Header winnls.h (include Windows.h)
Redistributable Microsoft Internationalized Domain Name (IDN) Mitigation APIs onWindows XP

See also

IsNormalizedString

National Language Support Enumeration Types

NormalizeString

Using Unicode Normalization to Represent Strings