v2.2
Additions
BidiClass:
- Enum Values: UAX #44: Bidirectional Class Values
- Unit Testing: Literal Numbers
GeneralCategory:
- Enum Values: UAX #44: General Category Values
- Unit Testing: Literal Numbers
Script:
- Enum Values: UAX #24: PropertyValueAliases.txt
- OpenType Tag:
static int getOpenTypeTag(int script) - Unit Testing: Literal Numbers
CodePoint:
- Bidi Class Property:
static int getBidiClass(int codePoint) - General Category Property:
static int getGeneralCategory(int codePoint) - Script Property:
static int getScript(int codePoint) - Mirroring Property:
static int getMirror(int codePoint)
BidiAlgorithm:
- Bidi Classes:
IntList getCharBidiClasses()
ScriptClassifier:
- Unicode Standard: UAX #24
- Resolved Scripts:
IntList getCharScripts() - Resolved Runs:
Iterable<ScriptRun> getScriptRuns(int charStart, int charEnd)
GlyphRun:
- Cluster Splitting:
int getStartExtraLength(),int getEndExtraLength()
Added support for cluster splitting in multiple spans
Wrote an abstract class for testing IntList implementations
Used a dedicated Android.mk file for instrumentation tests
Updates
- Integrated script analysis process of UAX #24 in typesetting
- Made right-to-left glyph drawing with decreasing pen x value in
Renderer - Reduced synthetic methods generation with package access
- Enabled JNI symbols stripping in release mode
- Reduced property methods calling in
Renderer - Used direct field accesses in
GlyphRun - Shortened names of native methods with
nprefix - Refactored names of internal primitive collections
- Updated FreeType to version 2.9.1
- Updated SheenBidi to version 2.1
- Updated SheenFigure to version 1.4
Fixes
- Fixed invalid leading and trailing index issues in
GlyphRun - Fixed accidental deallocation of data in primitive raw list implementations
- Fixed character measurement of backward segments in typesetting
- Fixed cluster map copying issue in
GlyphRun - Fixed redundant type casting warnings in demo project