Struct CodePoint
  
  Represents a Unicode value ([ U+0000..U+10FFFF ], inclusive).
Assembly: SixLabors.Fonts.dll
  Syntax
  
    public readonly struct CodePoint : IComparable, IComparable<CodePoint>, IEquatable<CodePoint>
   
  
  
  Constructors
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  CodePoint(Char)
  Initializes a new instance of the CodePoint struct.
Declaration
  
    public CodePoint(char value)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Char | value | The char representing the UTF-16 code unit | 
    
  
  Exceptions
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  CodePoint(Char, Char)
  Initializes a new instance of the CodePoint struct.
Declaration
  
    public CodePoint(char highSurrogate, char lowSurrogate)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Char | highSurrogate | A char representing a UTF-16 high surrogate code unit. | 
      
        | Char | lowSurrogate | A char representing a UTF-16 low surrogate code unit. | 
    
  
  Exceptions
  
    
      
        | Type | Condition | 
    
    
      
        | ArgumentOutOfRangeException | If highSurrogatedoes not represent a UTF-16 high surrogate code unit
orlowSurrogatedoes not represent a UTF-16 low surrogate code unit. | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  CodePoint(Int32)
  Initializes a new instance of the CodePoint struct.
Declaration
  
    public CodePoint(int value)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | value | The value to create the codepoint. | 
    
  
  Exceptions
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  CodePoint(UInt32)
  Initializes a new instance of the CodePoint struct.
Declaration
  
    public CodePoint(uint value)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | UInt32 | value | The value to create the codepoint. | 
    
  
  Exceptions
  
  Properties
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsAscii
  Gets a value indicating whether this value is ASCII ([ U+0000..U+007F ])
and therefore representable by a single UTF-8 code unit.
Declaration
  
    public readonly bool IsAscii { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsBmp
  Gets a value indicating whether this value is within the BMP ([ U+0000..U+FFFF ])
and therefore representable by a single UTF-16 code unit.
Declaration
  
    public readonly bool IsBmp { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Plane
  Gets the Unicode plane (0 to 16, inclusive) which contains this scalar.
Declaration
  
    public readonly int Plane { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  ReplacementChar
  Gets a CodePoint instance that represents the Unicode replacement character U+FFFD.
Declaration
  
    public static readonly CodePoint ReplacementChar { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Utf16SequenceLength
  Gets the length in code units (Char) of the
UTF-16 sequence required to represent this scalar value.
Declaration
  
    public readonly int Utf16SequenceLength { get; }
   
  Property Value
  
  
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Utf8SequenceLength
  Gets the length in code units of the
UTF-8 sequence required to represent this scalar value.
Declaration
  
    public readonly int Utf8SequenceLength { get; }
   
  Property Value
  
  
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Value
  Gets the Unicode value as an integer.
Declaration
  
    public readonly int Value { get; }
   
  Property Value
  
  Methods
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  CompareTo(CodePoint)
  
  
  Declaration
  
    public readonly int CompareTo(CodePoint other)
   
  Parameters
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Equals(CodePoint)
  
  
  Declaration
  
    public readonly bool Equals(CodePoint other)
   
  Parameters
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Equals(Object)
  
  
  Declaration
  
    public override readonly bool Equals(object obj)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Object | obj |  | 
    
  
  Returns
  
  Overrides
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  GetBidiClass(CodePoint)
  
  
  Declaration
  
    public static BidiClass GetBidiClass(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  GetCodePointCount(ReadOnlySpan<Char>)
  Returns the number of codepoints in a given string buffer.
Declaration
  
    public static int GetCodePointCount(ReadOnlySpan<char> source)
   
  Parameters
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  GetGeneralCategory(CodePoint)
  
  
  Declaration
  
    public static UnicodeCategory GetGeneralCategory(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  GetGraphemeClusterClass(CodePoint)
  
  
  Declaration
  
    public static GraphemeClusterClass GetGraphemeClusterClass(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  GetHashCode()
  
  
  Declaration
  
    public override readonly int GetHashCode()
   
  Returns
  
  Overrides
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  GetLineBreakClass(CodePoint)
  
  
  Declaration
  
    public static LineBreakClass GetLineBreakClass(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsControl(CodePoint)
  Gets a value indicating whether the given codepoint is a control character.
Declaration
  
    public static bool IsControl(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a control character; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsDigit(CodePoint)
  Returns a value that indicates whether the specified codepoint is categorized as a decimal digit.
Declaration
  
    public static bool IsDigit(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a decimal digit; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsLetter(CodePoint)
  Returns a value that indicates whether the specified codepoint is categorized as a letter.
Declaration
  
    public static bool IsLetter(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a letter; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsLetterOrDigit(CodePoint)
  Returns a value that indicates whether the specified codepoint is categorized as a letter or decimal digit.
Declaration
  
    public static bool IsLetterOrDigit(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a letter or decimal digit; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsLower(CodePoint)
  Returns a value that indicates whether the specified codepoint is categorized as a lowercase letter.
Declaration
  
    public static bool IsLower(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a lowercase letter; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsMark(CodePoint)
  Returns a value that indicates whether the specified codepoint is categorized as a mark.
Declaration
  
    public static bool IsMark(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a symbol; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsNewLine(CodePoint)
  Gets a value indicating whether the given codepoint is a new line indicator.
Declaration
  
    public static bool IsNewLine(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a new line indicator; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsNonBreakingSpace(CodePoint)
  Gets a value indicating whether the given codepoint is a non-breaking space.
Declaration
  
    public static bool IsNonBreakingSpace(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a non-breaking space character; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsNumber(CodePoint)
  Returns a value that indicates whether the specified codepoint is categorized as a number.
Declaration
  
    public static bool IsNumber(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a number; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsPunctuation(CodePoint)
  Returns a value that indicates whether the specified codepoint is categorized as punctuation.
Declaration
  
    public static bool IsPunctuation(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis punctuation; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsSeparator(CodePoint)
  Returns a value that indicates whether the specified codepoint is categorized as a separator.
Declaration
  
    public static bool IsSeparator(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a separator; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsSymbol(CodePoint)
  Returns a value that indicates whether the specified codepoint is categorized as a symbol.
Declaration
  
    public static bool IsSymbol(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a symbol; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsTabulation(CodePoint)
  Gets a value indicating whether the given codepoint is a tabulation indicator.
Declaration
  
    public static bool IsTabulation(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a tabulation indicator; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsUpper(CodePoint)
  Returns a value that indicates whether the specified codepoint is categorized as an uppercase letter.
Declaration
  
    public static bool IsUpper(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a uppercase letter; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsValid(Int32)
  Returns true if value is a valid Unicode code
point, i.e., is in [ U+0000..U+10FFFF ], inclusive.
Declaration
  
    public static bool IsValid(int value)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | value | The value to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if valuerepresents a valid codepoint; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsValid(UInt32)
  Returns true if value is a valid Unicode code
point, i.e., is in [ U+0000..U+10FFFF ], inclusive.
Declaration
  
    public static bool IsValid(uint value)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | UInt32 | value | The value to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if valuerepresents a valid codepoint; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsVariationSelector(CodePoint)
  
  
  Declaration
  
    public static bool IsVariationSelector(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a variation selector character; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsWhiteSpace(CodePoint)
  Gets a value indicating whether the given codepoint is white space.
Declaration
  
    public static bool IsWhiteSpace(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a whitespace character; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsZeroWidthJoiner(CodePoint)
  Gets a value indicating whether the given codepoint is a zero-width-joiner.
Declaration
  
    public static bool IsZeroWidthJoiner(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a zero-width-joiner character; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsZeroWidthNonJoiner(CodePoint)
  Gets a value indicating whether the given codepoint is a zero-width-non-joiner.
Declaration
  
    public static bool IsZeroWidthNonJoiner(CodePoint codePoint)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The codepoint to evaluate. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if codePointis a zero-width-non-joiner character; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  ToString()
  
  
  Declaration
  
    public override readonly string ToString()
   
  Returns
  
  Overrides
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  TryGetBidiMirror(CodePoint, out CodePoint)
  
  
  Declaration
  
    public static bool TryGetBidiMirror(CodePoint codePoint, out CodePoint mirror)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The code point to be mapped. | 
      
        | CodePoint | mirror | When this method returns, contains the codepoint representing the bidi mirror for this instance;
otherwise, the default value for the type of the codePointparameter.
This parameter is passed uninitialized.
. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if this instance has a mirror; otherwise, false | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  TryGetVerticalMirror(CodePoint, out CodePoint)
  
  
  Declaration
  
    public static bool TryGetVerticalMirror(CodePoint codePoint, out CodePoint mirror)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | CodePoint | codePoint | The code point to be mapped. | 
      
        | CodePoint | mirror | When this method returns, contains the codepoint representing the vertical mirror for this instance;
otherwise, the default value for the type of the codePointparameter.
This parameter is passed uninitialized.
. | 
    
  
  Returns
  
    
      
        | Type | Description | 
    
    
      
        | Boolean | true if this instance has a mirror; otherwise, false | 
    
  
  Operators
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Equality(CodePoint, CodePoint)
  
  
  Declaration
  
    public static bool operator ==(CodePoint left, CodePoint right)
   
  Parameters
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Explicit(Char to CodePoint)
  
  
  Declaration
  
    public static explicit operator CodePoint(char ch)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Char | ch |  | 
    
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Explicit(Int32 to CodePoint)
  
  
  Declaration
  
    public static explicit operator CodePoint(int value)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Int32 | value |  | 
    
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Explicit(UInt32 to CodePoint)
  
  
  Declaration
  
    public static explicit operator CodePoint(uint value)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | UInt32 | value |  | 
    
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  GreaterThan(CodePoint, CodePoint)
  
  
  Declaration
  
    public static bool operator>(CodePoint left, CodePoint right)
   
  Parameters
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  GreaterThanOrEqual(CodePoint, CodePoint)
  
  
  Declaration
  
    public static bool operator >=(CodePoint left, CodePoint right)
   
  Parameters
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Inequality(CodePoint, CodePoint)
  
  
  Declaration
  
    public static bool operator !=(CodePoint left, CodePoint right)
   
  Parameters
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  LessThan(CodePoint, CodePoint)
  
  
  Declaration
  
    public static bool operator <(CodePoint left, CodePoint right)
   
  Parameters
  
  Returns
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  LessThanOrEqual(CodePoint, CodePoint)
  
  
  Declaration
  
    public static bool operator <=(CodePoint left, CodePoint right)
   
  Parameters
  
  Returns
  
  Explicit Interface Implementations
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IComparable.CompareTo(Object)
  
  
  Declaration
  
    readonly int IComparable.CompareTo(object obj)
   
  Parameters
  
    
      
        | Type | Name | Description | 
    
    
      
        | Object | obj |  | 
    
  
  Returns
  
  Implements