support for LatinExt-D
0
.gitignore
vendored
Normal file → Executable file
0
.idea/.name
generated
Normal file → Executable file
0
.idea/artifacts/FontDemoGDX.xml
generated
Normal file → Executable file
0
.idea/artifacts/TerrarumSansBitmap.xml
generated
Normal file → Executable file
0
.idea/codeStyles/Project.xml
generated
Normal file → Executable file
0
.idea/codeStyles/codeStyleConfig.xml
generated
Normal file → Executable file
0
.idea/kotlinc.xml
generated
Normal file → Executable file
0
.idea/libraries/GdxLib.xml
generated
Normal file → Executable file
9
.idea/libraries/KotlinJavaRuntime.xml
generated
Normal file → Executable file
@@ -3,10 +3,19 @@
|
|||||||
<CLASSES>
|
<CLASSES>
|
||||||
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-runtime.jar!/" />
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-runtime.jar!/" />
|
||||||
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-reflect.jar!/" />
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-reflect.jar!/" />
|
||||||
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib.jar!/" />
|
||||||
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-test.jar!/" />
|
||||||
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib-jdk7.jar!/" />
|
||||||
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib-jdk8.jar!/" />
|
||||||
</CLASSES>
|
</CLASSES>
|
||||||
<JAVADOC />
|
<JAVADOC />
|
||||||
<SOURCES>
|
<SOURCES>
|
||||||
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-runtime-sources.jar!/" />
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-runtime-sources.jar!/" />
|
||||||
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib-sources.jar!/" />
|
||||||
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-reflect-sources.jar!/" />
|
||||||
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-test-sources.jar!/" />
|
||||||
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib-jdk7-sources.jar!/" />
|
||||||
|
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib-jdk8-sources.jar!/" />
|
||||||
</SOURCES>
|
</SOURCES>
|
||||||
</library>
|
</library>
|
||||||
</component>
|
</component>
|
||||||
0
.idea/libraries/TesterLib.xml
generated
Normal file → Executable file
0
.idea/markdown-navigator.xml
generated
Normal file → Executable file
0
.idea/markdown-navigator/profiles_settings.xml
generated
Normal file → Executable file
2
.idea/misc.xml
generated
Normal file → Executable file
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8.0_242" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/out" />
|
<output url="file://$PROJECT_DIR$/out" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
||||||
0
.idea/modules.xml
generated
Normal file → Executable file
0
.idea/vcs.xml
generated
Normal file → Executable file
1122
.idea/workspace.xml
generated
Normal file → Executable file
0
BuildJAR_TerrarumSansBitmap.iml
Normal file → Executable file
0
CONTRIBUTING.md
Normal file → Executable file
0
CONTRIBUTORS.txt
Normal file → Executable file
0
FontDemoGDX.jar
Normal file → Executable file
0
FontTestGDX/FontTestGDX.iml
Normal file → Executable file
0
FontTestGDX/META-INF/MANIFEST.MF
Normal file → Executable file
0
FontTestGDX/src/FontTestGDX.kt
Normal file → Executable file
0
LICENSE.md
Normal file → Executable file
0
META-INF/MANIFEST.MF
Normal file → Executable file
0
PUA_allocation_chart.xlsx
Normal file → Executable file
0
alignment_illustration.jpg
Normal file → Executable file
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
0
assets/ascii_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 320 KiB After Width: | Height: | Size: 320 KiB |
0
assets/cjkpunct.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
0
assets/cyrilic_bulgarian_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
0
assets/cyrilic_serbian_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
0
assets/cyrilic_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 380 KiB After Width: | Height: | Size: 380 KiB |
0
assets/devanagari_bengali_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 320 KiB After Width: | Height: | Size: 320 KiB |
0
assets/diacritical_marks_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 140 KiB After Width: | Height: | Size: 140 KiB |
0
assets/fullwidth_forms.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
0
assets/futhark.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 68 KiB |
0
assets/greek_polytonic_xyswap_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 320 KiB After Width: | Height: | Size: 320 KiB |
0
assets/greek_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
0
assets/hangul_johab.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 1.5 MiB |
0
assets/hayeren_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
BIN
assets/insular_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 1.8 KiB |
0
assets/ipa_ext_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 220 KiB After Width: | Height: | Size: 220 KiB |
0
assets/kana.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 210 KiB After Width: | Height: | Size: 210 KiB |
0
assets/kartuli_allcaps_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
0
assets/kartuli_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
BIN
assets/latinExtD_variable.tga
Normal file
|
After Width: | Height: | Size: 280 KiB |
0
assets/latinExt_additional_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 320 KiB After Width: | Height: | Size: 320 KiB |
0
assets/puae000-e0ff.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 324 KiB After Width: | Height: | Size: 324 KiB |
0
assets/richtext_furigana.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
0
assets/thai_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
0
assets/tsalagi_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
0
assets/unipunct_variable.tga
Normal file → Executable file
|
Before Width: | Height: | Size: 200 KiB After Width: | Height: | Size: 200 KiB |
0
assets/wenquanyi.tga.gz
Normal file → Executable file
BIN
demo.PNG
Normal file → Executable file
|
Before Width: | Height: | Size: 146 KiB After Width: | Height: | Size: 146 KiB |
6
demotext.txt
Normal file → Executable file
@@ -41,7 +41,7 @@ How multilingual? Real multilingual!
|
|||||||
სწრაფი ყავისფერი მელა გადაახტა ზარმაც ძაღლს ᲘᲜᲢᲔᲚ ᲞᲔᲜᲢᲘᲣᲛᲘ ᲛᲘᲙᲠᲝᲞᲠᲝᲪᲔᲡᲝᲠᲘ
|
სწრაფი ყავისფერი მელა გადაახტა ზარმაც ძაღლს ᲘᲜᲢᲔᲚ ᲞᲔᲜᲢᲘᲣᲛᲘ ᲛᲘᲙᲠᲝᲞᲠᲝᲪᲔᲡᲝᲠᲘ
|
||||||
ऋषियों को सताने वाले दुष्ट राक्षसों के राजा रावण का सर्वनाश करने वाले विष्णुवतार भगवान श्रीराम अयोध्या के महाराज दशरथ के
|
ऋषियों को सताने वाले दुष्ट राक्षसों के राजा रावण का सर्वनाश करने वाले विष्णुवतार भगवान श्रीराम अयोध्या के महाराज दशरथ के
|
||||||
Kæmi ný öxi hér, ykist þjófum nú bæði víl og ádrepa
|
Kæmi ný öxi hér, ykist þjófum nú bæði víl og ádrepa
|
||||||
Ċuaiġ bé ṁórṡáċ le dlúṫspád fíorḟinn trí hata mo ḋea-ṗorcáin ḃig
|
Ċuaiġ bé ṁórṡáċ le dlúṫspád fíoꝛḟinn trí hata mo ḋea-ṗoꝛcáin ḃig
|
||||||
あめつちほしそら やまかはみねたに くもきりむろこけ ひといぬうへすゑ ゆわさるおふせよ えの𛀁をなれゐて
|
あめつちほしそら やまかはみねたに くもきりむろこけ ひといぬうへすゑ ゆわさるおふせよ えの𛀁をなれゐて
|
||||||
トリナクコヱス ユメサマセ ミヨアケワタル ヒンカシヲ ソライロハエテ オキツヘニ ホフネムレヰヌ モヤノウチ
|
トリナクコヱス ユメサマセ ミヨアケワタル ヒンカシヲ ソライロハエテ オキツヘニ ホフネムレヰヌ モヤノウチ
|
||||||
田居に出で 菜摘むわれをぞ 君召すと 求食り追ひゆく 山城の 打酔へる子ら 藻葉干せよ え舟繋けぬ
|
田居に出で 菜摘むわれをぞ 君召すと 求食り追ひゆく 山城の 打酔へる子ら 藻葉干せよ え舟繋けぬ
|
||||||
@@ -109,8 +109,8 @@ How multilingual? Real multilingual!
|
|||||||
Cyrillic Supplement Armenian Devanagari Bengali Thai Georgian Hangul Jamo Cherokee Runic
|
Cyrillic Supplement Armenian Devanagari Bengali Thai Georgian Hangul Jamo Cherokee Runic
|
||||||
Georgian Extended Greek Extended General Punctuations Superscripts and Subscripts CJK Symbols
|
Georgian Extended Greek Extended General Punctuations Superscripts and Subscripts CJK Symbols
|
||||||
Latin Extended-C Kana Hangul Compatibility Jamo Kana Phonetic Extensions CJK Unihan Extension A
|
Latin Extended-C Kana Hangul Compatibility Jamo Kana Phonetic Extensions CJK Unihan Extension A
|
||||||
CJK Unihan Hangul Jamo Extended-A Hangul Syllables Hangul Jamo Extended-B Fullwidth Forms
|
CJK Unihan Latin Extended-D Hangul Jamo Extended-A Hangul Syllables Hangul Jamo Extended-B
|
||||||
Kana Supplement
|
Fullwidth Forms Kana Supplement
|
||||||
|
|
||||||
GitHub’s issue page is open! You can report any errors, or leave suggestions.
|
GitHub’s 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
|
You can help this font to be more versatile. (for more languages, more frameworks) Clone this repo, make
|
||||||
|
|||||||
0
font_drawing_template.png
Normal file → Executable file
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
0
glyph_height_pos_annotation.png
Normal file → Executable file
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
0
samples/README.md
Normal file → Executable file
0
samples/wikipedia_x86.png
Normal file → Executable file
|
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 75 KiB |
0
src/net/torvald/terrarumsansbitmap/GlyphProps.kt
Normal file → Executable file
44
src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt
Normal file → Executable file
@@ -224,12 +224,13 @@ class GameFontBase(
|
|||||||
private fun isColourCode(c: CodePoint) = c == 0x100000 || c in 0x10F000..0x10FFFF
|
private fun isColourCode(c: CodePoint) = c == 0x100000 || c in 0x10F000..0x10FFFF
|
||||||
private fun isCharsetOverride(c: CodePoint) = c in 0xFFFC0..0xFFFFF
|
private fun isCharsetOverride(c: CodePoint) = c in 0xFFFC0..0xFFFFF
|
||||||
private fun isCherokee(c: CodePoint) = c in codeRange[SHEET_TSALAGI_VARW]
|
private fun isCherokee(c: CodePoint) = c in codeRange[SHEET_TSALAGI_VARW]
|
||||||
private fun isInsular(c: CodePoint) = c == 0x1D79 || c in 0xA779..0xA787
|
private fun isInsular(c: CodePoint) = c == 0x1D79
|
||||||
private fun isNagariBengali(c: CodePoint) = c in codeRange[SHEET_NAGARI_BENGALI_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 isKartvelianCaps(c: CodePoint) = c in codeRange[SHEET_KARTULI_CAPS_VARW]
|
||||||
private fun isDiacriticalMarks(c: CodePoint) = c in codeRange[SHEET_DIACRITICAL_MARKS_VARW]
|
private fun isDiacriticalMarks(c: CodePoint) = c in codeRange[SHEET_DIACRITICAL_MARKS_VARW]
|
||||||
private fun isPolytonicGreek(c: CodePoint) = c in codeRange[SHEET_GREEK_POLY_VARW]
|
private fun isPolytonicGreek(c: CodePoint) = c in codeRange[SHEET_GREEK_POLY_VARW]
|
||||||
private fun isExtC(c: CodePoint) = c in codeRange[SHEET_EXTC_VARW]
|
private fun isExtC(c: CodePoint) = c in codeRange[SHEET_EXTC_VARW]
|
||||||
|
private fun isExtD(c: CodePoint) = c in codeRange[SHEET_EXTD_VARW]
|
||||||
private fun isHangulCompat(c: CodePoint) = c in codeRangeHangulCompat
|
private fun isHangulCompat(c: CodePoint) = c in codeRangeHangulCompat
|
||||||
|
|
||||||
// underscored name: not a charset
|
// underscored name: not a charset
|
||||||
@@ -310,7 +311,10 @@ class GameFontBase(
|
|||||||
private fun extCIndexX(c: CodePoint) = (c - 0x2C60) % 16
|
private fun extCIndexX(c: CodePoint) = (c - 0x2C60) % 16
|
||||||
private fun extCIndexY(c: CodePoint) = (c - 0x2C60) / 16
|
private fun extCIndexY(c: CodePoint) = (c - 0x2C60) / 16
|
||||||
|
|
||||||
private val lowHeightLetters = "acegijmnopqrsuvwxyzɱɳʙɾɽʒʂʐʋɹɻɥɟɡɢʛȵɲŋɴʀɕʑçʝxɣχʁʜʍɰʟɨʉɯuʊøɘɵɤəɛœɜɞʌɔæɐɶɑɒɚɝɩɪʅʈʏʞⱥⱦⱱⱳⱴⱶⱷⱸⱺⱻ".toSortedSet()
|
private fun extDIndexX(c: CodePoint) = (c - 0xA720) % 16
|
||||||
|
private fun extDIndexY(c: CodePoint) = (c - 0xA720) / 16
|
||||||
|
|
||||||
|
private val lowHeightLetters = "acegijmnopqrsuvwxyzɱɳʙɾɽʒʂʐʋɹɻɥɟɡɢʛȵɲŋɴʀɕʑçʝxɣχʁʜʍɰʟɨʉɯuʊøɘɵɤəɛœɜɞʌɔæɐɶɑɒɚɝɩɪʅʈʏʞⱥⱦⱱⱳⱴⱶⱷⱸⱺⱻꜥꜩꜫꜭꜯꜰꜱꜳꜵꜷꜹꜻꜽꜿꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝫꝯꝳꝴꝵꝶꝷꝺꝼꝿꞁꞃꞅꞇꞑꞓꞔꞛꞝꞟꞡꞥꞧꞩꞮ\uA7AFꞷ\uA7B9\uA7C3\uA7CAꟺ".toSortedSet()
|
||||||
/**
|
/**
|
||||||
* lowercase AND the height is equal to x-height (e.g. lowercase B, D, F, H, K, L, ... does not count
|
* lowercase AND the height is equal to x-height (e.g. lowercase B, D, F, H, K, L, ... does not count
|
||||||
*/
|
*/
|
||||||
@@ -454,7 +458,8 @@ class GameFontBase(
|
|||||||
SHEET_KARTULI_CAPS_VARW,
|
SHEET_KARTULI_CAPS_VARW,
|
||||||
SHEET_DIACRITICAL_MARKS_VARW,
|
SHEET_DIACRITICAL_MARKS_VARW,
|
||||||
SHEET_GREEK_POLY_VARW,
|
SHEET_GREEK_POLY_VARW,
|
||||||
SHEET_EXTC_VARW
|
SHEET_EXTC_VARW,
|
||||||
|
SHEET_EXTD_VARW
|
||||||
)
|
)
|
||||||
private val autoShiftDownOnLowercase = arrayOf(
|
private val autoShiftDownOnLowercase = arrayOf(
|
||||||
SHEET_DIACRITICAL_MARKS_VARW
|
SHEET_DIACRITICAL_MARKS_VARW
|
||||||
@@ -488,7 +493,8 @@ class GameFontBase(
|
|||||||
"kartuli_allcaps_variable.tga",
|
"kartuli_allcaps_variable.tga",
|
||||||
"diacritical_marks_variable.tga",
|
"diacritical_marks_variable.tga",
|
||||||
"greek_polytonic_xyswap_variable.tga",
|
"greek_polytonic_xyswap_variable.tga",
|
||||||
"latinExtC_variable.tga"
|
"latinExtC_variable.tga",
|
||||||
|
"latinExtD_variable.tga"
|
||||||
)
|
)
|
||||||
private val codeRange = arrayOf( // MUST BE MATCHING WITH SHEET INDICES!!
|
private val codeRange = arrayOf( // MUST BE MATCHING WITH SHEET INDICES!!
|
||||||
0..0xFF, // SHEET_ASCII_VARW
|
0..0xFF, // SHEET_ASCII_VARW
|
||||||
@@ -517,7 +523,8 @@ class GameFontBase(
|
|||||||
0x1C90..0x1CBF, // SHEET_KARTULI_CAPS_VARW
|
0x1C90..0x1CBF, // SHEET_KARTULI_CAPS_VARW
|
||||||
0x300..0x36F, // SHEET_DIACRITICAL_MARKS_VARW
|
0x300..0x36F, // SHEET_DIACRITICAL_MARKS_VARW
|
||||||
0x1F00..0x1FFF, // SHEET_GREEK_POLY_VARW
|
0x1F00..0x1FFF, // SHEET_GREEK_POLY_VARW
|
||||||
0x2C60..0x2C7F // SHEET_EXTC_VARW
|
0x2C60..0x2C7F, // SHEET_EXTC_VARW
|
||||||
|
0xA720..0xA7FF // SHEET_EXTD_VARW
|
||||||
)
|
)
|
||||||
private val codeRangeHangulCompat = 0x3130..0x318F
|
private val codeRangeHangulCompat = 0x3130..0x318F
|
||||||
/** Props of all printable Unicode points. */
|
/** Props of all printable Unicode points. */
|
||||||
@@ -955,6 +962,8 @@ class GameFontBase(
|
|||||||
return SHEET_GREEK_POLY_VARW
|
return SHEET_GREEK_POLY_VARW
|
||||||
else if (isExtC(c))
|
else if (isExtC(c))
|
||||||
return SHEET_EXTC_VARW
|
return SHEET_EXTC_VARW
|
||||||
|
else if (isExtD(c))
|
||||||
|
return SHEET_EXTD_VARW
|
||||||
else
|
else
|
||||||
return SHEET_UNKNOWN
|
return SHEET_UNKNOWN
|
||||||
// fixed width
|
// fixed width
|
||||||
@@ -1060,6 +1069,10 @@ class GameFontBase(
|
|||||||
sheetX = extCIndexX(ch)
|
sheetX = extCIndexX(ch)
|
||||||
sheetY = extCIndexY(ch)
|
sheetY = extCIndexY(ch)
|
||||||
}
|
}
|
||||||
|
SHEET_EXTD_VARW -> {
|
||||||
|
sheetX = extDIndexX(ch)
|
||||||
|
sheetY = extDIndexY(ch)
|
||||||
|
}
|
||||||
else -> {
|
else -> {
|
||||||
sheetX = ch % 16
|
sheetX = ch % 16
|
||||||
sheetY = ch / 16
|
sheetY = ch / 16
|
||||||
@@ -1543,8 +1556,8 @@ class GameFontBase(
|
|||||||
private fun Int.forceOpaque() = this.and(0xFFFFFF00.toInt()) or 0xFF
|
private fun Int.forceOpaque() = this.and(0xFFFFFF00.toInt()) or 0xFF
|
||||||
|
|
||||||
private infix fun Int.colorTimes(other: Int): Int {
|
private infix fun Int.colorTimes(other: Int): Int {
|
||||||
val thisBytes = IntArray(4, { this.ushr(it * 8).and(255) })
|
val thisBytes = IntArray(4) { this.ushr(it * 8).and(255) }
|
||||||
val otherBytes = IntArray(4, { other.ushr(it * 8).and(255) })
|
val otherBytes = IntArray(4) { other.ushr(it * 8).and(255) }
|
||||||
|
|
||||||
return (thisBytes[0] times256 otherBytes[0]) or
|
return (thisBytes[0] times256 otherBytes[0]) or
|
||||||
(thisBytes[1] times256 otherBytes[1]).shl(8) or
|
(thisBytes[1] times256 otherBytes[1]).shl(8) or
|
||||||
@@ -1554,15 +1567,11 @@ class GameFontBase(
|
|||||||
|
|
||||||
private infix fun Int.times256(other: Int) = multTable255[this][other]
|
private infix fun Int.times256(other: Int) = multTable255[this][other]
|
||||||
|
|
||||||
private val multTable255 = Array(256,
|
private val multTable255 = Array(256) { left ->
|
||||||
{ left ->
|
IntArray(256) { right ->
|
||||||
IntArray(256,
|
(255f * (left / 255f).times(right / 255f)).roundToInt()
|
||||||
{ right ->
|
}
|
||||||
(255f * (left / 255f).times(right / 255f)).roundToInt()
|
}
|
||||||
}
|
|
||||||
)
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
/** High surrogate comes before the low. */
|
/** High surrogate comes before the low. */
|
||||||
@@ -1689,12 +1698,13 @@ class GameFontBase(
|
|||||||
internal val SHEET_BULGARIAN_VARW = 18
|
internal val SHEET_BULGARIAN_VARW = 18
|
||||||
internal val SHEET_SERBIAN_VARW = 19
|
internal val SHEET_SERBIAN_VARW = 19
|
||||||
internal val SHEET_TSALAGI_VARW = 20
|
internal val SHEET_TSALAGI_VARW = 20
|
||||||
internal val SHEET_INSUAR_VARW = 21
|
internal val SHEET_INSUAR_VARW = 21 // currently only for U+1D79
|
||||||
internal val SHEET_NAGARI_BENGALI_VARW=22
|
internal val SHEET_NAGARI_BENGALI_VARW=22
|
||||||
internal val SHEET_KARTULI_CAPS_VARW = 23
|
internal val SHEET_KARTULI_CAPS_VARW = 23
|
||||||
internal val SHEET_DIACRITICAL_MARKS_VARW = 24
|
internal val SHEET_DIACRITICAL_MARKS_VARW = 24
|
||||||
internal val SHEET_GREEK_POLY_VARW = 25
|
internal val SHEET_GREEK_POLY_VARW = 25
|
||||||
internal val SHEET_EXTC_VARW = 26
|
internal val SHEET_EXTC_VARW = 26
|
||||||
|
internal val SHEET_EXTD_VARW = 27
|
||||||
|
|
||||||
internal val SHEET_UNKNOWN = 254
|
internal val SHEET_UNKNOWN = 254
|
||||||
|
|
||||||
|
|||||||
0
src/net/torvald/terrarumsansbitmap/gdx/PixmapRegionPack.kt
Normal file → Executable file
0
src/net/torvald/terrarumsansbitmap/gdx/TextureRegionPack.kt
Normal file → Executable file
0
src/net/torvald/terrarumsansbitmap/readme.md
Normal file → Executable file
0
terrarum_sans_cyrillic_2.png
Normal file → Executable file
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
BIN
testing.PNG
Normal file → Executable file
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 14 KiB |
12
testtext.txt
Normal file → Executable file
@@ -1,10 +1,4 @@
|
|||||||
re ʘ, ʇ, ʗ, and ʖ, al
|
Rotund R
|
||||||
ɓ ɗ ɠ
|
|
||||||
ɐ ɔ ə ɟ ɥ ɯ ɹ ʇ ʌ ʍ ʎ
|
|
||||||
Vʷ[kʰuˣt̪s̟] and Vʷ[kʰʉˣt͜ʃ].
|
|
||||||
|
|
||||||
ʡ̆
|
CUꝚIOIUSTOꝚVALD
|
||||||
|
Cuꝛioustoꝛvald
|
||||||
Labiodental flap [ⱱ] U+2C71
|
|
||||||
|
|
||||||
acegijmnopqrsuvwxyzɱɳʙɾɽʒʂʐʋɹɻɥɟɡɢʛȵɲŋɴʀɕʑçʝxɣχʁʜʍɰʟɨʉɯuʊøɘɵɤəɛœɜɞʌɔæɐɶɑɒɚɝɩɪʅʈʏʞⱥⱦⱱⱳⱴⱶⱷⱸⱺⱻ
|
|
||||||
|
|||||||
0
width_bit_encoding_annotated.png
Normal file → Executable file
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |