N.T and N.T.R ligatures

This commit is contained in:
minjaesong
2022-01-25 21:10:08 +09:00
parent a36c5df477
commit 64c13571f9
5 changed files with 15 additions and 7 deletions

View File

@@ -60,7 +60,12 @@ Rightmost vertical column (should be 20 px tall) contains the tags. Tags are def
A -' 0 left 0 right 1 centre 1 the glyph
D --Diacritics Type Bit (see below; not all diacritics are marked as one on the spritesheet)
S -,_ 0 Stack 1 Stack 0 Before 1 Up &
(MSB) S -' 0 up 0 down 1 &After 1 Down (e.g. U+0C48)
(MSB) S -' 0 up 0 down 1 &After 1 Down* (e.g. U+0C48)
Up&Down:
1. when two pixels are both #00FF00 it's "don't stack"
2. otherwise, it's actually up&down
```
#### Nudging Bits Encoding

Binary file not shown.

View File

@@ -1823,25 +1823,25 @@ class TerrarumSansBitmap(
private val DEVANAGARI_LIG_K_SS = 0xF0181
private val DEVANAGARI_LIG_J_NY = 0xF0184
private val DEVANAGARI_LIG_T_T = 0xF018B
private val DEVANAGARI_LIG_N_T = 0xF01B0
private val MARWARI_LIG_DD_DD = 0xF01AB
private val MARWARI_LIG_DD_DDH = 0xF01AC
private val MARWARI_LIG_DD_Y = 0xF01AD
private val DEVANAGARI_LIG_T_R = 0xF0154
private val DEVANAGARI_LIG_SH_R = 0xF0166
private val MARWARI_LIG_DD_R = 0xF016A
private val DEVANAGARI_LIG_K_SS_R = 0xF016B
private val DEVANAGARI_LIG_J_NY_R = 0xF016C
private val DEVANAGARI_LIG_T_T_R = 0xF016D
private val DEVANAGARI_LIG_N_T_R = 0xF016E
private val DEVANAGARI_HALFLIG_K_SS = 0xF012B
private val DEVANAGARI_HALFLIG_J_NY = 0xF012C
private val DEVANAGARI_HALFLIG_T_T = 0xF012D
private val DEVANAGARI_HALFLIG_N_T = 0xF01C4
private val MARWARI_HALFLIG_DD_Y = 0xF01AE
// private val DEVANAGARI_HALFLIG_T_R = 0xF012E
// private val DEVANAGARI_HALFLIG_SH_R = 0xF012F
private val DEVANAGARI_HALF_FORMS = 0xF0100 // starting point for Devanagari half forms
private val DEVANAGARI_LIG_X_R = 0xF0140 // starting point for Devanagari ligature CONSONANT+RA
@@ -1852,6 +1852,7 @@ class TerrarumSansBitmap(
if (this == DEVANAGARI_LIG_K_SS) return DEVANAGARI_HALFLIG_K_SS
if (this == DEVANAGARI_LIG_J_NY) return DEVANAGARI_HALFLIG_J_NY
if (this == DEVANAGARI_LIG_T_T) return DEVANAGARI_HALFLIG_T_T
if (this == DEVANAGARI_LIG_N_T) return DEVANAGARI_HALFLIG_N_T
if (this == DEVANAGARI_OPEN_YA) return DEVANAGARI_OPEN_HALF_YA
if (this == MARWARI_LIG_DD_Y) return MARWARI_HALFLIG_DD_Y
if (this in devanagariBaseConsonants) return (this - 0x0910 + DEVANAGARI_HALF_FORMS)
@@ -1958,7 +1959,9 @@ class TerrarumSansBitmap(
else -> return c1.toHalfFormOrVirama() + c2
}
0x0928 -> /* Devanagari NA */ when (c2) {
0x0924 -> return listOf(DEVANAGARI_LIG_N_T) // N.T
0x0928 -> return listOf(0xF0193) // N.N
DEVANAGARI_LIG_T_R -> return listOf(DEVANAGARI_LIG_N_T_R) // N.T.R
else -> return c1.toHalfFormOrVirama() + c2
}
0x092A -> /* Devanagari PA */ when (c2) {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.