diff --git a/OTFbuild/sheet_config.py b/OTFbuild/sheet_config.py index de72741..54e3095 100644 --- a/OTFbuild/sheet_config.py +++ b/OTFbuild/sheet_config.py @@ -78,6 +78,7 @@ SHEET_CYRILIC_EXTC_VARW = 44 SHEET_LATIN_EXTE_VARW = 45 SHEET_LATIN_EXTF_VARW = 46 SHEET_LATIN_EXTG_VARW = 47 +SHEET_OGHAM_VARW = 48 SHEET_UNKNOWN = 254 @@ -130,6 +131,7 @@ FILE_LIST = [ "latinExtE_variable.tga", "latinExtF_variable.tga", "latinExtG_variable.tga", + "ogham_variable.tga", ] CODE_RANGE = [ @@ -181,6 +183,7 @@ CODE_RANGE = [ list(range(0xAB30, 0xAB70)), # 45: Latin Ext E list(range(0x10780, 0x107C0)), # 46: Latin Ext F list(range(0x1DF00, 0x1E000)), # 47: Latin Ext G + list(range(0x1680, 0x16A0)), # 48: Ogham ] CODE_RANGE_HANGUL_COMPAT = range(0x3130, 0x3190) @@ -563,5 +566,6 @@ def index_y(sheet_index, c): SHEET_LATIN_EXTE_VARW: lambda: (c - 0xAB30) // 16, SHEET_LATIN_EXTF_VARW: lambda: (c - 0x10780) // 16, SHEET_LATIN_EXTG_VARW: lambda: (c - 0x1DF00) // 16, + SHEET_OGHAM_VARW: lambda: (c - 0x1680) // 16, SHEET_HANGUL: lambda: 0, }.get(sheet_index, lambda: c // 16)() diff --git a/demo.PNG b/demo.PNG index 73fe7b4..9045c8d 100644 Binary files a/demo.PNG and b/demo.PNG differ diff --git a/demotext_unaligned.txt b/demotext_unaligned.txt index df9611f..5d8ba7d 100755 --- a/demotext_unaligned.txt +++ b/demotext_unaligned.txt @@ -147,9 +147,10 @@ How multilingual? Real multilingual! ⁃ Katakana Phonetic Extensions ⁃ Kana Supplement ⁃ Kana Extended-A -⁃ Number Forms ⁃ Small Kana Extension ⁃ Letterlike Symbols +⁃ Number Forms +⁃ Ogham ⁃ Phonetic Extensions ⁃ Phonetic Extensions Supplement ⁃ Runic diff --git a/src/assets/ogham_variable.tga b/src/assets/ogham_variable.tga new file mode 100644 index 0000000..9b79bd8 --- /dev/null +++ b/src/assets/ogham_variable.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56c2d48a1fcf8871c6043003c8b58c94fce3989abd45016cad0b7c34cc7b7a3d +size 40978 diff --git a/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt b/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt index 1f73161..54b98cb 100755 --- a/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt +++ b/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt @@ -881,6 +881,7 @@ class TerrarumSansBitmap( SHEET_LATIN_EXTE_VARW -> latinExtEIndexY(ch) SHEET_LATIN_EXTF_VARW -> latinExtFIndexY(ch) SHEET_LATIN_EXTG_VARW -> latinExtGIndexY(ch) + SHEET_OGHAM_VARW -> oghamIndexY(ch) else -> ch / 16 } @@ -2612,6 +2613,7 @@ class TerrarumSansBitmap( internal const val SHEET_LATIN_EXTE_VARW = 45 internal const val SHEET_LATIN_EXTF_VARW = 46 internal const val SHEET_LATIN_EXTG_VARW = 47 + internal const val SHEET_OGHAM_VARW = 48 internal const val SHEET_UNKNOWN = 254 @@ -2682,6 +2684,7 @@ class TerrarumSansBitmap( "latinExtE_variable.tga", "latinExtF_variable.tga", "latinExtG_variable.tga", + "ogham_variable.tga", ) internal val codeRange = arrayOf( // MUST BE MATCHING WITH SHEET INDICES!! 0..0xFF, // SHEET_ASCII_VARW @@ -2732,6 +2735,7 @@ class TerrarumSansBitmap( 0xAB30..0xAB6F, // SHEET_LATIN_EXTE_VARW 0x10780..0x107BF, // SHEET_LATIN_EXTF_VARW 0x1DF00..0x1DFFF, // SHEET_LATIN_EXTG_VARW + 0x1680..0x169F, // SHEET_OGHAM_VARW ) private val codeRangeHangulCompat = 0x3130..0x318F @@ -3090,6 +3094,7 @@ class TerrarumSansBitmap( private fun latinExtEIndexY(c: CodePoint) = (c - 0xAB30) / 16 private fun latinExtFIndexY(c: CodePoint) = (c - 0x10780) / 16 private fun latinExtGIndexY(c: CodePoint) = (c - 0x1DF00) / 16 + private fun oghamIndexY(c: CodePoint) = (c - 0x1680) / 16 val charsetOverrideDefault = Character.toChars(CHARSET_OVERRIDE_DEFAULT).toSurrogatedString() val charsetOverrideBulgarian = Character.toChars(CHARSET_OVERRIDE_BG_BG).toSurrogatedString() diff --git a/work_files/ogham_variable.kra b/work_files/ogham_variable.kra new file mode 100644 index 0000000..c89471a --- /dev/null +++ b/work_files/ogham_variable.kra @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:281ede8ea2b255ee6989d635eb8a57be14804edbebeb2c0261a54cb5dbc496ef +size 43999