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 highSurrogate does not represent a UTF-16 high surrogate code unit
or lowSurrogate does 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 value represents 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 value represents 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint is 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 codePoint parameter.
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 codePoint parameter.
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