phonetic extensions

This commit is contained in:
minjaesong
2021-12-14 17:16:13 +09:00
parent 05d34d563d
commit 376c7cf9a4
12 changed files with 41 additions and 25 deletions

10
.idea/runConfigurations.xml generated Normal file
View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RunConfigurationProducerService">
<option name="ignoredProducers">
<set>
<option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" />
</set>
</option>
</component>
</project>

Binary file not shown.

Binary file not shown.

BIN
demo.PNG

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

After

Width:  |  Height:  |  Size: 143 KiB

View File

@@ -108,10 +108,11 @@ How multilingual? Real multilingual!
Basic Latin Latin-1 Supplement Latin Extended-A Latin Extended-B IPA Extension Greek Cyrillic
Cyrillic Supplement Armenian Devanagari Bengali Thai Georgian Hangul Jamo Cherokee Runic
Georgian Extended Greek Extended General Punctuations Superscripts and Subscripts Currency Symbols
CJK Symbols Latin Extended-C Kana Hangul Compatibility Jamo Kana Phonetic Extensions
CJK Unihan Extension A CJK Unihan Latin Extended-D Hangul Jamo Extended-A Hangul Syllables
Hangul Jamo Extended-B Fullwidth Forms Kana Supplement
Georgian Extended Phonetic Extensions Phonetic Extensions Supplement Greek Extended
General Punctuations Superscripts and Subscripts Currency Symbols Letterlike Symbols CJK Symbols
Latin Extended-C Kana Hangul Compatibility Jamo Kana Phonetic Extensions CJK Unihan Extension A
CJK Unihan Latin Extended-D Hangul Jamo Extended-A Hangul Syllables Hangul Jamo Extended-B
Fullwidth Forms Kana Supplement Enclosed Alphanumeric Supplement
GitHubs issue page is open! You can report any 􏽕errors􀀀, or leave 􏽕suggestions􀀀.
You can help this font to be more versatile. (for more languages, more frameworks) 􏽕Clone􀀀 this repo, make

View File

@@ -541,8 +541,8 @@ class TerrarumSansBitmap(
return SHEET_LATIN_EXT_ADD_VARW
else if (isCherokee(c))
return SHEET_TSALAGI_VARW
else if (isInsular(c))
return SHEET_INSUAR_VARW
else if (isPhoneticExt(c))
return SHEET_PHONETIC_EXT_VARW
else if (isNagariBengali(c))
return SHEET_NAGARI_BENGALI_VARW
else if (isKartvelianCaps(c))
@@ -644,9 +644,9 @@ class TerrarumSansBitmap(
sheetX = cherokeeIndexX(ch)
sheetY = cherokeeIndexY(ch)
}
SHEET_INSUAR_VARW -> {
sheetX = insularIndexX(ch)
sheetY = insularIndexY(ch)
SHEET_PHONETIC_EXT_VARW -> {
sheetX = phoneticExtIndexX(ch)
sheetY = phoneticExtIndexY(ch)
}
SHEET_NAGARI_BENGALI_VARW -> {
sheetX = nagariIndexX(ch)
@@ -1494,7 +1494,7 @@ class TerrarumSansBitmap(
internal val SHEET_BULGARIAN_VARW = 18
internal val SHEET_SERBIAN_VARW = 19
internal val SHEET_TSALAGI_VARW = 20
internal val SHEET_INSUAR_VARW = 21 // currently only for U+1D79
internal val SHEET_PHONETIC_EXT_VARW = 21
internal val SHEET_NAGARI_BENGALI_VARW=22
internal val SHEET_KARTULI_CAPS_VARW = 23
internal val SHEET_DIACRITICAL_MARKS_VARW = 24
@@ -1547,7 +1547,7 @@ class TerrarumSansBitmap(
"cyrilic_bulgarian_variable.tga",
"cyrilic_serbian_variable.tga",
"tsalagi_variable.tga",
"insular_variable.tga",
"phonetic_extensions_variable.tga",
"devanagari_bengali_variable.tga",
"kartuli_allcaps_variable.tga",
"diacritical_marks_variable.tga",
@@ -1581,7 +1581,7 @@ class TerrarumSansBitmap(
0xF0000..0xF005F, // SHEET_BULGARIAN_VARW; assign them to PUA
0xF0060..0xF00BF, // SHEET_SERBIAN_VARW; assign them to PUA
0x13A0..0x13F5, // SHEET_TSALAGI_VARW
0x1D79..0x1D79, // SHEET_INSULAR_VARW; todo: Phonetic Extensions et al, 1D00..1DFF
0x1D00..0x1DBF, // SHEET_PHONETIC_EXT_VARW
0x900..0x9FF, // SHEET_NAGARI_BENGALI_VARW
0x1C90..0x1CBF, // SHEET_KARTULI_CAPS_VARW
0x300..0x36F, // SHEET_DIACRITICAL_MARKS_VARW
@@ -1740,7 +1740,7 @@ class TerrarumSansBitmap(
fun isColourCode(c: CodePoint) = c == 0x100000 || c in 0x10F000..0x10FFFF
private fun isCharsetOverride(c: CodePoint) = c in 0xFFFC0..0xFFFFF
private fun isCherokee(c: CodePoint) = c in codeRange[SHEET_TSALAGI_VARW]
private fun isInsular(c: CodePoint) = c == 0x1D79
private fun isPhoneticExt(c: CodePoint) = c in codeRange[SHEET_PHONETIC_EXT_VARW]
private fun isNagariBengali(c: CodePoint) = c in codeRange[SHEET_NAGARI_BENGALI_VARW]
private fun isKartvelianCaps(c: CodePoint) = c in codeRange[SHEET_KARTULI_CAPS_VARW]
private fun isDiacriticalMarks(c: CodePoint) = c in codeRange[SHEET_DIACRITICAL_MARKS_VARW]
@@ -1808,8 +1808,8 @@ class TerrarumSansBitmap(
private fun cherokeeIndexX(c: CodePoint) = (c - 0x13A0) % 16
private fun cherokeeIndexY(c: CodePoint) = (c - 0x13A0) / 16
private fun insularIndexX(c: CodePoint) = 0
private fun insularIndexY(c: CodePoint) = 0
private fun phoneticExtIndexX(c: CodePoint) = (c - 0x1D00) % 16
private fun phoneticExtIndexY(c: CodePoint) = (c - 0x1D00) / 16
private fun nagariIndexX(c: CodePoint) = (c - 0x900) % 16
private fun nagariIndexY(c: CodePoint) = (c - 0x900) / 16

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -6,4 +6,9 @@ aำ
UIJTuijt
দৌ ষৌ
দৌ ষৌ
M℄ℇ℀℈j№℗CKℵ℡Z℥
ℵ₀
🄅🄵🅅🄕🄩🄪🄭🅭🄏🄎🅯🅮🆞🆠🆐🄯🆒🆓

Binary file not shown.