tc-lib-unicode

tc-lib-unicode API reference

Com\Tecnick\Unicode

Classes:

  • Bidi: Unicode Bidirectional Algorithm (UAX #9): reorders each paragraph of the input from logical to visual order and applies the Arabic shaping.
  • Convert: Malformed input policy: a string or char array that is not valid UTF-8 raises an exception, while a code point that cannot be encoded (negative, surrogate or greater than U+10FFFF) is replaced with ‘?
  • Exception: Custom Exception class
  • Substitution: Context-sensitive Unicode character substitution.

Enums:

Com\Tecnick\Unicode\Bidi

Classes:

  • Shaping: Arabic shaping: replaces the characters of an isolating run sequence with their positional presentation forms and ligatures.
  • StepBase: Base class of the steps that process one isolating run sequence.
  • StepI: I steps of the Bidirectional Algorithm: resolving implicit levels (I1 and I2).
  • StepL: L steps of the Bidirectional Algorithm: reordering the resolved levels (L1, L2 and L4).
  • StepN: N steps of the Bidirectional Algorithm: resolving neutral and isolate formatting types (N0 to N2).
  • StepP: P steps of the Bidirectional Algorithm: paragraph embedding level (P2 and P3).
  • StepW: W steps of the Bidirectional Algorithm: resolving weak types (W1 to W7).
  • StepX: X steps of the Bidirectional Algorithm: explicit levels and directions (X1 to X9).
  • StepXten: Rule X10 of the Bidirectional Algorithm: isolating run sequences and their start-of-sequence and end-of-sequence types.

Com\Tecnick\Unicode\Bidi\Shaping

Classes:

  • Arabic: Joining context of the Arabic shaping: the form of a character is decided by the Joining_Type of the nearest non-transparent characters around it, as defined by ArabicShaping.txt and section 9.2 of th

Com\Tecnick\Unicode\Convert

Classes:

  • Encoding: Conversions between UTF-8, Latin1, UTF-16BE and hexadecimal byte strings.

Com\Tecnick\Unicode\Data

Classes:

  • Devanagari: Devanagari codepoint tables for character substitution and cluster reordering.
  • Hangul: Algorithmic constants for the composition of Hangul Jamo into precomposed Hangul syllables, as defined in section 3.12 of the Unicode standard.
  • ScriptRanges: Unicode codepoint ranges used to detect which scripts are present in a codepoint array.
  • Thai: Thai codepoint tables for character substitution and reordering.

Com\Tecnick\Unicode\Substitution

Classes:

  • Devanagari: Repositions Devanagari left-positional matras (vowel signs with Indic Positional Category “Left”, such as U+093F VOWEL SIGN I) to precede their base consonant cluster: in Unicode logical order they ar
  • Hangul: Composes Hangul Jamo sequences into precomposed syllables, as defined by section 3.12 “Conjoining Jamo Behavior” of the Unicode standard.
  • Thai: Thai codepoints are returned unchanged.