Cyrillic Ext-C

This commit is contained in:
minjaesong
2026-03-07 21:34:40 +09:00
parent 4121648dfc
commit f26998b641
8 changed files with 18 additions and 5 deletions

View File

@@ -74,6 +74,7 @@ SHEET_CONTROL_PICTURES_VARW = 40
SHEET_LEGACY_COMPUTING_VARW = 41 SHEET_LEGACY_COMPUTING_VARW = 41
SHEET_CYRILIC_EXTB_VARW = 42 SHEET_CYRILIC_EXTB_VARW = 42
SHEET_CYRILIC_EXTA_VARW = 43 SHEET_CYRILIC_EXTA_VARW = 43
SHEET_CYRILIC_EXTC_VARW = 44
SHEET_UNKNOWN = 254 SHEET_UNKNOWN = 254
@@ -122,6 +123,7 @@ FILE_LIST = [
"symbols_for_legacy_computing_variable.tga", "symbols_for_legacy_computing_variable.tga",
"cyrilic_extB_variable.tga", "cyrilic_extB_variable.tga",
"cyrilic_extA_variable.tga", "cyrilic_extA_variable.tga",
"cyrilic_extC_variable.tga",
] ]
CODE_RANGE = [ CODE_RANGE = [
@@ -169,6 +171,7 @@ CODE_RANGE = [
list(range(0x1FB00, 0x1FC00)), # 41: Legacy Computing list(range(0x1FB00, 0x1FC00)), # 41: Legacy Computing
list(range(0xA640, 0xA6A0)), # 42: Cyrillic Ext B list(range(0xA640, 0xA6A0)), # 42: Cyrillic Ext B
list(range(0x2DE0, 0x2E00)), # 43: Cyrillic Ext A list(range(0x2DE0, 0x2E00)), # 43: Cyrillic Ext A
list(range(0x1C80, 0x1C8F)), # 43: Cyrillic Ext C
] ]
CODE_RANGE_HANGUL_COMPAT = range(0x3130, 0x3190) CODE_RANGE_HANGUL_COMPAT = range(0x3130, 0x3190)
@@ -547,5 +550,6 @@ def index_y(sheet_index, c):
SHEET_LEGACY_COMPUTING_VARW: lambda: (c - 0x1FB00) // 16, SHEET_LEGACY_COMPUTING_VARW: lambda: (c - 0x1FB00) // 16,
SHEET_CYRILIC_EXTB_VARW: lambda: (c - 0xA640) // 16, SHEET_CYRILIC_EXTB_VARW: lambda: (c - 0xA640) // 16,
SHEET_CYRILIC_EXTA_VARW: lambda: (c - 0x2DE0) // 16, SHEET_CYRILIC_EXTA_VARW: lambda: (c - 0x2DE0) // 16,
SHEET_CYRILIC_EXTC_VARW: lambda: (c - 0x1C80) // 16,
SHEET_HANGUL: lambda: 0, SHEET_HANGUL: lambda: 0,
}.get(sheet_index, lambda: c // 16)() }.get(sheet_index, lambda: c // 16)()

BIN
demo.PNG

Binary file not shown.

Before

Width:  |  Height:  |  Size: 177 KiB

After

Width:  |  Height:  |  Size: 176 KiB

View File

@@ -127,8 +127,7 @@ How multilingual? Real multilingual!
Currency Symbols Currency Symbols
Cyrillic Cyrillic
Cyrillic Supplement Cyrillic Supplement
Cyrillic Extended-A Cyrillic Extended-A/B/C
Cyrillic Extended-B
Devanagari Devanagari
Enclosed Alphanumeric Supplement Enclosed Alphanumeric Supplement
General Punctuations General Punctuations

Binary file not shown.

Binary file not shown.

View File

@@ -890,6 +890,7 @@ class TerrarumSansBitmap(
SHEET_LEGACY_COMPUTING_VARW -> legacyComputingIndexY(ch) SHEET_LEGACY_COMPUTING_VARW -> legacyComputingIndexY(ch)
SHEET_CYRILIC_EXTB_VARW -> cyrilicExtBIndexY(ch) SHEET_CYRILIC_EXTB_VARW -> cyrilicExtBIndexY(ch)
SHEET_CYRILIC_EXTA_VARW -> cyrilicExtAIndexY(ch) SHEET_CYRILIC_EXTA_VARW -> cyrilicExtAIndexY(ch)
SHEET_CYRILIC_EXTC_VARW -> cyrilicExtCIndexY(ch)
else -> ch / 16 else -> ch / 16
} }
@@ -2615,6 +2616,7 @@ class TerrarumSansBitmap(
internal const val SHEET_LEGACY_COMPUTING_VARW = 41 internal const val SHEET_LEGACY_COMPUTING_VARW = 41
internal const val SHEET_CYRILIC_EXTB_VARW = 42 internal const val SHEET_CYRILIC_EXTB_VARW = 42
internal const val SHEET_CYRILIC_EXTA_VARW = 43 internal const val SHEET_CYRILIC_EXTA_VARW = 43
internal const val SHEET_CYRILIC_EXTC_VARW = 44
internal const val SHEET_UNKNOWN = 254 internal const val SHEET_UNKNOWN = 254
@@ -2727,6 +2729,7 @@ class TerrarumSansBitmap(
0x1FB00..0x1FBFF, // SHEET_LEGACY_COMPUTING_VARW 0x1FB00..0x1FBFF, // SHEET_LEGACY_COMPUTING_VARW
0xA640..0xA69F, // SHEET_CYRILIC_EXTB_VARW 0xA640..0xA69F, // SHEET_CYRILIC_EXTB_VARW
0x2DE0..0x2DFF, // SHEET_CYRILIC_EXTA_VARW 0x2DE0..0x2DFF, // SHEET_CYRILIC_EXTA_VARW
0x1C80..0x1C8F, // SHEET_CYRILIC_EXTC_VARW
) )
private val codeRangeHangulCompat = 0x3130..0x318F private val codeRangeHangulCompat = 0x3130..0x318F
@@ -3079,6 +3082,7 @@ class TerrarumSansBitmap(
private fun legacyComputingIndexY(c: CodePoint) = (c - 0x1FB00) / 16 private fun legacyComputingIndexY(c: CodePoint) = (c - 0x1FB00) / 16
private fun cyrilicExtBIndexY(c: CodePoint) = (c - 0xA640) / 16 private fun cyrilicExtBIndexY(c: CodePoint) = (c - 0xA640) / 16
private fun cyrilicExtAIndexY(c: CodePoint) = (c - 0x2DE0) / 16 private fun cyrilicExtAIndexY(c: CodePoint) = (c - 0x2DE0) / 16
private fun cyrilicExtCIndexY(c: CodePoint) = (c - 0x1C80) / 16
val charsetOverrideDefault = Character.toChars(CHARSET_OVERRIDE_DEFAULT).toSurrogatedString() val charsetOverrideDefault = Character.toChars(CHARSET_OVERRIDE_DEFAULT).toSurrogatedString()
val charsetOverrideBulgarian = Character.toChars(CHARSET_OVERRIDE_BG_BG).toSurrogatedString() val charsetOverrideBulgarian = Character.toChars(CHARSET_OVERRIDE_BG_BG).toSurrogatedString()

Binary file not shown.

Binary file not shown.