diff --git a/assets/devanagari_internal_extrawide_variable.tga b/assets/devanagari_internal_extrawide_variable.tga index 3eafd3f..d76bd85 100644 --- a/assets/devanagari_internal_extrawide_variable.tga +++ b/assets/devanagari_internal_extrawide_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b9ac4e0633cb5bc06d79947bc38ce1dc00f0eb857022b38ed4db22be8e74926b +oid sha256:452c0f7b0f2a5a9f1cdc9ac8276a6d8249ff848175ed5469c45d4a600890d12c size 81938 diff --git a/demo.PNG b/demo.PNG index b1b832d..ea67431 100644 Binary files a/demo.PNG and b/demo.PNG differ diff --git a/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt b/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt index 6a26136..50ee74f 100755 --- a/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt +++ b/src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt @@ -1346,6 +1346,16 @@ class TerrarumSansBitmap( dbgprnLig(" Consonants after Left Vowel (5 -> 1)") seq4.add(c) changeRaStatus(1) + + if (yankedDevanagariRaStatus[1] > 0) { + dbgprnLig(" Popping out RAsup (2)") + yankedCharacters.pop() + if (seq4.last() in devanagariSuperscripts) + seq4.add(DEVANAGARI_RA_SUPER_COMPLEX) + else + seq4.add(DEVANAGARI_RA_SUPER) + resetRaStatus() + } } else if ((yankedDevanagariRaStatus[1] > 0) && devanagariRightVowels.contains(c)) { dbgprnLig(" Right Vowels (${yankedDevanagariRaStatus[1]} -> 4)") @@ -1388,7 +1398,7 @@ class TerrarumSansBitmap( seq4.add(0) // add dummy terminator -// println(seq4.joinToString(" ")) +// println("seq4 = " + seq4.joinToString(" ") { it.toCh() }) // replace devanagari I/II with variants i = 0 @@ -1453,6 +1463,7 @@ class TerrarumSansBitmap( i++ } +// println("seq5 = " + seq5.joinToString(" ") { it.toCh() }) return seq5 } @@ -1478,14 +1489,21 @@ class TerrarumSansBitmap( 0xF0104 -> "Hu" 0xF0105 -> "Huu" 0xF010B -> "ᴿᵃ" + 0xF010C -> "ᴿ¹" + 0xF010D -> "ᴿ²" + 0xF010E -> "DDRA" + 0xF010F -> "ᶴ" 0xF024C -> "Resh" + in 0xF0110..0xF011F -> "I-${(this - 0xF0110 + 1)}" + in 0xF0120..0xF012F -> "II-${(this - 0xF0120 + 1)}" in 0xF0140 until 0xF0140+devaSyll.size -> devaSyll[this - 0xF0140] in 0xF0230 until 0xF0230+devaSyll.size -> devaSyll[this - 0xF0230] + "ʰ" in 0xF0320 until 0xF0320+devaSyll.size -> devaSyll[this - 0xF0320] + ".R" in 0xF0410 until 0xF0410+devaSyll.size -> devaSyll[this - 0xF0410] + ".Rʰ" - else -> this.toHex() + else -> "<${this.toHex()}>" } + /** Takes input string, do normalisation, and returns sequence of codepoints (Int) * * UTF-16 to ArrayList of Int. UTF-16 is because of Java diff --git a/work_files/devanagari_internal_extrawide_variable.psd b/work_files/devanagari_internal_extrawide_variable.psd index e70066c..e0dccde 100644 --- a/work_files/devanagari_internal_extrawide_variable.psd +++ b/work_files/devanagari_internal_extrawide_variable.psd @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fded0a900bf53b89fdb1b471d1b4405470679be865f5af1ba29a2302da3786f3 -size 83099 +oid sha256:cb14bd1e32be2191f19306daa7669183981e9651a1d2732ef5dba374f5fa42b6 +size 83425