mirror of
https://github.com/curioustorvald/Terrarum-sans-bitmap.git
synced 2026-06-06 05:58:30 +09:00
Full Cyrillic, CyrlExtA/B support (enables church slavonic)
This commit is contained in:
BIN
Autokem/autokem.safetensors
LFS
BIN
Autokem/autokem.safetensors
LFS
Binary file not shown.
@@ -80,7 +80,7 @@ Up&Down:
|
|||||||
Each X and Y numbers are Signed 8-Bit Integer.
|
Each X and Y numbers are Signed 8-Bit Integer.
|
||||||
|
|
||||||
X-positive: nudges towards left
|
X-positive: nudges towards left
|
||||||
Y-positive: nudges towards up
|
Y-positive: nudges towards down
|
||||||
|
|
||||||
#### Diacritics Anchor Point Encoding
|
#### Diacritics Anchor Point Encoding
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -1750,7 +1750,7 @@ def _generate_mark(glyphs, has):
|
|||||||
|
|
||||||
mark_groups = {} # (mark_type, align, is_dia, stack_cat) -> [(cp, g), ...]
|
mark_groups = {} # (mark_type, align, is_dia, stack_cat) -> [(cp, g), ...]
|
||||||
for cp, g in marks.items():
|
for cp, g in marks.items():
|
||||||
is_dia = (0x0300 <= cp <= 0x036F)
|
is_dia = True # all marks (write_on_top >= 0) are diacritics; Kotlin applies lowheight shiftdown unconditionally
|
||||||
sc = _stack_cat(g.props.stack_where)
|
sc = _stack_cat(g.props.stack_where)
|
||||||
key = (g.props.write_on_top, g.props.align_where, is_dia, sc)
|
key = (g.props.write_on_top, g.props.align_where, is_dia, sc)
|
||||||
mark_groups.setdefault(key, []).append((cp, g))
|
mark_groups.setdefault(key, []).append((cp, g))
|
||||||
|
|||||||
@@ -72,6 +72,8 @@ SHEET_ALPHABETIC_PRESENTATION_FORMS = 38
|
|||||||
SHEET_HENTAIGANA_VARW = 39
|
SHEET_HENTAIGANA_VARW = 39
|
||||||
SHEET_CONTROL_PICTURES_VARW = 40
|
SHEET_CONTROL_PICTURES_VARW = 40
|
||||||
SHEET_LEGACY_COMPUTING_VARW = 41
|
SHEET_LEGACY_COMPUTING_VARW = 41
|
||||||
|
SHEET_CYRILIC_EXTB_VARW = 42
|
||||||
|
SHEET_CYRILIC_EXTA_VARW = 43
|
||||||
|
|
||||||
SHEET_UNKNOWN = 254
|
SHEET_UNKNOWN = 254
|
||||||
|
|
||||||
@@ -118,6 +120,8 @@ FILE_LIST = [
|
|||||||
"hentaigana_variable.tga",
|
"hentaigana_variable.tga",
|
||||||
"control_pictures_variable.tga",
|
"control_pictures_variable.tga",
|
||||||
"symbols_for_legacy_computing_variable.tga",
|
"symbols_for_legacy_computing_variable.tga",
|
||||||
|
"cyrilic_extB_variable.tga",
|
||||||
|
"cyrilic_extA_variable.tga",
|
||||||
]
|
]
|
||||||
|
|
||||||
CODE_RANGE = [
|
CODE_RANGE = [
|
||||||
@@ -163,6 +167,8 @@ CODE_RANGE = [
|
|||||||
list(range(0x1B000, 0x1B170)), # 39: Hentaigana
|
list(range(0x1B000, 0x1B170)), # 39: Hentaigana
|
||||||
list(range(0x2400, 0x2440)), # 40: Control Pictures
|
list(range(0x2400, 0x2440)), # 40: Control Pictures
|
||||||
list(range(0x1FB00, 0x1FC00)), # 41: Legacy Computing
|
list(range(0x1FB00, 0x1FC00)), # 41: Legacy Computing
|
||||||
|
list(range(0xA640, 0xA6A0)), # 42: Cyrillic Ext B
|
||||||
|
list(range(0x2DE0, 0x2E00)), # 43: Cyrillic Ext A
|
||||||
]
|
]
|
||||||
|
|
||||||
CODE_RANGE_HANGUL_COMPAT = range(0x3130, 0x3190)
|
CODE_RANGE_HANGUL_COMPAT = range(0x3130, 0x3190)
|
||||||
@@ -539,5 +545,7 @@ def index_y(sheet_index, c):
|
|||||||
SHEET_HENTAIGANA_VARW: lambda: (c - 0x1B000) // 16,
|
SHEET_HENTAIGANA_VARW: lambda: (c - 0x1B000) // 16,
|
||||||
SHEET_CONTROL_PICTURES_VARW: lambda: (c - 0x2400) // 16,
|
SHEET_CONTROL_PICTURES_VARW: lambda: (c - 0x2400) // 16,
|
||||||
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_EXTA_VARW: lambda: (c - 0x2DE0) // 16,
|
||||||
SHEET_HANGUL: lambda: 0,
|
SHEET_HANGUL: lambda: 0,
|
||||||
}.get(sheet_index, lambda: c // 16)()
|
}.get(sheet_index, lambda: c // 16)()
|
||||||
|
|||||||
Binary file not shown.
BIN
demo.PNG
BIN
demo.PNG
Binary file not shown.
|
Before Width: | Height: | Size: 168 KiB After Width: | Height: | Size: 177 KiB |
@@ -25,6 +25,7 @@ How multilingual? Real multilingual!
|
|||||||
আমি কাঁচ খেতে পারি, তাতে আমার কোনো ক্ষতি হয় না।
|
আমি কাঁচ খেতে পারি, তাতে আমার কোনো ক্ষতি হয় না।
|
||||||
Под южно дърво, цъфтящо в синьо, бягаше малко пухкаво зайче
|
Под южно дърво, цъфтящо в синьо, бягаше малко пухкаво зайче
|
||||||
ᎠᏍᎦᏯᎡᎦᎢᎾᎨᎢᎣᏍᏓᎤᎩᏍᏗᎥᎴᏓᎯᎲᎢᏔᎵᏕᎦᏟᏗᏖᎸᎳᏗᏗᎧᎵᎢᏘᎴᎩ ᏙᏱᏗᏜᏫᏗᏣᏚᎦᏫᏛᏄᏓᎦᏝᏃᎠᎾᏗᎭᏞᎦᎯᎦᏘᏓᏠᎨᏏᏕᏡᎬᏢᏓᏥᏩᏝᎡᎢᎪᎢ ᎠᎦᏂᏗᎮᎢᎫᎩᎬᏩᎴᎢᎠᏆᏅᏛᎫᏊᎾᎥᎠᏁᏙᎲᏐᏈᎵᎤᎩᎸᏓᏭᎷᏤᎢᏏᏉᏯᏌᏊ ᎤᏂᏋᎢᏡᎬᎢᎰᏩᎬᏤᎵᏍᏗᏱᎩᎱᎱᎤᎩᎴᎢᏦᎢᎠᏂᏧᏣᏨᎦᏥᎪᎥᏌᏊᎤᎶᏒᎢᎢᏡᎬᎢ ᎹᎦᎺᎵᏥᎻᎼᏏᎽᏗᏩᏂᎦᏘᎾᎿᎠᏁᎬᎢᏅᎩᎾᏂᎡᎢᏌᎶᎵᏎᎷᎠᏑᏍᏗᏪᎩ ᎠᎴ ᏬᏗᏲᏭᎾᏓᏍᏓᏴᏁᎢᎤᎦᏅᏮᏰᎵᏳᏂᎨᎢ
|
ᎠᏍᎦᏯᎡᎦᎢᎾᎨᎢᎣᏍᏓᎤᎩᏍᏗᎥᎴᏓᎯᎲᎢᏔᎵᏕᎦᏟᏗᏖᎸᎳᏗᏗᎧᎵᎢᏘᎴᎩ ᏙᏱᏗᏜᏫᏗᏣᏚᎦᏫᏛᏄᏓᎦᏝᏃᎠᎾᏗᎭᏞᎦᎯᎦᏘᏓᏠᎨᏏᏕᏡᎬᏢᏓᏥᏩᏝᎡᎢᎪᎢ ᎠᎦᏂᏗᎮᎢᎫᎩᎬᏩᎴᎢᎠᏆᏅᏛᎫᏊᎾᎥᎠᏁᏙᎲᏐᏈᎵᎤᎩᎸᏓᏭᎷᏤᎢᏏᏉᏯᏌᏊ ᎤᏂᏋᎢᏡᎬᎢᎰᏩᎬᏤᎵᏍᏗᏱᎩᎱᎱᎤᎩᎴᎢᏦᎢᎠᏂᏧᏣᏨᎦᏥᎪᎥᏌᏊᎤᎶᏒᎢᎢᏡᎬᎢ ᎹᎦᎺᎵᏥᎻᎼᏏᎽᏗᏩᏂᎦᏘᎾᎿᎠᏁᎬᎢᏅᎩᎾᏂᎡᎢᏌᎶᎵᏎᎷᎠᏑᏍᏗᏪᎩ ᎠᎴ ᏬᏗᏲᏭᎾᏓᏍᏓᏴᏁᎢᎤᎦᏅᏮᏰᎵᏳᏂᎨᎢ
|
||||||
|
Ѳеѡфа́нъ и҆ Алеѯі́й, ѕѣлѡ̀ возлюби́вше ѱалти́рь, воспѣ́ша при свѣ́тѣ ѕвѣ́здъ, помазꙋ́юще сщ҃е́нное мѵ́ро; серафими мн̑оꙮчитїи̑, ꙗ҆́кѡ ѻ҆́гнь, ѡ҆крꙋжа́хꙋ прⷭ҇то́лъ Бж҃їй, и҆ всѧ̀ землѧ̀ и҆спо́лнисѧ свѣ́та, ꙗ҆́кѡ ѕмі́й попра́нъ є҆́сть
|
||||||
Příliš žluťoučký kůň úpěl ďábelské ódy
|
Příliš žluťoučký kůň úpěl ďábelské ódy
|
||||||
Quizdeltagerne spiste jordbær med fløde, mens cirkusklovnen Walther spillede på xylofon
|
Quizdeltagerne spiste jordbær med fløde, mens cirkusklovnen Walther spillede på xylofon
|
||||||
PACK MY BOX WITH FIVE DOZEN LIQUOR JUGS
|
PACK MY BOX WITH FIVE DOZEN LIQUOR JUGS
|
||||||
@@ -104,6 +105,10 @@ How multilingual? Real multilingual!
|
|||||||
|
|
||||||
‣ Full support for Archaic Kana/Hentaigana
|
‣ Full support for Archaic Kana/Hentaigana
|
||||||
|
|
||||||
|
серафими мн̑оꙮчитїи̑, ꙗ҆́кѡ ѻ҆́гнь, ѡ҆крꙋжа́хꙋ прⷭ҇то́лъ Бж҃їй, и҆ всѧ̀ землѧ̀ и҆спо́лнисѧ свѣ́та
|
||||||
|
|
||||||
|
‣ Fan of Church Slavonic? We’ve got you!
|
||||||
|
|
||||||
Supported Unicode Blocks:
|
Supported Unicode Blocks:
|
||||||
|
|
||||||
⁃ Basic Latin
|
⁃ Basic Latin
|
||||||
@@ -120,8 +125,10 @@ How multilingual? Real multilingual!
|
|||||||
⁃ Combining Diacritical Marks
|
⁃ Combining Diacritical Marks
|
||||||
⁃ Control Pictures
|
⁃ Control Pictures
|
||||||
⁃ Currency Symbols
|
⁃ Currency Symbols
|
||||||
⁃ Cyrillicᴭ
|
⁃ Cyrillic
|
||||||
⁃ Cyrillic Supplementᴭ
|
⁃ Cyrillic Supplement
|
||||||
|
⁃ Cyrillic Extended-A
|
||||||
|
⁃ Cyrillic Extended-B
|
||||||
⁃ Devanagari
|
⁃ Devanagari
|
||||||
⁃ Enclosed Alphanumeric Supplement
|
⁃ Enclosed Alphanumeric Supplement
|
||||||
⁃ General Punctuations
|
⁃ General Punctuations
|
||||||
@@ -153,7 +160,7 @@ How multilingual? Real multilingual!
|
|||||||
⁃ Tamil
|
⁃ Tamil
|
||||||
⁃ Thai
|
⁃ Thai
|
||||||
|
|
||||||
ᴭ No support for archæic letters ᴱ No support for Coptic
|
ᴱ No support for Coptic
|
||||||
ᶠⁱ No support for ligatures ჼ Mkhedruli only
|
ᶠⁱ No support for ligatures ჼ Mkhedruli only
|
||||||
⁶ ⁷ ⁹ ¹²·¹ Up to the specified Unicode version
|
⁶ ⁷ ⁹ ¹²·¹ Up to the specified Unicode version
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
BIN
src/assets/cyrilic_extA_variable.tga
LFS
Normal file
BIN
src/assets/cyrilic_extA_variable.tga
LFS
Normal file
Binary file not shown.
BIN
src/assets/cyrilic_extB_variable.tga
LFS
Normal file
BIN
src/assets/cyrilic_extB_variable.tga
LFS
Normal file
Binary file not shown.
Binary file not shown.
BIN
src/assets/cyrilic_variable.tga
LFS
BIN
src/assets/cyrilic_variable.tga
LFS
Binary file not shown.
BIN
src/assets/internal_variable.tga
LFS
BIN
src/assets/internal_variable.tga
LFS
Binary file not shown.
@@ -888,6 +888,8 @@ class TerrarumSansBitmap(
|
|||||||
SHEET_HENTAIGANA_VARW -> hentaiganaIndexY(ch)
|
SHEET_HENTAIGANA_VARW -> hentaiganaIndexY(ch)
|
||||||
SHEET_CONTROL_PICTURES_VARW -> controlPicturesIndexY(ch)
|
SHEET_CONTROL_PICTURES_VARW -> controlPicturesIndexY(ch)
|
||||||
SHEET_LEGACY_COMPUTING_VARW -> legacyComputingIndexY(ch)
|
SHEET_LEGACY_COMPUTING_VARW -> legacyComputingIndexY(ch)
|
||||||
|
SHEET_CYRILIC_EXTB_VARW -> cyrilicExtBIndexY(ch)
|
||||||
|
SHEET_CYRILIC_EXTA_VARW -> cyrilicExtAIndexY(ch)
|
||||||
else -> ch / 16
|
else -> ch / 16
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1120,6 +1122,8 @@ class TerrarumSansBitmap(
|
|||||||
var nonDiacriticCounter = 0 // index of last instance of non-diacritic char
|
var nonDiacriticCounter = 0 // index of last instance of non-diacritic char
|
||||||
var stackUpwardCounter = 0 // TODO separate stack counter for centre- and right aligned
|
var stackUpwardCounter = 0 // TODO separate stack counter for centre- and right aligned
|
||||||
var stackDownwardCounter = 0
|
var stackDownwardCounter = 0
|
||||||
|
var nudgeUpwardCounter = 0
|
||||||
|
var nudgeDownwardCounter = 0
|
||||||
|
|
||||||
val HALF_VAR_INIT = W_VAR_INIT.minus(1).div(2)
|
val HALF_VAR_INIT = W_VAR_INIT.minus(1).div(2)
|
||||||
|
|
||||||
@@ -1198,6 +1202,8 @@ class TerrarumSansBitmap(
|
|||||||
|
|
||||||
stackUpwardCounter = 0
|
stackUpwardCounter = 0
|
||||||
stackDownwardCounter = 0
|
stackDownwardCounter = 0
|
||||||
|
nudgeUpwardCounter = 0
|
||||||
|
nudgeDownwardCounter = 0
|
||||||
}
|
}
|
||||||
// FIXME HACK: using 0th diacritics' X-anchor pos as a type selector
|
// FIXME HACK: using 0th diacritics' X-anchor pos as a type selector
|
||||||
/*else if (thisProp.writeOnTop && thisProp.diacriticsAnchors[0].x == GlyphProps.DIA_JOINER) {
|
/*else if (thisProp.writeOnTop && thisProp.diacriticsAnchors[0].x == GlyphProps.DIA_JOINER) {
|
||||||
@@ -1277,14 +1283,14 @@ class TerrarumSansBitmap(
|
|||||||
// set Y pos according to diacritics position
|
// set Y pos according to diacritics position
|
||||||
when (thisProp.stackWhere) {
|
when (thisProp.stackWhere) {
|
||||||
GlyphProps.STACK_DOWN -> {
|
GlyphProps.STACK_DOWN -> {
|
||||||
posYbuffer[charIndex] = (-thisProp.nudgeY + H_DIACRITICS * stackDownwardCounter) * flipY.toSign()
|
posYbuffer[charIndex] = (-thisProp.nudgeY + H_DIACRITICS * stackDownwardCounter) * flipY.toSign() - thisProp.nudgeY - nudgeDownwardCounter
|
||||||
stackDownwardCounter++
|
stackDownwardCounter++
|
||||||
|
nudgeDownwardCounter -= thisProp.nudgeY
|
||||||
}
|
}
|
||||||
GlyphProps.STACK_UP -> {
|
GlyphProps.STACK_UP -> {
|
||||||
posYbuffer[charIndex] = -thisProp.nudgeY + (-H_DIACRITICS * stackUpwardCounter + -thisProp.nudgeY) * flipY.toSign()
|
posYbuffer[charIndex] = -thisProp.nudgeY + (-H_DIACRITICS * stackUpwardCounter + -thisProp.nudgeY) * flipY.toSign() + thisProp.nudgeY + nudgeUpwardCounter
|
||||||
// shift down on lowercase if applicable
|
// shift down on lowercase if applicable
|
||||||
if (getSheetType(thisChar) in autoShiftDownOnLowercase &&
|
if (lastNonDiacriticChar.isLowHeight()) {
|
||||||
lastNonDiacriticChar.isLowHeight()) {
|
|
||||||
//dbgprn("AAARRRRHHHH for character ${thisChar.toHex()}")
|
//dbgprn("AAARRRRHHHH for character ${thisChar.toHex()}")
|
||||||
//dbgprn("lastNonDiacriticChar: ${lastNonDiacriticChar.toHex()}")
|
//dbgprn("lastNonDiacriticChar: ${lastNonDiacriticChar.toHex()}")
|
||||||
//dbgprn("cond: ${thisProp.alignXPos == GlyphProps.DIA_OVERLAY}, charIndex: $charIndex")
|
//dbgprn("cond: ${thisProp.alignXPos == GlyphProps.DIA_OVERLAY}, charIndex: $charIndex")
|
||||||
@@ -1295,18 +1301,19 @@ class TerrarumSansBitmap(
|
|||||||
}
|
}
|
||||||
|
|
||||||
stackUpwardCounter++
|
stackUpwardCounter++
|
||||||
|
nudgeUpwardCounter += thisProp.nudgeY
|
||||||
|
|
||||||
// dbgprn("lastNonDiacriticChar: ${lastNonDiacriticChar.charInfo()}; stack counter: $stackUpwardCounter")
|
// dbgprn("lastNonDiacriticChar: ${lastNonDiacriticChar.charInfo()}; stack counter: $stackUpwardCounter")
|
||||||
}
|
}
|
||||||
GlyphProps.STACK_UP_N_DOWN -> {
|
GlyphProps.STACK_UP_N_DOWN -> {
|
||||||
posYbuffer[charIndex] = (-thisProp.nudgeY + H_DIACRITICS * stackDownwardCounter) * flipY.toSign()
|
posYbuffer[charIndex] = (-thisProp.nudgeY + H_DIACRITICS * stackDownwardCounter) * flipY.toSign()
|
||||||
stackDownwardCounter++
|
stackDownwardCounter++
|
||||||
|
if (thisProp.nudgeY < 0)
|
||||||
|
nudgeDownwardCounter -= thisProp.nudgeY
|
||||||
|
|
||||||
posYbuffer[charIndex] = (-thisProp.nudgeY + -H_DIACRITICS * stackUpwardCounter) * flipY.toSign()
|
posYbuffer[charIndex] = (-thisProp.nudgeY + -H_DIACRITICS * stackUpwardCounter) * flipY.toSign()
|
||||||
// shift down on lowercase if applicable
|
// shift down on lowercase if applicable
|
||||||
if (getSheetType(thisChar) in autoShiftDownOnLowercase &&
|
if (lastNonDiacriticChar.isLowHeight()) {
|
||||||
lastNonDiacriticChar.isLowHeight()) {
|
|
||||||
if (diacriticsType == GlyphProps.DIA_OVERLAY)
|
if (diacriticsType == GlyphProps.DIA_OVERLAY)
|
||||||
posYbuffer[charIndex] += H_OVERLAY_LOWERCASE_SHIFTDOWN * flipY.toSign() // if minus-assign doesn't work, try plus-assign
|
posYbuffer[charIndex] += H_OVERLAY_LOWERCASE_SHIFTDOWN * flipY.toSign() // if minus-assign doesn't work, try plus-assign
|
||||||
else
|
else
|
||||||
@@ -1314,6 +1321,8 @@ class TerrarumSansBitmap(
|
|||||||
}
|
}
|
||||||
|
|
||||||
stackUpwardCounter++
|
stackUpwardCounter++
|
||||||
|
if (thisProp.nudgeY > 0)
|
||||||
|
nudgeUpwardCounter += thisProp.nudgeY
|
||||||
}
|
}
|
||||||
// for BEFORE_N_AFTER, do nothing in here
|
// for BEFORE_N_AFTER, do nothing in here
|
||||||
}
|
}
|
||||||
@@ -2604,6 +2613,8 @@ class TerrarumSansBitmap(
|
|||||||
internal const val SHEET_HENTAIGANA_VARW = 39
|
internal const val SHEET_HENTAIGANA_VARW = 39
|
||||||
internal const val SHEET_CONTROL_PICTURES_VARW = 40
|
internal const val SHEET_CONTROL_PICTURES_VARW = 40
|
||||||
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_EXTA_VARW = 43
|
||||||
|
|
||||||
internal const val SHEET_UNKNOWN = 254
|
internal const val SHEET_UNKNOWN = 254
|
||||||
|
|
||||||
@@ -2625,10 +2636,6 @@ class TerrarumSansBitmap(
|
|||||||
const val MOVABLE_BLOCK_1 = 0xFFFF0
|
const val MOVABLE_BLOCK_1 = 0xFFFF0
|
||||||
|
|
||||||
|
|
||||||
private val autoShiftDownOnLowercase = arrayOf(
|
|
||||||
SHEET_DIACRITICAL_MARKS_VARW
|
|
||||||
)
|
|
||||||
|
|
||||||
private val fileList = arrayOf( // MUST BE MATCHING WITH SHEET INDICES!!
|
private val fileList = arrayOf( // MUST BE MATCHING WITH SHEET INDICES!!
|
||||||
"ascii_variable.tga",
|
"ascii_variable.tga",
|
||||||
"hangul_johab.tga",
|
"hangul_johab.tga",
|
||||||
@@ -2672,6 +2679,8 @@ class TerrarumSansBitmap(
|
|||||||
"hentaigana_variable.tga",
|
"hentaigana_variable.tga",
|
||||||
"control_pictures_variable.tga",
|
"control_pictures_variable.tga",
|
||||||
"symbols_for_legacy_computing_variable.tga",
|
"symbols_for_legacy_computing_variable.tga",
|
||||||
|
"cyrilic_extB_variable.tga",
|
||||||
|
"cyrilic_extA_variable.tga",
|
||||||
)
|
)
|
||||||
internal val codeRange = arrayOf( // MUST BE MATCHING WITH SHEET INDICES!!
|
internal val codeRange = arrayOf( // MUST BE MATCHING WITH SHEET INDICES!!
|
||||||
0..0xFF, // SHEET_ASCII_VARW
|
0..0xFF, // SHEET_ASCII_VARW
|
||||||
@@ -2716,6 +2725,8 @@ class TerrarumSansBitmap(
|
|||||||
0x1B000..0x1B16F, // SHEET_HENTAIGANA_VARW
|
0x1B000..0x1B16F, // SHEET_HENTAIGANA_VARW
|
||||||
0x2400..0x243F, // SHEET_CONTROL_PICTURES_VARW
|
0x2400..0x243F, // SHEET_CONTROL_PICTURES_VARW
|
||||||
0x1FB00..0x1FBFF, // SHEET_LEGACY_COMPUTING_VARW
|
0x1FB00..0x1FBFF, // SHEET_LEGACY_COMPUTING_VARW
|
||||||
|
0xA640..0xA69F, // SHEET_CYRILIC_EXTB_VARW
|
||||||
|
0x2DE0..0x2DFF, // SHEET_CYRILIC_EXTA_VARW
|
||||||
)
|
)
|
||||||
private val codeRangeHangulCompat = 0x3130..0x318F
|
private val codeRangeHangulCompat = 0x3130..0x318F
|
||||||
|
|
||||||
@@ -3066,6 +3077,8 @@ class TerrarumSansBitmap(
|
|||||||
private fun hentaiganaIndexY(c: CodePoint) = (c - 0x1B000) / 16
|
private fun hentaiganaIndexY(c: CodePoint) = (c - 0x1B000) / 16
|
||||||
private fun controlPicturesIndexY(c: CodePoint) = (c - 0x2400) / 16
|
private fun controlPicturesIndexY(c: CodePoint) = (c - 0x2400) / 16
|
||||||
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 cyrilicExtAIndexY(c: CodePoint) = (c - 0x2DE0) / 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.
BIN
work_files/cyrilic_extA_variable.kra
LFS
Normal file
BIN
work_files/cyrilic_extA_variable.kra
LFS
Normal file
Binary file not shown.
BIN
work_files/cyrilic_extB_variable.kra
LFS
Normal file
BIN
work_files/cyrilic_extB_variable.kra
LFS
Normal file
Binary file not shown.
Binary file not shown.
BIN
work_files/cyrilic_variable.psd
LFS
BIN
work_files/cyrilic_variable.psd
LFS
Binary file not shown.
BIN
work_files/internal_variable.psd
LFS
BIN
work_files/internal_variable.psd
LFS
Binary file not shown.
Reference in New Issue
Block a user