diff --git a/OTFbuild/sheet_config.py b/OTFbuild/sheet_config.py index 8bc648e..ba8a5bc 100644 --- a/OTFbuild/sheet_config.py +++ b/OTFbuild/sheet_config.py @@ -71,6 +71,7 @@ SHEET_CODESTYLE_ASCII_VARW = 37 SHEET_ALPHABETIC_PRESENTATION_FORMS = 38 SHEET_HENTAIGANA_VARW = 39 SHEET_CONTROL_PICTURES_VARW = 40 +SHEET_LEGACY_COMPUTING_VARW = 41 SHEET_UNKNOWN = 254 @@ -116,6 +117,7 @@ FILE_LIST = [ "alphabetic_presentation_forms_extrawide_variable.tga", "hentaigana_variable.tga", "control_pictures_variable.tga", + "symbols_for_legacy_computing_variable.tga", ] CODE_RANGE = [ @@ -160,6 +162,7 @@ CODE_RANGE = [ list(range(0xFB00, 0xFB18)), # 38: Alphabetic Presentation list(range(0x1B000, 0x1B170)), # 39: Hentaigana list(range(0x2400, 0x2440)), # 40: Control Pictures + list(range(0x1FB00, 0x1FC00)), # 41: Legacy Computing ] CODE_RANGE_HANGUL_COMPAT = range(0x3130, 0x3190) @@ -535,5 +538,6 @@ def index_y(sheet_index, c): SHEET_ALPHABETIC_PRESENTATION_FORMS: lambda: (c - 0xFB00) // 16, SHEET_HENTAIGANA_VARW: lambda: (c - 0x1B000) // 16, SHEET_CONTROL_PICTURES_VARW: lambda: (c - 0x2400) // 16, + SHEET_LEGACY_COMPUTING_VARW: lambda: (c - 0x1FB00) // 16, SHEET_HANGUL: lambda: 0, }.get(sheet_index, lambda: c // 16)() diff --git a/demo.PNG b/demo.PNG index 2c7cf8f..a36a1cc 100644 Binary files a/demo.PNG and b/demo.PNG differ diff --git a/demotext_unaligned.txt b/demotext_unaligned.txt index 7dfc499..6578717 100755 --- a/demotext_unaligned.txt +++ b/demotext_unaligned.txt @@ -112,12 +112,13 @@ How multilingual? Real multilingual! ⁃ Latin Extended-A/B/C/D ⁃ Armenian ⁃ Bengali􏿆ᶠⁱ􀀀 -⁃ Braile Patterns +⁃ Braille Patterns ⁃ Cherokee􏿆⁷􀀀 ⁃ CJK Symbols and Punctuation ⁃ CJK Unified Ideographs􏿆⁶􀀀 ⁃ CJK Unified Ideographs Extension A􏿆¹²·¹􀀀 ⁃ Combining Diacritical Marks +⁃ Control Pictures ⁃ Currency Symbols ⁃ Cyrillic􏿆ᴭ􀀀 ⁃ Cyrillic Supplement􏿆ᴭ􀀀 @@ -148,6 +149,7 @@ How multilingual? Real multilingual! ⁃ Sundanese ⁃ Sundanese Supplement ⁃ Superscripts and Subscripts +⁃ Symbols for Legacy Computing ⁃ Tamil ⁃ Thai diff --git a/src/assets/symbols_for_legacy_computing_variable.tga b/src/assets/symbols_for_legacy_computing_variable.tga new file mode 100644 index 0000000..56a6011 --- /dev/null +++ b/src/assets/symbols_for_legacy_computing_variable.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7e55d962f9c119d569a0476ef842cd0570c42e06b015ff4f0b86a6940250aac +size 327698 diff --git a/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt b/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt index 101feae..d392cf0 100755 --- a/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt +++ b/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt @@ -887,6 +887,7 @@ class TerrarumSansBitmap( SHEET_ALPHABETIC_PRESENTATION_FORMS -> alphabeticPresentationFormsY(ch) SHEET_HENTAIGANA_VARW -> hentaiganaIndexY(ch) SHEET_CONTROL_PICTURES_VARW -> controlPicturesIndexY(ch) + SHEET_LEGACY_COMPUTING_VARW -> legacyComputingIndexY(ch) else -> ch / 16 } @@ -2602,6 +2603,7 @@ class TerrarumSansBitmap( internal const val SHEET_ALPHABETIC_PRESENTATION_FORMS = 38 internal const val SHEET_HENTAIGANA_VARW = 39 internal const val SHEET_CONTROL_PICTURES_VARW = 40 + internal const val SHEET_LEGACY_COMPUTING_VARW = 41 internal const val SHEET_UNKNOWN = 254 @@ -2669,6 +2671,7 @@ class TerrarumSansBitmap( "alphabetic_presentation_forms_extrawide_variable.tga", "hentaigana_variable.tga", "control_pictures_variable.tga", + "symbols_for_legacy_computing_variable.tga", ) internal val codeRange = arrayOf( // MUST BE MATCHING WITH SHEET INDICES!! 0..0xFF, // SHEET_ASCII_VARW @@ -2712,6 +2715,7 @@ class TerrarumSansBitmap( 0xFB00..0xFB17, // SHEET_ALPHABETIC_PRESENTATION_FORMS 0x1B000..0x1B16F, // SHEET_HENTAIGANA_VARW 0x2400..0x243F, // SHEET_CONTROL_PICTURES_VARW + 0x1FB00..0x1FBFF, // SHEET_LEGACY_COMPUTING_VARW ) private val codeRangeHangulCompat = 0x3130..0x318F @@ -3061,6 +3065,7 @@ class TerrarumSansBitmap( private fun alphabeticPresentationFormsY(c: CodePoint) = (c - 0xFB00) / 16 private fun hentaiganaIndexY(c: CodePoint) = (c - 0x1B000) / 16 private fun controlPicturesIndexY(c: CodePoint) = (c - 0x2400) / 16 + private fun legacyComputingIndexY(c: CodePoint) = (c - 0x1FB00) / 16 val charsetOverrideDefault = Character.toChars(CHARSET_OVERRIDE_DEFAULT).toSurrogatedString() val charsetOverrideBulgarian = Character.toChars(CHARSET_OVERRIDE_BG_BG).toSurrogatedString() diff --git a/work_files/symbols_for_legacy_computing_variable.psd b/work_files/symbols_for_legacy_computing_variable.psd index d4cf90d..1c0ea0b 100644 --- a/work_files/symbols_for_legacy_computing_variable.psd +++ b/work_files/symbols_for_legacy_computing_variable.psd @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c46e2958d1d6c699b3d42b474d77a46fe330fdf925f9a7d07f7b635ec665fd90 -size 360681 +oid sha256:5365c121fa0e6641c9f032e9c96e75e78797df30582708523438338af5efc5ef +size 375472