From 11aafbe65116d4d64c1359e2dd7ddb30e3734cba Mon Sep 17 00:00:00 2001 From: Willem Date: Fri, 11 Feb 2022 16:27:00 +0100 Subject: [PATCH] Added font for brahmi --- conv-font/package.json | 3 +- .../numberxd/glyph/BaseGlyphSet.java | 103 ++++++++++++------ main-gdxapp/assets/font/noto-sans-brahmi.ttf | Bin 0 -> 41892 bytes 3 files changed, 74 insertions(+), 32 deletions(-) create mode 100644 main-gdxapp/assets/font/noto-sans-brahmi.ttf diff --git a/conv-font/package.json b/conv-font/package.json index 600f6489..b84a175d 100644 --- a/conv-font/package.json +++ b/conv-font/package.json @@ -4,9 +4,10 @@ "description": "Convert font data to XML intermediate.", "private": true, "scripts": { - "start": "npm run-script conv0 && npm run-script conv1", + "start": "npm run-script conv0 && npm run-script conv1 && npm run-script conv2", "conv0": "node conv-font.js ../main-gdxapp/assets/font/code2000.ttf > bin/code2000.xml", "conv1": "node conv-font.js ../main-gdxapp/assets/font/free-sans.ttf > bin/free-sans.xml", + "conv2": "node conv-font.js ../main-gdxapp/assets/font/noto-sans-brahmi.ttf > bin/noto-sans-brahmi.xml", "debug": "node conv-font.js ../main-gdxapp/assets/font/free-sans.ttf" }, "dependencies": { diff --git a/lib-numberxd/src/main/love/distributedrebirth/numberxd/glyph/BaseGlyphSet.java b/lib-numberxd/src/main/love/distributedrebirth/numberxd/glyph/BaseGlyphSet.java index 25b4c020..84960765 100644 --- a/lib-numberxd/src/main/love/distributedrebirth/numberxd/glyph/BaseGlyphSet.java +++ b/lib-numberxd/src/main/love/distributedrebirth/numberxd/glyph/BaseGlyphSet.java @@ -18,80 +18,121 @@ import love.distributedrebirth.numberxd.base2t.part.T16PartHex; @BãßBȍőnPackageInfoʸᴰ(name = "love.distributedrebirth.numberxd") public enum BaseGlyphSet implements DefaultEnumSetᴶᴹˣ { - LATIN_BASIC(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(Integer.toString(x.BȍőnRangTelNul())))), + LATIN_BASIC( + new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(Integer.toString(x.BȍőnRangTelNul())))), new BaseGlyphSetNumber(v -> T16PartHex.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt1Value()))), new BaseGlyphSetNumber("1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R")), - LATIN_DTMF(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnChinaValue()))).withSeperator(BãßBȍőnConstantsʸᴰ.STR_SPACE), + LATIN_DTMF( + new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnChinaValue()))).withSeperator(BãßBȍőnConstantsʸᴰ.STR_SPACE), new BaseGlyphSetNumber("1","2","3","A","4","5","6","B","7","8","9","C","*","0","#","D"), LATIN_BASIC.BȍőnGlyphSetNumber27()), - LATIN_TOP(new BaseGlyphSetNumber("⁰","¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹"), + LATIN_TOP( + new BaseGlyphSetNumber("⁰","¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹"), new BaseGlyphSetNumber("⁰","¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹","ᵃ","ᵇ","ᶜ","ᵈ","ᵉ","ᶠ"), new BaseGlyphSetNumber("¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹","ᵃ","ᵇ","ᶜ","ᵈ","ᵉ","ᶠ","ᴳ","ᴴ","ᴵ","ᴶ","ᴷ","ᴸ","ᴹ","ᴺ","ᴼ","ᴾ","Q","ᴿ")), - LATIN_SUB(new BaseGlyphSetNumber("₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"), + LATIN_SUB( + new BaseGlyphSetNumber("₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"), new BaseGlyphSetNumber("₀","₁","₂","₃","₄","₅","₆","₇","₈","₉","ₐ","₆","꜀","ₔ","ₑ","բ"), new BaseGlyphSetNumber("₁","₂","₃","₄","₅","₆","₇","₈","₉","ₐ","₆","꜀","ₔ","ₑ","բ","G","ₕ","ᵢ","ⱼ","ₖ","ₗ","ₘ","ₙ","ₒ","ₚ","Q","ᵣ")), - LATIN_TOPHEX(LATIN_BASIC.BȍőnGlyphSetNumber10(), + LATIN_TOPHEX( + LATIN_BASIC.BȍőnGlyphSetNumber10(), LATIN_BASIC.BȍőnGlyphSetNumber16().withAltGlyphSet(LATIN_TOP), LATIN_BASIC.BȍőnGlyphSetNumber27()), - TONE_SCRIPT(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnDialTone()))), + TONE_SCRIPT( + new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnDialTone()))), new BaseGlyphSetNumber(v -> T16PartHex.PART_1.BãßVoorElk(x -> v.add(x.BȍőnDialTone()))), new BaseGlyphSetNumber("꜊꜈","꜊꜉","꜊꜋","꜊꜌","꜊꜍","꜊꜎","꜊꜏","꜊꜐","꜊꜑","˧˥","˧˦","˧˨","˧˩","˧꜒","˧꜓","˧꜔","˧꜕","˧꜖","꜏˥","꜏˦","꜏˧","꜏˨","꜏˩","꜏꜍","꜏꜎","꜏꜐","꜏꜑")), - DIPAVALI_LRPATH_TOPHEX(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt1Value()))), + DIPAVALI_LRPATH_TOPHEX( + new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt1Value()))), new BaseGlyphSetNumber("˧˥˩","˧˩˥","˧˥˦","˧˩˨","˧˦˦","˧˨˨","˧˥˥","˧˩˩","˥˩˧","˩˥˧","˥˦˧","˩˨˧","˦˦˧","˨˨˧","˥˥˧","˩˩˧").withAltGlyphSet(BaseGlyphSet.LATIN_TOP), TONE_SCRIPT.BȍőnGlyphSetNumber27()), - DIPAVALI_LRPATH_SUBHEX(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt1Value()))), + DIPAVALI_LRPATH_SUBHEX( + new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt1Value()))), new BaseGlyphSetNumber("˧˥˩","˧˩˥","˧˥˦","˧˩˨","˧˦˦","˧˨˨","˧˥˥","˧˩˩","˥˩˧","˩˥˧","˥˦˧","˩˨˧","˦˦˧","˨˨˧","˥˥˧","˩˩˧").withAltGlyphSet(BaseGlyphSet.LATIN_SUB), TONE_SCRIPT.BȍőnGlyphSetNumber27()), - DIPAVALI_RLPATH_TOPHEX(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt2Value()))), + DIPAVALI_RLPATH_TOPHEX( + new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt2Value()))), new BaseGlyphSetNumber("꜔꜒꜖","꜔꜖꜒","꜔꜒꜓","꜔꜖꜕","꜔꜓꜓","꜔꜕꜕","꜔꜒꜒","꜔꜖꜖","꜒꜖꜔","꜖꜒꜔","꜒꜓꜔","꜖꜕꜔","꜓꜓꜔","꜕꜕꜔","꜒꜒꜔","꜖꜖꜔").withAltGlyphSet(BaseGlyphSet.LATIN_TOP), TONE_SCRIPT.BȍőnGlyphSetNumber27()), - DIPAVALI_RLPATH_SUBHEX(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt2Value()))), + DIPAVALI_RLPATH_SUBHEX( + new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt2Value()))), new BaseGlyphSetNumber("꜔꜒꜖","꜔꜖꜒","꜔꜒꜓","꜔꜖꜕","꜔꜓꜓","꜔꜕꜕","꜔꜒꜒","꜔꜖꜖","꜒꜖꜔","꜖꜒꜔","꜒꜓꜔","꜖꜕꜔","꜓꜓꜔","꜕꜕꜔","꜒꜒꜔","꜖꜖꜔").withAltGlyphSet(BaseGlyphSet.LATIN_SUB), TONE_SCRIPT.BȍőnGlyphSetNumber27()), - - GREEK(new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ"), + + GREEK( + new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ"), new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ"), new BaseGlyphSetNumber("α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ","ο","π","ϟ","ρ","σ","τ","υ","φ","χ","ψ","ω","ϡ")), - BENGALI(new BaseGlyphSetNumber("০","১","২","৩","৪","৫","৬","৭","৮","৯"), + BENGALI( + new BaseGlyphSetNumber("০","১","২","৩","৪","৫","৬","৭","৮","৯"), new BaseGlyphSetNumber("০","১","২","৩","৪","৫","৬","৭","৮","৯","জ্ঞ","ক্ষ","হ","স","ষ","শ"), new BaseGlyphSetNumber("ক","খ","গ","ঘ","ঙ","চ","ছ","জ","ঝ","ঞ","ট","ঠ","ড","ঢ","ণ","ত","থ","দ","ধ","ন","প","ফ","ব","ভ","ম","য","র")), - THAI(new BaseGlyphSetNumber("๐","๑","๒","๓","๔","๕","๖","๗","๘","๙"), + THAI( + new BaseGlyphSetNumber("๐","๑","๒","๓","๔","๕","๖","๗","๘","๙"), new BaseGlyphSetNumber("๐","๑","๒","๓","๔","๕","๖","๗","๘","๙","ก","ข","ค","ฆ","ง","จ"), new BaseGlyphSetNumber("๑","๒","๓","๔","๕","๖","๗","๘","๙","ก","ข","ค","ฆ","ง","จ","ฉ","ช","ฌ","ญ","ฎ","ฐ","ฑ","ฒ","ณ","ด","ท","ธ")), - RUNIC(new BaseGlyphSetNumber("ᛰ","ᚠ","ᚢ","ᚦ","ᚬ","ᚱ","ᚴ","ᚼ","ᚾ","ᛁ"), + RUNIC( + new BaseGlyphSetNumber("ᛰ","ᚠ","ᚢ","ᚦ","ᚬ","ᚱ","ᚴ","ᚼ","ᚾ","ᛁ"), new BaseGlyphSetNumber("ᛰ","ᚠ","ᚢ","ᚦ","ᚬ","ᚱ","ᚴ","ᚼ","ᚾ","ᛁ","ᛅ","ᛋ","ᛏ","ᛒ","ᛚ","ᛘ"), new BaseGlyphSetNumber("ᚠ","ᚢ","ᚦ","ᚨ","ᚱ","ᚲ","ᚷ","ᚹ","ᚺ","ᚾ","ᛁ","ᛃ","ᛇ","ᛈ","ᛉ","ᛊ","ᛏ","ᛒ","ᛖ","ᛗ","ᛚ","ᛜ","ᛟ","ᛞ","ᚡ","ᚤ","ᚧ")), - RUNIC_TOPHEX(RUNIC.BȍőnGlyphSetNumber10(), + RUNIC_TOPHEX( + RUNIC.BȍőnGlyphSetNumber10(), RUNIC.BȍőnGlyphSetNumber16().withAltGlyphSet(LATIN_TOP), RUNIC.BȍőnGlyphSetNumber27()), - KOREAN(new BaseGlyphSetNumber("영","일","이","삼","사","오","육","칠","팔","구"), + KOREAN( + new BaseGlyphSetNumber("영","일","이","삼","사","오","육","칠","팔","구"), new BaseGlyphSetNumber("ㅏ","ㅐ","ㅑ","ㅒ","ㅓ","ㅔ","ㅕ","ㅖ","ㅗ","ㅘ","ㅙ","ㅚ","ㅛ","ㅜ","ㅝ","ㅞ"), new BaseGlyphSetNumber("ㄱ","ㄲ","ㄴ","ㄷ","ㄸ","ㄹ","ㅁ","ㅂ","ㅃ","ㅅ","ㅆ","ㅈ","ㅉ","ㅊ","ㅋ","ㅌ","ㅍ","ㅎ","ㄵ","ㄶ","ㄺ","ㄻ","ㄼ","ㄽ","ㄾ","ㄿ","ㅀ")), - KOREAN_TOPHEX(KOREAN.BȍőnGlyphSetNumber10(), + KOREAN_TOPHEX( + KOREAN.BȍőnGlyphSetNumber10(), KOREAN.BȍőnGlyphSetNumber16().withAltGlyphSet(LATIN_TOP), KOREAN.BȍőnGlyphSetNumber27()), - CHINA( - new BaseGlyphSetNumber("零","一","二","三","四","五","六","七","八","九"), LATIN_BASIC.BȍőnGlyphSetNumber16(), null), - CHINA_FORMAL( - new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnChinaKey()))), LATIN_BASIC.BȍőnGlyphSetNumber16(), null), - CHINA_FORMAL_OLD( - new BaseGlyphSetNumber("零","壹","貳","參","肆","伍","陸","柒","捌","玖"), LATIN_BASIC.BȍőnGlyphSetNumber16(), null), - JAPAN( - CHINA.BȍőnGlyphSetNumber10(), LATIN_BASIC.BȍőnGlyphSetNumber16(), null), - JAPAN_FORMAL( - new BaseGlyphSetNumber("零","壱","弐","参","四","五","六","七","八","九"), LATIN_BASIC.BȍőnGlyphSetNumber16(), null), + /* Brahmi is U+11000–U+1107F and thus unsupported by ImGui + BRAHMI( + new BaseGlyphSetNumber("𑁦","𑁧","𑁨","𑁩","𑁪","𑁫","𑁬","𑁭","𑁮","𑁯"), + new BaseGlyphSetNumber("𑀮","𑀯","𑀰","𑀱","𑀮𑀺","𑀯𑀺","𑀰𑀺","𑀱𑀺","𑀮𑀽","𑀯𑀽","𑀰𑀽","𑀱𑀽","𑀮𑁄","𑀯𑁄","𑀰𑁄","𑀱𑁄"), + new BaseGlyphSetNumber("𑀓𑁆","𑀔𑁆","𑀕𑁆","𑀖𑁆","𑀗𑁆","𑀘𑁆","𑀙𑁆","𑀚𑁆","𑀛𑁆","𑀜𑁆","𑀝𑁆","𑀞𑁆","𑀟𑁆","𑀠𑁆","𑀡𑁆","𑀢𑁆","𑀣𑁆","𑀤𑁆","𑀥𑁆","𑀦𑁆","𑀧𑁆","𑀨𑁆","𑀩𑁆","𑀪𑁆","𑀫𑁆","𑀬𑁆","𑀭𑁆")), + BRAHMI_TOPHEX( + BRAHMI.BȍőnGlyphSetNumber10(), + BRAHMI.BȍőnGlyphSetNumber16().withAltGlyphSet(LATIN_TOP), + BRAHMI.BȍőnGlyphSetNumber27()), + */ - CYRILLIC(new BaseGlyphSetNumber("Ф","А","В","Г","Д","Є","Ѕ","З","И","Ѳ"), + CHINA( + new BaseGlyphSetNumber("零","一","二","三","四","五","六","七","八","九"), + LATIN_BASIC.BȍőnGlyphSetNumber16(), + null), + CHINA_FORMAL( + new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnChinaKey()))), + LATIN_BASIC.BȍőnGlyphSetNumber16(), + null), + CHINA_FORMAL_OLD( + new BaseGlyphSetNumber("零","壹","貳","參","肆","伍","陸","柒","捌","玖"), + LATIN_BASIC.BȍőnGlyphSetNumber16(), + null), + JAPAN( + CHINA.BȍőnGlyphSetNumber10(), + LATIN_BASIC.BȍőnGlyphSetNumber16(), + null), + JAPAN_FORMAL( + new BaseGlyphSetNumber("零","壱","弐","参","四","五","六","七","八","九"), + LATIN_BASIC.BȍőnGlyphSetNumber16(), + null), + + CYRILLIC( + new BaseGlyphSetNumber("Ф","А","В","Г","Д","Є","Ѕ","З","И","Ѳ"), LATIN_BASIC.BȍőnGlyphSetNumber16(), new BaseGlyphSetNumber("А","В","Г","Д","Є","Ѕ","З","И","Ѳ","І","К","Л","М","Н","Ѯ","Ѻ","П","Ч","Р","С","Т","Ѵ","Ф","Х","Ѱ","Ѿ","Ц")), - ARABIC(new BaseGlyphSetNumber("٠","١","٢","٣","٤","٥","٦","٧","٨","٩"), + ARABIC( + new BaseGlyphSetNumber("٠","١","٢","٣","٤","٥","٦","٧","٨","٩"), LATIN_BASIC.BȍőnGlyphSetNumber16(), new BaseGlyphSetNumber("ا","ب","ج","د","ه","و","ز","ح","ط","ي","ك","ل","م","ن","س","ع","ف","ص","ق","ر","ش","ت","ث","خ","ذ","ض","ظ"), true), - HEBREW(new BaseGlyphSetNumber("אֶפֶס","אֶחָד","שְׁתַּיִם","שְׁלֹשָׁה","אַרְבַּע‎","חֲמִשָּׁה‎","שֵׁשׁ‎","שִׁבְעָה","שְׁמוֹנֶה","תִּשְׁעָה‎").withSeperator(BãßBȍőnConstantsʸᴰ.STR_SPACE), + HEBREW( + new BaseGlyphSetNumber("אֶפֶס","אֶחָד","שְׁתַּיִם","שְׁלֹשָׁה","אַרְבַּע‎","חֲמִשָּׁה‎","שֵׁשׁ‎","שִׁבְעָה","שְׁמוֹנֶה","תִּשְׁעָה‎").withSeperator(BãßBȍőnConstantsʸᴰ.STR_SPACE), LATIN_BASIC.BȍőnGlyphSetNumber16(), new BaseGlyphSetNumber("א","ב","ג","ד","ה","ו","ז","ח","ט","י","כ","ל","מ","נ","ס ","ע","פ","צ","ק","ר","ש","ת","ך","ם","ן","ף","ץ"), true), diff --git a/main-gdxapp/assets/font/noto-sans-brahmi.ttf b/main-gdxapp/assets/font/noto-sans-brahmi.ttf new file mode 100644 index 0000000000000000000000000000000000000000..229af017adfeddea41f8e238547c3cb511cae0b2 GIT binary patch literal 41892 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 NjGvpPa0&0W{Q)fyvIYPE literal 0 HcmV?d00001