Compare commits
36 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9ca70a601b | ||
|
|
6cacc56ea8 | ||
|
|
6d142f082c | ||
|
|
db3b13800b | ||
|
|
7fe0cc9527 | ||
|
|
b62fee89cb | ||
|
|
d88443814f | ||
|
|
dfeab56bb5 | ||
|
|
b623727b1a | ||
|
|
048b683cb2 | ||
|
|
35b384af53 | ||
|
|
cebfa27d59 | ||
|
|
c57de3a21f | ||
|
|
4ad5e47758 | ||
|
|
f06ed4529c | ||
|
|
8da321bdc2 | ||
|
|
920b11e3e9 | ||
|
|
d8dd88c6a7 | ||
|
|
ba28b6d10c | ||
|
|
50ae1789bf | ||
|
|
bd9784a516 | ||
|
|
0bafde9914 | ||
|
|
b3bfe6035f | ||
|
|
c3cf795e9a | ||
|
|
cefc7860b3 | ||
|
|
b8963cd3a9 | ||
|
|
32290dd504 | ||
|
|
2702f850c2 | ||
|
|
2e10249f27 | ||
|
|
04a375328c | ||
|
|
97ef1ddc27 | ||
|
|
4057d86176 | ||
|
|
654f7b9ac4 | ||
|
|
91afc4af31 | ||
|
|
1440908820 | ||
|
|
4ce58cf5d1 |
5
.gitignore
vendored
@@ -3,4 +3,7 @@ demo/lib/*
|
||||
demo/assets/*
|
||||
out/*
|
||||
lib/*
|
||||
Terrarum-sans-bitmap*.zip
|
||||
Terrarum-sans-bitmap*.zip
|
||||
TerrarumSansBitmap*.jar
|
||||
Font*.jar
|
||||
tmp_*
|
||||
|
||||
1
.idea/libraries/GdxLib.xml
generated
@@ -9,6 +9,7 @@
|
||||
</NATIVE>
|
||||
<SOURCES>
|
||||
<root url="file://$PROJECT_DIR$/lib" />
|
||||
<root url="jar://$PROJECT_DIR$/lib/gdx.jar!/" />
|
||||
</SOURCES>
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib" recursive="false" />
|
||||
<jarDirectory url="file://$PROJECT_DIR$/lib" recursive="false" type="SOURCES" />
|
||||
|
||||
553
.idea/workspace.xml
generated
@@ -8,13 +8,7 @@
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="22c5bc80-996c-4846-b173-7dc8c2096fe3" name="Default" comment="">
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/CONTRIBUTING.md" beforeDir="false" afterPath="$PROJECT_DIR$/CONTRIBUTING.md" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/FontTestGDX/demotext.txt" beforeDir="false" afterPath="$PROJECT_DIR$/FontTestGDX/demotext.txt" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/FontTestGDX/lib/TerrarumSansBitmap.jar" beforeDir="false" afterPath="$PROJECT_DIR$/FontTestGDX/lib/TerrarumSansBitmap.jar" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/assets/devanagari_bengali_variable.tga" beforeDir="false" afterPath="$PROJECT_DIR$/assets/devanagari_bengali_variable.tga" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/assets/thai_variable.tga" beforeDir="false" afterPath="$PROJECT_DIR$/assets/thai_variable.tga" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/demo.PNG" beforeDir="false" afterPath="$PROJECT_DIR$/demo.PNG" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/GlyphProps.kt" beforeDir="false" afterPath="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/GlyphProps.kt" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt" beforeDir="false" afterPath="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt" afterDir="false" />
|
||||
</list>
|
||||
<ignored path="$PROJECT_DIR$/out/" />
|
||||
@@ -32,11 +26,23 @@
|
||||
<splitter split-orientation="horizontal" split-proportion="0.5">
|
||||
<split-first>
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file leaf-file-name="GameFontBase.kt" pinned="false" current-in-tab="false">
|
||||
<file leaf-file-name="GameFontBase.kt" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="456">
|
||||
<caret line="836" column="26" selection-start-line="836" selection-start-column="26" selection-end-line="836" selection-end-column="26" />
|
||||
<state relative-caret-position="372">
|
||||
<caret line="372" lean-forward="true" selection-start-line="372" selection-end-line="372" />
|
||||
<folding>
|
||||
<element signature="e#1207#1689#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="TextureRegionPack.kt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/TextureRegionPack.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="338">
|
||||
<caret line="50" column="38" selection-start-line="50" selection-start-column="38" selection-end-line="50" selection-end-column="38" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
@@ -44,22 +50,17 @@
|
||||
<file leaf-file-name="GlyphProps.kt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/GlyphProps.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="156">
|
||||
<caret line="12" column="33" selection-start-line="12" selection-start-column="12" selection-end-line="12" selection-end-column="33" />
|
||||
<state relative-caret-position="91">
|
||||
<caret line="7" column="22" selection-start-line="7" selection-start-column="22" selection-end-line="7" selection-end-column="22" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="demo.PNG" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/demo.PNG">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="GameFontBase.kt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="299">
|
||||
<caret line="45" column="67" selection-start-line="45" selection-start-column="67" selection-end-line="45" selection-end-column="67" />
|
||||
<state relative-caret-position="6084">
|
||||
<caret line="490" selection-start-line="490" selection-end-line="490" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
@@ -71,8 +72,8 @@
|
||||
<file leaf-file-name="FontTestGDX.kt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/FontTestGDX/src/FontTestGDX.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="547">
|
||||
<caret line="128" column="31" lean-forward="true" selection-start-line="128" selection-start-column="31" selection-end-line="128" selection-end-column="31" />
|
||||
<state relative-caret-position="338">
|
||||
<caret line="33" column="38" selection-start-line="33" selection-start-column="38" selection-end-line="33" selection-end-column="38" />
|
||||
<folding>
|
||||
<element signature="e#0#384#0" expanded="true" />
|
||||
</folding>
|
||||
@@ -80,20 +81,41 @@
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="demotext.txt" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/FontTestGDX/demotext.txt">
|
||||
<file leaf-file-name="GameFontBase.kt" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state>
|
||||
<caret column="121" selection-start-column="121" selection-end-column="121" />
|
||||
<state relative-caret-position="421">
|
||||
<caret line="90" column="332" selection-start-line="90" selection-start-column="332" selection-end-line="90" selection-end-column="332" />
|
||||
<folding>
|
||||
<element signature="e#1207#1689#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="GameFontBase.kt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt">
|
||||
<file leaf-file-name="PixmapRegionPack.kt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/PixmapRegionPack.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="547">
|
||||
<caret line="494" column="101" selection-start-line="494" selection-start-column="101" selection-end-line="494" selection-end-column="101" />
|
||||
<state relative-caret-position="624">
|
||||
<caret line="72" column="25" selection-start-line="72" selection-start-column="25" selection-end-line="72" selection-end-column="25" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="testtext.txt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/testtext.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="117">
|
||||
<caret line="9" column="91" selection-start-line="9" selection-start-column="91" selection-end-line="9" selection-end-column="91" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="demotext.txt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/demotext.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1014">
|
||||
<caret line="78" column="53" selection-start-line="78" selection-start-column="53" selection-end-line="78" selection-end-column="53" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
@@ -102,8 +124,8 @@
|
||||
<entry file="file://$PROJECT_DIR$/CONTRIBUTING.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
|
||||
<state split_layout="FIRST">
|
||||
<first_editor relative-caret-position="402">
|
||||
<caret line="62" column="132" lean-forward="true" selection-start-line="62" selection-start-column="132" selection-end-line="62" selection-end-column="132" />
|
||||
<first_editor relative-caret-position="1235">
|
||||
<caret line="95" column="30" selection-start-line="95" selection-start-column="30" selection-end-line="95" selection-end-column="30" />
|
||||
</first_editor>
|
||||
<second_editor>
|
||||
<js_state />
|
||||
@@ -112,12 +134,21 @@
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="CONTRIBUTORS.txt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/CONTRIBUTORS.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state>
|
||||
<caret column="23" selection-start-column="23" selection-end-column="23" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="README.md" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
|
||||
<state split_layout="FIRST">
|
||||
<first_editor relative-caret-position="325">
|
||||
<caret line="25" column="97" selection-start-line="25" selection-start-column="97" selection-end-line="25" selection-end-column="97" />
|
||||
<first_editor relative-caret-position="143">
|
||||
<caret line="11" column="175" selection-start-line="11" selection-start-column="175" selection-end-line="11" selection-end-column="175" />
|
||||
</first_editor>
|
||||
<second_editor>
|
||||
<js_state />
|
||||
@@ -134,47 +165,50 @@
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Kotlin Class" />
|
||||
<option value="Interface" />
|
||||
<option value="Class" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="FindInProjectRecents">
|
||||
<findStrings>
|
||||
<find>getColour</find>
|
||||
<find>.094</find>
|
||||
<find>ө</find>
|
||||
<find>ď</find>
|
||||
<find>ñ</find>
|
||||
<find>getSheetT</find>
|
||||
<find>Unexpected</find>
|
||||
<find>Unexp</find>
|
||||
<find>fun getSh</find>
|
||||
<find>codeRange</find>
|
||||
<find>isHangul</find>
|
||||
<find>Ᏽ</find>
|
||||
<find>toColo</find>
|
||||
<find>fun relo</find>
|
||||
<find>3633</find>
|
||||
<find>println(</find>
|
||||
<find>Width ta</find>
|
||||
<find>isXYSwapped</find>
|
||||
<find>xySw</find>
|
||||
<find>getWidth</find>
|
||||
<find>getWidthOfCharSeq</find>
|
||||
<find>makeShadow</find>
|
||||
<find>glyphWidthBuffer</find>
|
||||
<find>GlyphProps.LE</find>
|
||||
<find>buildWidthTable</find>
|
||||
<find>lastNonDiacriticChar</find>
|
||||
<find>c.toInt()</find>
|
||||
<find>har.toInt()</find>
|
||||
<find>oldCharSequence</find>
|
||||
<find>charSeq.toCodeP</find>
|
||||
<find>resetH</find>
|
||||
<find>HashMap</find>
|
||||
<find>drawPixmap</find>
|
||||
<find>RGBA</find>
|
||||
<find>makeShado</find>
|
||||
<find>pixmapHolder</find>
|
||||
<find>isColourCode</find>
|
||||
<find>makeSha</find>
|
||||
<find>toRGBA</find>
|
||||
<find>posXbuff</find>
|
||||
<find>buildWidthAndPos</find>
|
||||
<find>flagMake</find>
|
||||
<find>pixmapHolder?.dis</find>
|
||||
<find>glyphProps[</find>
|
||||
<find>textCache</find>
|
||||
<find>glyphProps</find>
|
||||
<find>(c: Int)</find>
|
||||
<find>hashC</find>
|
||||
<find>TreeNode</find>
|
||||
<find>sear</find>
|
||||
<find>fun draw</find>
|
||||
<find>println</find>
|
||||
<find>!!</find>
|
||||
<find>ArrayList<Int></find>
|
||||
<find>appConfig.height</find>
|
||||
<find>textBuffer</find>
|
||||
<find>no stan</find>
|
||||
</findStrings>
|
||||
<replaceStrings>
|
||||
<replace>.141</replace>
|
||||
<replace>c</replace>
|
||||
<replace>har</replace>
|
||||
<replace>TEXH</replace>
|
||||
<replace>(c: CodePoint)</replace>
|
||||
</replaceStrings>
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
@@ -189,12 +223,21 @@
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/testbed/FontTestGDX.kt" />
|
||||
<option value="$PROJECT_DIR$/LICENSE.md" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt" />
|
||||
<option value="$PROJECT_DIR$/FontTestGDX/src/FontTestGDX.kt" />
|
||||
<option value="$PROJECT_DIR$/README.md" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/GlyphProps.kt" />
|
||||
<option value="$PROJECT_DIR$/CONTRIBUTING.md" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt" />
|
||||
<option value="$PROJECT_DIR$/FontTestGDX/demotext.txt" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/GameFontBase.kt" />
|
||||
<option value="$PROJECT_DIR$/CONTRIBUTORS.txt" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/GlyphProps.kt" />
|
||||
<option value="$PROJECT_DIR$/README.md" />
|
||||
<option value="$PROJECT_DIR$/testtext.txt" />
|
||||
<option value="$PROJECT_DIR$/FontTestGDX/src/FontTestGDX.kt" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/TextureRegionPack.kt" />
|
||||
<option value="$PROJECT_DIR$/CONTRIBUTING.md" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/PixmapRegionPack.kt" />
|
||||
<option value="$PROJECT_DIR$/demotext.txt" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/AgedItem.java" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/RedBlackNode.java" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/RedBlackTree.java" />
|
||||
<option value="$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
@@ -209,7 +252,6 @@
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="PackagesPane" />
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
@@ -239,23 +281,33 @@
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="terrarumsansbitmap" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="BuildJAR_TerrarumSansBitmap" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Terrarum-sans-bitmap" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="terrarumsansbitmap" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="gdx" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
</expand>
|
||||
<select />
|
||||
</subPane>
|
||||
</pane>
|
||||
<pane id="PackagesPane" />
|
||||
<pane id="Scope" />
|
||||
</panes>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="SearchEverywhereHistoryKey" value="soft wr	ACTION	EditorToggleUseSoftWraps" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/FontTestGDX" />
|
||||
<property name="SearchEverywhereHistoryKey" value="HashMap	PSI	JAVA://java.util.HashMap soft wr	ACTION	EditorToggleUseSoftWraps" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/lib/gdx.jar!/" />
|
||||
<property name="project.structure.last.edited" value="Artifacts" />
|
||||
<property name="project.structure.proportion" value="0.15" />
|
||||
<property name="project.structure.side.proportion" value="0.32068965" />
|
||||
<property name="settings.editor.selected.configurable" value="preferences.lookFeel" />
|
||||
<property name="settings.editor.selected.configurable" value="preferences.language.Kotlin" />
|
||||
</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="MoveFile.RECENT_KEYS">
|
||||
<recent name="C:\Users\minjaesong\Documents\Terrarum-sans-bitmap\" />
|
||||
<recent name="C:\Users\minjaesong\Documents\Terrarum-sans-bitmap" />
|
||||
<recent name="C:\Users\minjaesong\Documents\Terrarum-sans-bitmap\FontTestGDX\src" />
|
||||
</key>
|
||||
</component>
|
||||
@@ -310,6 +362,16 @@
|
||||
<option name="Make" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<configuration default="true" type="JetRunConfigurationType" factoryName="Kotlin">
|
||||
<module name="BuildJAR_TerrarumSansBitmap" />
|
||||
<option name="VM_PARAMETERS" />
|
||||
<option name="PROGRAM_PARAMETERS" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="WORKING_DIRECTORY" />
|
||||
</configuration>
|
||||
<configuration default="true" type="KotlinStandaloneScriptRunConfigurationType" factoryName="Kotlin script">
|
||||
<option name="filePath" />
|
||||
<option name="vmParameters" />
|
||||
@@ -400,16 +462,6 @@
|
||||
<envs />
|
||||
<method />
|
||||
</configuration>
|
||||
<configuration default="true" type="JetRunConfigurationType" factoryName="Kotlin">
|
||||
<module name="BuildJAR_TerrarumSansBitmap" />
|
||||
<option name="VM_PARAMETERS" />
|
||||
<option name="PROGRAM_PARAMETERS" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="WORKING_DIRECTORY" />
|
||||
</configuration>
|
||||
<configuration default="true" type="Remote" factoryName="Remote">
|
||||
<option name="USE_SOCKET_TRANSPORT" value="true" />
|
||||
<option name="SERVER_MODE" value="false" />
|
||||
@@ -470,51 +522,27 @@
|
||||
<layout>
|
||||
<window_info anchor="right" id="Palette" order="3" />
|
||||
<window_info anchor="bottom" id="TODO" order="6" />
|
||||
<window_info anchor="bottom" id="Messages" order="7" weight="0.3283859" />
|
||||
<window_info anchor="right" id="Palette	" order="3" />
|
||||
<window_info anchor="bottom" id="Event Log" order="7" side_tool="true" />
|
||||
<window_info anchor="right" id="Maven Projects" order="3" />
|
||||
<window_info anchor="bottom" id="Messages" order="9" visible="true" weight="0.20779221" />
|
||||
<window_info anchor="right" id="Palette	" order="5" />
|
||||
<window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
|
||||
<window_info anchor="right" id="Maven Projects" order="4" />
|
||||
<window_info anchor="bottom" id="Run" order="2" weight="0.2591522" />
|
||||
<window_info anchor="bottom" id="Version Control" order="7" />
|
||||
<window_info anchor="bottom" id="Version Control" order="8" />
|
||||
<window_info anchor="bottom" id="Terminal" order="7" />
|
||||
<window_info id="Designer" order="2" />
|
||||
<window_info content_ui="combo" id="Project" order="0" weight="0.13859275" />
|
||||
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info id="UI Designer" order="2" />
|
||||
<window_info active="true" anchor="bottom" id="Debug" order="3" visible="true" weight="0.23005566" />
|
||||
<window_info id="Favorites" order="2" side_tool="true" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
||||
<window_info anchor="right" id="Commander" order="0" weight="0.4" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.09008529" />
|
||||
<window_info anchor="bottom" id="Find" order="1" weight="0.32931355" />
|
||||
</layout>
|
||||
<layout-to-restore>
|
||||
<window_info anchor="right" id="Palette" order="3" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Version Control" order="9" />
|
||||
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.1369936" />
|
||||
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
||||
<window_info anchor="right" id="Commander" order="0" weight="0.4" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info anchor="bottom" id="TODO" order="6" />
|
||||
<window_info anchor="bottom" id="Run" order="2" weight="0.2591522" />
|
||||
<window_info anchor="bottom" id="Find" order="1" />
|
||||
<window_info id="Designer" order="2" />
|
||||
<window_info id="UI Designer" order="3" />
|
||||
<window_info active="true" anchor="bottom" id="Debug" order="3" visible="true" weight="0.23005566" />
|
||||
<window_info anchor="right" id="Palette	" order="4" />
|
||||
<window_info anchor="bottom" id="Terminal" order="7" />
|
||||
<window_info anchor="bottom" id="Event Log" order="8" side_tool="true" />
|
||||
<window_info id="UI Designer" order="4" />
|
||||
<window_info anchor="bottom" id="Debug" order="3" weight="0.24768089" />
|
||||
<window_info id="Favorites" order="3" side_tool="true" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
<window_info anchor="right" id="Commander" order="0" weight="0.4" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Messages" order="10" weight="0.3283859" />
|
||||
<window_info anchor="right" id="Maven Projects" order="5" />
|
||||
<window_info id="Favorites" order="4" side_tool="true" />
|
||||
</layout-to-restore>
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
</layout>
|
||||
</component>
|
||||
<component name="VcsContentAnnotationSettings">
|
||||
<option name="myLimit" value="2678400000" />
|
||||
@@ -529,117 +557,6 @@
|
||||
<option name="FILTER_TARGETS" value="false" />
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="1404">
|
||||
<caret line="108" selection-start-line="108" selection-end-line="108" />
|
||||
</first_editor>
|
||||
<second_editor>
|
||||
<js_state />
|
||||
</second_editor>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="6071">
|
||||
<caret line="531" column="21" selection-start-line="531" selection-start-column="21" selection-end-line="531" selection-end-column="21" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/CONTRIBUTING.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="234">
|
||||
<caret line="18" lean-forward="true" selection-start-line="18" selection-end-line="18" />
|
||||
</first_editor>
|
||||
<second_editor>
|
||||
<js_state />
|
||||
</second_editor>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/FontTestGDX/src/FontTestGDX.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1638">
|
||||
<caret line="134" column="40" selection-start-line="134" selection-start-column="40" selection-end-line="134" selection-end-column="40" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/FontTestGDX/demotext.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state>
|
||||
<caret selection-end-line="1" selection-end-column="43" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1625">
|
||||
<caret line="155" column="48" selection-start-line="155" selection-start-column="48" selection-end-line="155" selection-end-column="48" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="1404">
|
||||
<caret line="108" lean-forward="true" selection-start-line="108" selection-end-line="108" />
|
||||
</first_editor>
|
||||
<second_editor>
|
||||
<js_state />
|
||||
</second_editor>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="6071">
|
||||
<caret line="531" column="21" selection-start-line="531" selection-start-column="21" selection-end-line="531" selection-end-column="21" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/FontTestGDX/src/FontTestGDX.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1638">
|
||||
<caret line="134" column="40" selection-start-line="134" selection-start-column="40" selection-end-line="134" selection-end-column="40" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/FontTestGDX/demotext.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state>
|
||||
<caret selection-end-line="1" selection-end-column="43" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1495">
|
||||
<caret line="145" column="17" selection-start-line="145" selection-start-column="17" selection-end-line="145" selection-end-column="17" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
|
||||
<state split_layout="SECOND">
|
||||
<first_editor relative-caret-position="143">
|
||||
<caret line="11" column="153" selection-start-line="11" selection-start-column="153" selection-end-line="11" selection-end-column="153" />
|
||||
</first_editor>
|
||||
<second_editor>
|
||||
<js_state />
|
||||
</second_editor>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="8905">
|
||||
<caret line="749" column="35" selection-start-line="749" selection-start-column="35" selection-end-line="749" selection-end-column="35" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="9594">
|
||||
@@ -774,18 +691,6 @@
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/lib/slick.jar!/org/newdawn/slick/Color.class" />
|
||||
<entry file="file://$PROJECT_DIR$/LICENSE.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="26">
|
||||
<caret line="2" column="23" selection-start-line="2" selection-start-column="23" selection-end-line="2" selection-end-column="23" />
|
||||
</first_editor>
|
||||
<second_editor>
|
||||
<js_state />
|
||||
</second_editor>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/FontTestGDX/lib/TerrarumSansBitmap.jar!/net/torvald/terrarumsansbitmap/gdx/GameFontBase.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="513">
|
||||
@@ -824,13 +729,7 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$KOTLIN_BUNDLED$/lib/kotlin-runtime-sources.jar!/kotlin/CharSequence.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="91">
|
||||
<caret line="21" column="17" selection-start-line="21" selection-start-column="17" selection-end-line="21" selection-end-column="17" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$KOTLIN_BUNDLED$/lib/kotlin-runtime-sources.jar!/kotlin/CharSequence.kt" />
|
||||
<entry file="jar://$PROJECT_DIR$/lib/gdx.jar!/com/badlogic/gdx/graphics/glutils/GLFrameBuffer.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="2379">
|
||||
@@ -852,18 +751,31 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt">
|
||||
<entry file="jar://$PROJECT_DIR$/lib/gdx.jar!/com/badlogic/gdx/files/FileHandle.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="299">
|
||||
<caret line="45" column="67" selection-start-line="45" selection-start-column="67" selection-end-line="45" selection-end-column="67" />
|
||||
<state relative-caret-position="260">
|
||||
<caret line="118" column="39" selection-start-line="118" selection-start-column="32" selection-end-line="118" selection-end-column="39" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/GameFontBase.kt" />
|
||||
<entry file="file://$PROJECT_DIR$/LICENSE.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
|
||||
<state split_layout="FIRST">
|
||||
<first_editor relative-caret-position="26">
|
||||
<caret line="2" column="23" selection-start-line="2" selection-start-column="23" selection-end-line="2" selection-end-column="23" />
|
||||
</first_editor>
|
||||
<second_editor>
|
||||
<js_state />
|
||||
</second_editor>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
|
||||
<state split_layout="FIRST">
|
||||
<first_editor relative-caret-position="325">
|
||||
<caret line="25" column="97" selection-start-line="25" selection-start-column="97" selection-end-line="25" selection-end-column="97" />
|
||||
<first_editor relative-caret-position="143">
|
||||
<caret line="11" column="175" selection-start-line="11" selection-start-column="175" selection-end-line="11" selection-end-column="175" />
|
||||
</first_editor>
|
||||
<second_editor>
|
||||
<js_state />
|
||||
@@ -871,18 +783,32 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="6084">
|
||||
<caret line="490" selection-start-line="490" selection-end-line="490" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/GlyphProps.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="156">
|
||||
<caret line="12" column="33" selection-start-line="12" selection-start-column="12" selection-end-line="12" selection-end-column="33" />
|
||||
<state relative-caret-position="91">
|
||||
<caret line="7" column="22" selection-start-line="7" selection-start-column="22" selection-end-line="7" selection-end-column="22" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/CONTRIBUTORS.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state>
|
||||
<caret column="23" selection-start-column="23" selection-end-column="23" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/CONTRIBUTING.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
|
||||
<state split_layout="FIRST">
|
||||
<first_editor relative-caret-position="402">
|
||||
<caret line="62" column="132" lean-forward="true" selection-start-line="62" selection-start-column="132" selection-end-line="62" selection-end-column="132" />
|
||||
<first_editor relative-caret-position="1235">
|
||||
<caret line="95" column="30" selection-start-line="95" selection-start-column="30" selection-end-line="95" selection-end-column="30" />
|
||||
</first_editor>
|
||||
<second_editor>
|
||||
<js_state />
|
||||
@@ -890,30 +816,118 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt">
|
||||
<entry file="jar://$PROJECT_DIR$/lib/gdx.jar!/com/badlogic/gdx/graphics/g2d/Gdx2DPixmap.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="547">
|
||||
<caret line="494" column="101" selection-start-line="494" selection-start-column="101" selection-end-line="494" selection-end-column="101" />
|
||||
<state relative-caret-position="356">
|
||||
<caret line="152" column="16" selection-start-line="152" selection-start-column="16" selection-end-line="152" selection-end-column="16" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/TextureRegionPack.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="338">
|
||||
<caret line="50" column="38" selection-start-line="50" selection-start-column="38" selection-end-line="50" selection-end-column="38" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/lib/gdx-backend-lwjgl.jar!/com/badlogic/gdx/backends/lwjgl/LwjglApplication.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="501">
|
||||
<caret line="277" column="9" lean-forward="true" selection-start-line="277" selection-start-column="9" selection-end-line="277" selection-end-column="9" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/PixmapRegionPack.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="624">
|
||||
<caret line="72" column="25" selection-start-line="72" selection-start-column="25" selection-end-line="72" selection-end-column="25" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/lib/gdx.jar!/com/badlogic/gdx/graphics/Pixmap.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="356">
|
||||
<caret line="118" column="15" selection-start-line="118" selection-start-column="15" selection-end-line="118" selection-end-column="15" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$PROJECT_DIR$/lib/gdx.jar!/com/badlogic/gdx/graphics/Color.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="262">
|
||||
<caret line="52" column="11" selection-start-line="52" selection-start-column="11" selection-end-line="52" selection-end-column="11" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/FontTestGDX/src/FontTestGDX.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="547">
|
||||
<caret line="128" column="31" lean-forward="true" selection-start-line="128" selection-start-column="31" selection-end-line="128" selection-end-column="31" />
|
||||
<state relative-caret-position="338">
|
||||
<caret line="33" column="38" selection-start-line="33" selection-start-column="38" selection-end-line="33" selection-end-column="38" />
|
||||
<folding>
|
||||
<element signature="e#0#384#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/demo.PNG">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/FontTestGDX/demotext.txt">
|
||||
<entry file="file://$PROJECT_DIR$/demotext.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state>
|
||||
<caret column="121" selection-start-column="121" selection-end-column="121" />
|
||||
<state relative-caret-position="1014">
|
||||
<caret line="78" column="53" selection-start-line="78" selection-start-column="53" selection-end-line="78" selection-end-column="53" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/testtext.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="117">
|
||||
<caret line="9" column="91" selection-start-line="9" selection-start-column="91" selection-end-line="9" selection-end-column="91" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://C:/Program Files/Java/jdk1.8.0_131/src.zip!/java/util/HashMap.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-5975">
|
||||
<caret line="1798" column="23" selection-start-line="1798" selection-start-column="23" selection-end-line="1798" selection-end-column="23" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/AgedItem.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="325">
|
||||
<caret line="25" column="1" selection-start-line="25" selection-start-column="1" selection-end-line="25" selection-end-column="1" />
|
||||
<folding>
|
||||
<element signature="e#309#310#0" expanded="true" />
|
||||
<element signature="e#335#336#0" expanded="true" />
|
||||
<element signature="e#462#463#0" expanded="true" />
|
||||
<element signature="e#486#487#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/RedBlackNode.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="351">
|
||||
<caret line="27" column="14" selection-start-line="27" selection-start-column="14" selection-end-line="27" selection-end-column="14" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/RedBlackTree.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-9212">
|
||||
<caret line="69" column="67" selection-start-line="69" selection-start-column="67" selection-end-line="69" selection-end-column="67" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
<element signature="e#22666#22667#0" expanded="true" />
|
||||
<element signature="e#22707#22708#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="372">
|
||||
<caret line="372" lean-forward="true" selection-start-line="372" selection-end-line="372" />
|
||||
<folding>
|
||||
<element signature="e#1207#1689#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
@@ -923,7 +937,7 @@
|
||||
<state key="ArtifactsStructureConfigurable.UI">
|
||||
<settings>
|
||||
<artifact-editor />
|
||||
<last-edited>FontDemoGDX</last-edited>
|
||||
<last-edited>TerrarumSansBitmap</last-edited>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
@@ -951,7 +965,7 @@
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
<option value="0.32068965" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
@@ -963,7 +977,7 @@
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
<option value="0.32068965" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
@@ -976,6 +990,7 @@
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.32068965" />
|
||||
<option value="0.6" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
@@ -983,7 +998,7 @@
|
||||
</state>
|
||||
<state key="ProjectLibrariesConfigurable.UI">
|
||||
<settings>
|
||||
<last-edited>TesterLib</last-edited>
|
||||
<last-edited>GdxLib</last-edited>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#### Pixel Artists Wanted: for Arabic (all four forms) and other Indian scripts (all the ligatures). Must willing to follow the styles and have a knowledge in Unicode. Your name will be inscribed in the list of contributors.
|
||||
|
||||
You can contribute to the font by fixing wrong glyphs, suggesting better ones, extending character set (letters for other writing systems or filling in the blanks on the existing ones), or code for other game frameworks (not limited to Java). Please leave pull request for that.
|
||||
|
||||
Font Spritesheets are stored in ```assets/graphics/fonts``` directory. Image format must be TGA with Alpha — no PNG. If someone needs PNG, they can batch-convert the font using utils like ImageMagick.
|
||||
@@ -5,7 +7,7 @@ Font Spritesheets are stored in ```assets/graphics/fonts``` directory. Image for
|
||||
|
||||
#### Before getting started, you did read our design goals, right? Good. Now you may continue your awesome work.
|
||||
|
||||
### Ascenders, descenders, width informations
|
||||
### Ascenders, descenders, width informations (aka Glyph Tags)
|
||||
|
||||

|
||||
|
||||
@@ -34,46 +36,81 @@ Although the font is basically a Spritesheet, some of the sheet expects variable
|
||||
|
||||
Width is encoded in binary bits, on pixels. On the font spritesheet, every glyph has vertical dots on their top-right side (to be exact, every (16k - 1)th pixel on x axis). Above image is a sample of the font, with width information coloured in magenta. From top to bottom, each dot represents 1, 2, 4 and 8. For example, in the above image, ! (exclamation mark) has width of 5, " (double quote) has width of 6, # (octothorp) has width of 8, $ (dollar sign) has width of 9.
|
||||
|
||||
### Glyph Tagging System
|
||||
### Glyph Tags
|
||||
|
||||
Green-tinted area (should be 10 px tall) contains the tags. Tags are defined as following:
|
||||
|
||||
```
|
||||
(LSB) 0 == RTL
|
||||
1 -+ 1 | Align to this X pos of prev char,
|
||||
1 | 2 | only valid if write-on-top is 1
|
||||
1 | 4 | and is centre-aligned and non-zero
|
||||
1 -+ 8 | (if this is zero, floorOf(width/2) will be used instead)
|
||||
0 -+ 0 Align 1 Align 0 Align 1 Align before
|
||||
1 -+ 0 left 0 right 1 centre 1 the glyph
|
||||
0 == Write on top of prev chars (e.g. diacritics)
|
||||
1 == Diacritics stack 0:upward/1:downward
|
||||
(MSB) X == undefined, should be 0
|
||||
|
||||
NOTE: If glyphs are right or centre aligned, they must be aligned in the
|
||||
same way inside of the bitmap; the program assumes every variable-
|
||||
width glyphs to have a width of 15, regardless of the tagged width.
|
||||
If the diacritic is aligned before the glyph, the diacritic itself
|
||||
is always assumed as left-aligned, as this font will swap position
|
||||
of said diacritic and the glyph right before it.
|
||||
(LSB) 0 == Use Compiler Directive (Undefined right now, keep it as 0)
|
||||
1 -, 1 = Align to this X pos of prev char,
|
||||
1 | 2 = only valid if write-on-top is 1
|
||||
1 | 4 = and is centre-aligned and non-zero
|
||||
1 -' 8 = (if this is zero, floorOf(width/2) will be used instead)
|
||||
0 -, 0 Align 1 Align 0 Align 1 Align before
|
||||
1 -' 0 left 0 right 1 centre 1 the glyph
|
||||
1 == write-on-top, usually it's diatritics but not always (e.g. devanagari vowel sign O)
|
||||
1 -, 0 Stack 1 Stack 0 Before 1 Up &
|
||||
(MSB) 0 -' 0 up 0 down 1 &After 1 Down (e.g. U+0C48)
|
||||
```
|
||||
|
||||
#### Stack Up/Down
|
||||
|
||||
When the tag is stack-up, it'll be drawn 4 px lower if the underlying
|
||||
character is lowercase.
|
||||
|
||||
#### Align-To-This-X-Pos
|
||||
|
||||
Since this tag does not make sense for diacritics, they will use the value for compeletely different purpose:
|
||||
|
||||
0 : Nothing special
|
||||
1 : Covers previous character; it's neither stack-up nor down.
|
||||
Will be drawn 2 px lower if the underlying character is lowercase
|
||||
2 : Joiner.
|
||||
3..15: undefined
|
||||
|
||||
#### Diacritics That Comes Before and After
|
||||
|
||||
When this tag is set, the font compiler will replace this glyph with two extra code points given in the bitmap.
|
||||
|
||||
To implement those, this two extra code points are needed, which are provided in the Unicode's Reference Chart (www.unicode.org/charts/PDF/Uxxxx.pdf) The code points must be "drawn" in the bitmap, in the same manor as a tagging system. The zeroth column (x = 0) has the "before" character, the first column (x = 1) has the "after". All nineteen pixels (bits) are read by the font, which encompasses U+0000..U+EFFFF
|
||||
|
||||
For working examples, take a note at the bengali sprite sheet.
|
||||
|
||||
This tag can be used as a general "replace this with these" directive, as long as you're replacing it into two letters. This directive is exploited to construct dutch ligature "IJ" (U+0132 and U+0133), in the sheet LatinExtA.
|
||||
|
||||
Also note that the font compiler will not "stack" these diacritics.
|
||||
|
||||
|
||||
#### NOTES
|
||||
- If glyphs are right or centre aligned, they must be aligned in the same way inside of the bitmap; the font compiler assumes every variable-width glyphs to have a width of 15, regardless of the tagged width.
|
||||
- If the diacritic is aligned before the glyph, the diacritic itself is always assumed as left-aligned, as the font compiler will exchange position of said diacritic and the glyph right before it.
|
||||
|
||||

|
||||
|
||||
(fun fact: it was drawn on Rhodia memopad with Lamy 2000, then photographed and edited on my iPhone. Letter used is a Cherokee WE Ꮺ)
|
||||
|
||||
### Technical Limitations
|
||||
|
||||
- Each spritesheet is 4096x4096 maximum, which is a size of 4K Texture. However it is recommended to be smaller or equal to 1024x1024.
|
||||
- Glyphs exceeding 15px of width needs to be broken down with 2 or more characters. Wider sheets WILL NOT BE IMPLEMENTED, can't waste much pixels just for few superwide glyphs.
|
||||
- Due to how the compiler is coded, actual glyph must have alpha value of 255, the tags must have alpha values LESS THAN 255 (and obviously greater than zero). RGB plane of the TGA image doesn't do anything, keep it as #FFFFFF white.
|
||||
|
||||
### Implementing the Korean writing system
|
||||
|
||||
On this font, Hangul letters are printed by assemblying two or three letter pieces. There are 10 sets of Hangul letter pieces on the font. Top 6 are initials, middle 2 are medials, and bottom 2 are finals. On the rightmost side, there's eight assembled glyphs to help you with (assuming you have basic knowledge on the writing system). Top 6 tells you how to use 6 initials, and bottom 2 tells you how to use 2 finals.
|
||||
|
||||
This is a Kotlin-like pseudocode for assembling the glyph:
|
||||
|
||||
// NOTE: this code implements modern Hangul only, in the unicode range of 0xAC00..0xD7A3.
|
||||
// the spritesheet is made to accomodate Johab encoding scheme, but can still be used with the following code.
|
||||
// for the code for full Johab encoding (U+1100.. that includes Old Korean), please refer to the actual code in the repo.
|
||||
|
||||
function getHanChosung(hanIndex: Int) = hanIndex / (21 * 28)
|
||||
function getHanJungseong(hanIndex: Int) = hanIndex / 28 % 21
|
||||
function getHanJongseong(hanIndex: Int) = hanIndex % 28
|
||||
|
||||
jungseongWide = arrayOf(8, 12, 13, 17, 18, 21)
|
||||
jungseongComplex = arrayOf(9, 10, 11, 14, 15, 16, 22)
|
||||
jungseongWide = arrayOf(9,13,14,18,19)
|
||||
jungseongComplex = arrayOf(10,11,12,15,16,17,20,23)
|
||||
|
||||
function getHanInitialRow(hanIndex: Int): Int {
|
||||
val ret: Int
|
||||
|
||||
9
CONTRIBUTORS.txt
Normal file
@@ -0,0 +1,9 @@
|
||||
Project Maintainer and Programmer
|
||||
|
||||
- minjaesong (Torvald)
|
||||
|
||||
|
||||
This font was not possible without following artists:
|
||||
|
||||
- minjaesong (Torvald)
|
||||
<< Append your name here. If you're getting consistent merge conflicts, push without this and leave a Issue on the GitHub page >>
|
||||
BIN
FontDemoGDX.jar
@@ -22,11 +22,15 @@ class FontTestGDX : Game() {
|
||||
|
||||
lateinit var camera: OrthographicCamera
|
||||
|
||||
override fun create() {
|
||||
font = GameFontBase("./assets", flipY = false, errorOnUnknownChar = true) // must test for two flipY cases
|
||||
|
||||
val inTextFile = Gdx.files.internal("./FontTestGDX/demotext.txt")
|
||||
val reader = inTextFile.reader()
|
||||
private val demotextName = "demotext.txt"
|
||||
private val outimageName = "demo.png"
|
||||
|
||||
override fun create() {
|
||||
font = GameFontBase("./assets", flipY = false, errorOnUnknownChar = false) // must test for two flipY cases
|
||||
|
||||
val inTextFile = Gdx.files.internal("./$demotextName")
|
||||
val reader = inTextFile.reader("UTF-8")
|
||||
inputText = reader.readLines()
|
||||
reader.close()
|
||||
|
||||
@@ -35,106 +39,9 @@ class FontTestGDX : Game() {
|
||||
|
||||
|
||||
|
||||
println("START")
|
||||
|
||||
val l = intArrayOf(0xFF00,
|
||||
0xFF10,
|
||||
0xFF20,
|
||||
0xFF30,
|
||||
0xFF40,
|
||||
0xFF50,
|
||||
0xFF60,
|
||||
0xFF70,
|
||||
0xFF80,
|
||||
0xFF90,
|
||||
0xFFA0,
|
||||
0xFFB0,
|
||||
0xFFC0,
|
||||
0xFFD0,
|
||||
0xFFE0,
|
||||
0xFFF0,
|
||||
0xFEF0,
|
||||
0xFDF0,
|
||||
0xFCF0,
|
||||
0xFBF0,
|
||||
0xFAF0,
|
||||
0xF9F0,
|
||||
0xF8F0,
|
||||
0xF7F0,
|
||||
0xF6F0,
|
||||
0xF5F0,
|
||||
0xF4F0,
|
||||
0xF3F0,
|
||||
0xF2F0,
|
||||
0xF1F0,
|
||||
0xF0F0,
|
||||
0xF0F1,
|
||||
0xF0F2,
|
||||
0xF0F3,
|
||||
0xF0F4,
|
||||
0xF0F5,
|
||||
0xF0F6,
|
||||
0xF0F7,
|
||||
0xF0F8,
|
||||
0xF0F9,
|
||||
0xF0FA,
|
||||
0xF0FB,
|
||||
0xF0FC,
|
||||
0xF0FD,
|
||||
0xF0FE,
|
||||
0xF0FF,
|
||||
0xF0EF,
|
||||
0xF0DF,
|
||||
0xF0CF,
|
||||
0xF0BF,
|
||||
0xF0AF,
|
||||
0xF09F,
|
||||
0xF08F,
|
||||
0xF07F,
|
||||
0xF06F,
|
||||
0xF05F,
|
||||
0xF04F,
|
||||
0xF03F,
|
||||
0xF02F,
|
||||
0xF01F,
|
||||
0xF00F,
|
||||
0xF10F,
|
||||
0xF20F,
|
||||
0xF30F,
|
||||
0xF40F,
|
||||
0xF50F,
|
||||
0xF60F,
|
||||
0xF70F,
|
||||
0xF80F,
|
||||
0xF90F,
|
||||
0xFA0F,
|
||||
0xFB0F,
|
||||
0xFC0F,
|
||||
0xFD0F,
|
||||
0xFE0F,
|
||||
0xFF0F)
|
||||
val s = "ᚱᛂᚴᛋᛂᛋᛏᛋᚮᚾᛔᚢᛏᛚᚮᛋ᛬ᚱᛂᚴᛋᛋᚢᚼᚾᚢᛘᚢᛚᚾᛏᚮ᛬ᛏᚮᛋᛁᚮᚵᛂᚢᛏᚮᚱᛘᛔᚱᛂᚴᛋᛏ᛭ᛋᚢᚼᚾᚢᛋᛘᚮᛁᚵᚾᛁᛂᛏᚮᛑ᛭ᚵᛂᚢᛏᚮᚱ"
|
||||
var lc = 0
|
||||
var sc = 0
|
||||
|
||||
while (lc < l.size) {
|
||||
print(font.toColorCode(l[lc]))
|
||||
print(s[sc])
|
||||
|
||||
lc++
|
||||
sc++
|
||||
|
||||
if (sc == s.length) break
|
||||
|
||||
if (s[sc] == ' ') {
|
||||
print(" ")
|
||||
sc++
|
||||
}
|
||||
}
|
||||
|
||||
println("${font.noColorCode}\nEND")
|
||||
|
||||
println(font.toColorCode(0xF_EEC))
|
||||
println(font.charsetOverrideDefault)
|
||||
println(font.charsetOverrideBulgarian)
|
||||
println(font.charsetOverrideSerbian)
|
||||
|
||||
frameBuffer = FrameBuffer(Pixmap.Format.RGBA8888, TEXW, TEXH, true)
|
||||
|
||||
@@ -185,7 +92,7 @@ class FontTestGDX : Game() {
|
||||
if (!screenshotExported) {
|
||||
val pixmap = ScreenUtils.getFrameBufferPixmap(0, 0, frameBuffer.width, frameBuffer.height)
|
||||
|
||||
PixmapIO.writePNG(Gdx.files.local("demo.PNG"), pixmap)
|
||||
PixmapIO.writePNG(Gdx.files.local(outimageName), pixmap)
|
||||
pixmap.dispose()
|
||||
|
||||
screenshotExported = true
|
||||
@@ -251,7 +158,7 @@ class FontTestGDX : Game() {
|
||||
|
||||
lateinit var appConfig: LwjglApplicationConfiguration
|
||||
const val TEXW = 874
|
||||
const val TEXH = 2060
|
||||
const val TEXH = 2400
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
appConfig = LwjglApplicationConfiguration()
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Terrarum Sans Bitmap
|
||||
|
||||
Copyright (c) 2017-2018 Minjae Song (Torvald) and the contributors
|
||||
Copyright (c) 2017-2019 Minjae Song (Torvald) and the contributors
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
10
README.md
@@ -2,16 +2,17 @@
|
||||
|
||||

|
||||
|
||||
This font is a bitmap font used in [my game project called Terrarum](https://gitlab.com/minjaesong/terrarum) (hence the name). The font supports more than 90 % of european languages, as well as Chinese, Japanese and Korean. More technical side, it supports Latin-1 Supplement, Latin Ext-A, Latin Ext-B, IPA Extension (required by some languages), Greek, Cyrillic (+ Bulgarian, Serbian variants) and the supplement, Armenian, Thai (beta version), Georgian, Unicode Punctuations, CJK Punctuations, Kana, Chinese (limited to Unihan and Ext-A), Hangul (all 11 172 possible syllables) and Fullwidth forms.
|
||||
This font is a bitmap font used in [my game project called Terrarum](https://github.com/minjaesong/Terrarum) (hence the name). The font supports more than 90 % of european languages, as well as Chinese, Japanese and Korean. More technical side, it supports Latin-1 Supplement, Latin Ext-A, Latin Ext-B, IPA Extension (required by some languages), Greek, Cyrillic (+ Bulgarian, Serbian variants) and the supplement, Armenian, Thai (beta version), Georgian, Unicode Punctuations, CJK Punctuations, Kana, Chinese (limited to Unihan and Ext-A), Hangul (all 11 172 possible syllables) and Fullwidth forms.
|
||||
|
||||
The JAR package is meant to be used with Slick2d (extends ```Font``` class) and LibGDX (extends ```BitmapFont``` class). If you are not using the framework, please refer to the __Font metrics__ section to implement the font metrics correctly on your system.
|
||||
The JAR package is meant to be used with LibGDX (extends ```BitmapFont``` class). If you are not using the framework, please refer to the __Font metrics__ section to implement the font metrics correctly on your system.
|
||||
|
||||
The issue page is open. If you have some issues to submit, or have a question, please leave it on the page.
|
||||
|
||||
#### Little notes
|
||||
- To display Bulgarian/Serbian variants, you need special Control Characters. (GameFontBase.charsetOverrideBulgarian -- U+FFFF9; GameFontBase.charsetOverrideSerbian -- U+FFFFA)
|
||||
- To display Bulgarian/Serbian variants, you need special Control Characters. (GameFontBase.charsetOverrideBulgarian -- U+FFFC1; GameFontBase.charsetOverrideSerbian -- U+FFFC2)
|
||||
- All Han characters are in Chinese variant, no other variants are to be supported as most Chinese, Japanese and Korean can understand other's variant and to be honest, we don't bother anyway.
|
||||
- Indian script in general is not perfect: this font will never do the proper ligatures (I can't draw all the 1 224 possible combinations). Hopefully it's still be able to understand without them.
|
||||
- Slick2d versions are now unsupported. I couldn't extend myself to work on both versions, but I'm still welcome to merge your pull requests.
|
||||
|
||||
### Design Goals
|
||||
|
||||
@@ -20,6 +21,9 @@ The issue page is open. If you have some issues to submit, or have a question, p
|
||||
- Combininig with the sans-serif, this stands for **no over-simplification**
|
||||
- Condensed capitals for efficient space usage
|
||||
|
||||
## Download
|
||||
|
||||
- Go ahead to the [release tab](https://github.com/minjaesong/Terrarum-sans-bitmap/releases), and download the most recent version. It is **not** advised to use the .jar found within the repository, they're experimental builds I use during the development, and may contain bugs like leaking memory.
|
||||
|
||||
## Using on your game
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 160 KiB After Width: | Height: | Size: 160 KiB |
|
Before Width: | Height: | Size: 260 KiB After Width: | Height: | Size: 260 KiB |
BIN
assets/LatinExtC_variable.tga
Normal file
|
After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 320 KiB After Width: | Height: | Size: 320 KiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
|
Before Width: | Height: | Size: 380 KiB After Width: | Height: | Size: 380 KiB |
|
Before Width: | Height: | Size: 320 KiB After Width: | Height: | Size: 320 KiB |
BIN
assets/diacritical_marks_variable.tga
Normal file
|
After Width: | Height: | Size: 140 KiB |
BIN
assets/greek_polytonic_xyswap_variable.tga
Normal file
|
After Width: | Height: | Size: 320 KiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
|
Before Width: | Height: | Size: 262 KiB After Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 220 KiB |
|
Before Width: | Height: | Size: 320 KiB After Width: | Height: | Size: 320 KiB |
BIN
assets/richtext_furigana.tga
Normal file
|
After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 200 KiB |
BIN
demo.PNG
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 145 KiB |
@@ -10,7 +10,7 @@ You somehow found a multilingual one, and it makes your game look like an old co
|
||||
“Well, better than nothing… no, it’s ugly.”
|
||||
|
||||
You speak japanese and you wish to support it, but then このクソなfont only goot for displaying
|
||||
Japanese, it's not even multilingual, and their English look uncanny and inconsistent as hell.
|
||||
Japanese, it’s not even multilingual, and their English look uncanny and inconsistent as hell.
|
||||
|
||||
Eventually you just mix different fonts together, and the results were always infuriating.
|
||||
|
||||
@@ -26,25 +26,26 @@ How multilingual? Real multilingual!
|
||||
գրիչս վայր դրի, վեր կացա և պատրաստվում էի, որ քնեմ, երբ հանկարծ դռանս զանգակը հնչեց
|
||||
ՄՇԱԿԻՉ ԿԱՄ ԿԵՆՏՐՈՆԱԿԱՆ ՄՇԱԿԻՉ ՀԱՆԳՈՒՅՑԸ ՀԱՆԴԻՍԱՆՈՒՄ Է ՀԱՄԱԿԱՐԳՉԻ ՍԱՐՔԱՎՈՐՈՒՄՆԵՐԻՑ
|
||||
Zəfər, jaketini də papağını da götür, bu axşam hava çox soyuq olacaq
|
||||
Под южно дърво, цъфтящо в синьо, бягаше малко пухкаво зайче
|
||||
আমি কাঁচ খেতে পারি, তাতে আমার কোনো ক্ষতি হয় না।
|
||||
Под южно дърво, цъфтящо в синьо, бягаше малко пухкаво зайче
|
||||
ᎠᏍᎦᏯᎡᎦᎢᎾᎨᎢᎣᏍᏓᎤᎩᏍᏗᎥᎴᏓᎯᎲᎢᏔᎵᏕᎦᏟᏗᏖᎸᎳᏗᏗᎧᎵᎢᏘᎴᎩ ᏙᏱᏗᏜᏫᏗᏣᏚᎦᏫᏛᏄᏓᎦᏝᏃᎠᎾᏗᎭᏞᎦᎯᎦᏘᏓᏠᎨᏏᏕᏡᎬᏢᏓᏥᏩᏝᎡᎢᎪᎢ
|
||||
ᎠᎦᏂᏗᎮᎢᎫᎩᎬᏩᎴᎢᎠᏆᏅᏛᎫᏊᎾᎥᎠᏁᏙᎲᏐᏈᎵᎤᎩᎸᏓᏭᎷᏤᎢᏏᏉᏯᏌᏊ ᎤᏂᏋᎢᏡᎬᎢᎰᏩᎬᏤᎵᏍᏗᏱᎩᎱᎱᎤᎩᎴᎢᏦᎢᎠᏂᏧᏣᏨᎦᏥᎪᎥᏌᏊᎤᎶᏒᎢᎢᏡᎬᎢ
|
||||
ᎹᎦᎺᎵᏥᎻᎼᏏᎽᏗᏩᏂᎦᏘᎾᎿᎠᏁᎬᎢᏅᎩᎾᏂᎡᎢᏌᎶᎵᏎᎷᎠᏑᏍᏗᏪᎩ ᎠᎴ ᏬᏗᏲᏭᎾᏓᏍᏓᏴᏁᎢᎤᎦᏅᏮᏰᎵᏳᏂᎨᎢ
|
||||
Příliš žluťoučký kůň úpěl ďábelské ódy
|
||||
Quizdeltagerne spiste jordbær med fløde, mens cirkusklovnen Walther spillede på xylofon
|
||||
PACK MY BOX WITH FIVE DOZEN LIQUOR JUGS
|
||||
hƿæt ƿe ᵹardena inᵹear ꝺaᵹum þeoꝺ cynninᵹa þꞃym ᵹeꝼꞃumon
|
||||
Victor jagt zwölf Boxkämpfer quer über den großen Sylter Deich GROẞEN GROẞE
|
||||
ζαφείρι δέξου πάγκαλο, βαθων ψυχης το σημα
|
||||
ζαφείρι δέξου πάγκαλο, βαθῶν ψυχῆς τὸ σῆμα
|
||||
ΔΙΑΦΥΛΆΞΤΕ ΓΕΝΙΚΆ ΤΗ ΖΩΉ ΣΑΣ ΑΠΌ ΒΑΘΕΙΆ ΨΥΧΙΚΆ ΤΡΑΎΜΑΤΑ
|
||||
სწრაფი ყავისფერი მელა გადაახტა ზარმაც ძაღლს ᲘᲜᲢᲔᲚ ᲞᲔᲜᲢᲘᲣᲛᲘ ᲛᲘᲙᲠᲝᲞᲠᲝᲪᲔᲡᲝᲠᲘ
|
||||
ऋषियों को सताने वाले दुष्ट राक्षसों के राजा रावण का सर्वनाश करने वाले विष्णुवतार भगवान श्रीराम अयोध्या के महाराज दशरथ के
|
||||
Kæmi ný öxi hér, ykist þjófum nú bæði víl og ádrepa
|
||||
Ꝺꝼuaꞅcail Íoꞅa Úꞃṁac na hÓiᵹe Beannaiꞇe póꞃ Éaḃa aᵹus Áꝺaiṁ
|
||||
Ċuaiġ bé ṁórṡáċ le dlúṫspád fíorḟinn trí hata mo ḋea-ṗorcáin ḃig
|
||||
あめつちほしそら やまかはみねたに くもきりむろこけ ひといぬうへすゑ ゆわさるおふせよ えの𛀁をなれゐて
|
||||
トリナクコヱス ユメサマセ ミヨアケワタル ヒンカシヲ ソライロハエテ オキツヘニ ホフネムレヰヌ モヤノウチ
|
||||
田居に出で 菜摘むわれをぞ 君召すと 求食り追ひゆく 山城の 打酔へる子ら 藻葉干せよ え舟繋けぬ
|
||||
정 참판 양반댁 규수 큰 교자 타고 혼례 치른 날 하얬다 도럄직한 퀡봹퉪헰
|
||||
정 참판 양반댁 규수 큰 교자 타고 혼례 치른 날 하얬다 도럄직한 퀡봹퉪헰ꥸᅦퟗꥸᅦퟗᄋힳᆫ
|
||||
Četri psihi faķīri vēlu vakarā zāģēja guļbūvei durvis, fonā šņācot mežam
|
||||
Įlinkdama fechtuotojo špaga sublykčiojusi pragręžė apvalų arbūzą
|
||||
Ѕидарски пејзаж: шугав билмез со чудење џвака ќофте и кељ на туѓ цех
|
||||
@@ -53,13 +54,14 @@ How multilingual? Real multilingual!
|
||||
कः खगौघाङचिच्छौजा झाञ्ज्ञोऽटौठीडडण्ढणः। तथोदधीन् पफर्बाभीर्मयोऽरिल्वाशिषां सहः॥
|
||||
Înjurând pițigăiat, zoofobul comandă vexat whisky și tequila
|
||||
Широкая электрификация южных губерний даст мощный толчок подъёму сельского хозяйства
|
||||
Ајшо, лепото и чежњо, за љубав срца мога дођи у Хаџиће на кафу
|
||||
Ајшо, лепото и чежњо, за љубав срца мога дођи у Хаџиће на кафу
|
||||
Jovencillo emponzoñado de whisky: ¡qué figurota exhibe!
|
||||
นายสังฆภัณฑ์ เฮงพิทักษ์ฝั่ง ผู้เฒ่าซึ่งมีอาชีพเป็นฅนขายฃวด ถูกตำรวจปฏิบัติการจับฟ้องศาล ฐานลักนาฬิกาคุณหญิงฉัตรชฎา ฌานสมาธิ
|
||||
Pijamalı hasta yağız şoföre çabucak güvendi
|
||||
Жебракують філософи при ґанку церкви в Гадячі, ще й шатро їхнє п’яне знаємо
|
||||
Do bạch kim rất quý nên sẽ dùng để lắp vô xương
|
||||
日堀油告観観藤村抄海評業庁経賃室弁市。太撮収改売週法所何都慣次現。価紙一無三洋日話転手治稿載末替付致治。
|
||||
[pʰnɣɬɥi.m͡ŋχɫʍɨnaɸ.cθʊɫɯ.ɹɨɫʏ͡ɛx.ɯ͡ɣaxɲaɣɫ.ɸtʰɑɣɴ]
|
||||
|
||||
Features:
|
||||
|
||||
@@ -74,10 +76,10 @@ How multilingual? Real multilingual!
|
||||
|
||||
ᚱᛂᚴᛋᛂᛋᛏᛋᚮᚾᛔᚢᛏᛚᚮᛋ᛬ᚱᛂᚴᛋᛋᚢᚼᚾᚢᛘᚢᛚᚾᛏᚮ᛬ᛏᚮᛋᛁᚮᚵᛂᚢᛏᚮᚱᛘᛔᚱᛂᚴᛋᛏ᛭ᛋᚢᚼᚾᚢᛋᛘᚮᛁᚵᚾᛁᛂᛏᚮᛑ᛭ᚵᛂᚢᛏᚮᚱ
|
||||
|
||||
Colour-code that supports 65535 opaque or semi-transparent colours via 4 bit ARGB
|
||||
Colour-code that supports 4096 colours via 4 bit RGB
|
||||
|
||||
Гномът Доцьо приключи спящ в шейна за жаби (Bulgarian)
|
||||
Љубазни фењерџија чађавог лица хоће да ми покаже штос (Serbian)
|
||||
Щиглецът се яде само пържен в юфка без чушки и хвойна (Bulgarian)
|
||||
Љубазни фењерџија чађавог лица хоће да ми покаже штос (Serbian)
|
||||
Разъяренный чтец эгоистично бьёт пятью жердями шустрого фехтовальщика (Russian)
|
||||
|
||||
Control characters to support Bulgarian and Serbian letter shapes on the fly
|
||||
@@ -90,13 +92,27 @@ How multilingual? Real multilingual!
|
||||
|
||||
For all those dash-pedants, we have en-dash, em-dash, and even horizontal bars!
|
||||
|
||||
5¹⁹⁄₃₂ inch is 142.1 mm · (C₂F₄)ₙ is godly · Error = MoreCode²
|
||||
NOTE: we don’t do fractions. 142¹⁄₁₀ mm is illegal!
|
||||
|
||||
Did you know Unicode supports arbitrary fractions? Actually I didn’t… as they abused super/subscripts!
|
||||
|
||||
ᄋᆡ급 일 ᄭᅡᄃᆞᆰ에 영국 ᄒᆞ고 불난셔 ᄒᆞ고 ᄃᆡ단이 시비가 잇슬 모양 인ᄃᆡ
|
||||
일본 농샹공부에셔 젼긔학 학ᄉᆞ 셋ᄉᆞᆯ 미국과 구라파로 보내셔 젼화 쓰ᄂᆞᆫ 법을 더ᄇᆡ호게 ᄒᆞ더라
|
||||
일쳔 구ᄇᆡᆨ년에 불난셔 셔울 파리스에 만국 박남회를 버릴터 인ᄃᆡ 각국이 다 물화와 졔조품을 거긔 보낼터이더라
|
||||
|
||||
Rejoice, now we can render Old Korean in a correct way!
|
||||
|
||||
Unicode References:
|
||||
|
||||
Basic Latin Latin-1 Latin Extension A Latin Extionsion B IPA Extension Greek Cyrillic
|
||||
Cyrillic Supplement Armenian Devanagari Thai Georgian Runic Cherokee Georgian Extended
|
||||
General Punctuations CJK Symbols Kana Kana Phonetic Extension CJK Unihan Extension A CJK Unihan
|
||||
Hangul Syllables Fullwidth Forms Kana Supplement
|
||||
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 CJK Symbols
|
||||
Latin Extended-C Kana Kana Phonetic Extension CJK Unihan Extension A CJK Unihan
|
||||
Hangul Jamo Extended-A Hangul Syllables Hangul Jamo Extended-B Fullwidth Forms Kana Supplement
|
||||
|
||||
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
|
||||
changes, and make a pull request! I appreciate any and all supports.
|
||||
changes, and make a pull request! I appreciate any and all supports.
|
||||
|
||||
<EFBFBD> 文字化け! <20>
|
||||
@@ -9,13 +9,24 @@ data class GlyphProps(
|
||||
val alignWhere: Int,
|
||||
val alignXPos: Int,
|
||||
val rtl: Boolean = false,
|
||||
val diacriticsStackDown: Boolean = false,
|
||||
val diacriticsBeforeGlyph: Boolean = false
|
||||
val stackWhere: Int = 0,
|
||||
var extInfo: IntArray? = null
|
||||
) {
|
||||
companion object {
|
||||
const val LEFT = 0
|
||||
const val RIGHT = 1
|
||||
const val CENTRE = 2
|
||||
const val ALIGN_LEFT = 0
|
||||
const val ALIGN_RIGHT = 1
|
||||
const val ALIGN_CENTRE = 2
|
||||
const val ALIGN_BEFORE = 3
|
||||
|
||||
const val STACK_UP = 0
|
||||
const val STACK_DOWN = 1
|
||||
const val STACK_BEFORE_N_AFTER = 2
|
||||
const val STACK_UP_N_DOWN = 3
|
||||
|
||||
const val DIA_OVERLAY = 1
|
||||
const val DIA_JOINER = 2
|
||||
|
||||
private fun Boolean.toInt() = if (this) 1 else 0
|
||||
}
|
||||
|
||||
constructor(width: Int, tags: Int) : this(
|
||||
@@ -24,7 +35,32 @@ data class GlyphProps(
|
||||
tags.ushr(5).and(3),
|
||||
tags.ushr(1).and(15),
|
||||
tags.and(1) == 1,
|
||||
tags.ushr(8).and(1) == 1,
|
||||
tags.ushr(5).and(3) == 3
|
||||
tags.ushr(8).and(3)
|
||||
)
|
||||
|
||||
fun isOverlay() = writeOnTop && alignXPos == 1
|
||||
|
||||
override fun hashCode(): Int {
|
||||
val tags = rtl.toInt() or alignXPos.shl(1) or alignWhere.shl(5) or
|
||||
writeOnTop.toInt().shl(7) or stackWhere.shl(8)
|
||||
|
||||
var hash = -2128831034
|
||||
|
||||
extInfo?.forEach {
|
||||
hash = hash xor it
|
||||
hash = hash * 16777619
|
||||
}
|
||||
|
||||
hash = hash xor tags
|
||||
hash = hash * 167677619
|
||||
|
||||
return hash
|
||||
}
|
||||
|
||||
override fun equals(other: Any?): Boolean {
|
||||
// comparing hash because I'm lazy
|
||||
return other is GlyphProps && this.hashCode() == other.hashCode()
|
||||
}
|
||||
|
||||
fun requiredExtInfoCount() = if (stackWhere == STACK_BEFORE_N_AFTER) 2 else 0
|
||||
}
|
||||
167
src/net/torvald/terrarumsansbitmap/gdx/PixmapRegionPack.kt
Normal file
@@ -0,0 +1,167 @@
|
||||
/*
|
||||
* Terrarum Sans Bitmap
|
||||
*
|
||||
* Copyright (c) 2018 Minjae Song (Torvald)
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
package net.torvald.terrarumsansbitmap.gdx
|
||||
|
||||
import com.badlogic.gdx.files.FileHandle
|
||||
import com.badlogic.gdx.graphics.Color
|
||||
import com.badlogic.gdx.graphics.Pixmap
|
||||
|
||||
/**
|
||||
* Created by minjaesong on 2018-09-17.
|
||||
*/
|
||||
class PixmapRegionPack(
|
||||
pixmap: Pixmap,
|
||||
val tileW: Int,
|
||||
val tileH: Int,
|
||||
val hGap: Int = 0,
|
||||
val vGap: Int = 0,
|
||||
val hFrame: Int = 0,
|
||||
val vFrame: Int = 0,
|
||||
val xySwapped: Boolean = false // because Unicode chart does, duh
|
||||
) {
|
||||
|
||||
//constructor(ref: String, tileW: Int, tileH: Int, hGap: Int = 0, vGap: Int = 0, hFrame: Int = 0, vFrame: Int = 0, xySwapped: Boolean = false) :
|
||||
// this(Pixmap(ref), tileW, tileH, hGap, vGap, hFrame, vFrame, xySwapped)
|
||||
constructor(fileHandle: FileHandle, tileW: Int, tileH: Int, hGap: Int = 0, vGap: Int = 0, hFrame: Int = 0, vFrame: Int = 0, xySwapped: Boolean = false) :
|
||||
this(Pixmap(fileHandle), tileW, tileH, hGap, vGap, hFrame, vFrame, xySwapped)
|
||||
|
||||
val horizontalCount = (pixmap.width - 2 * hFrame + hGap) / (tileW + hGap)
|
||||
val verticalCount = (pixmap.height - 2 * vFrame + vGap) / (tileH + vGap)
|
||||
|
||||
val regions: Array<Pixmap>
|
||||
|
||||
init {
|
||||
// test print the whole sheet
|
||||
/*pixmap.pixels.rewind()
|
||||
for (y in 0 until pixmap.height) {
|
||||
for (x in 0 until pixmap.width) {
|
||||
pixmap.pixels.get() // discard r
|
||||
pixmap.pixels.get() // discard g
|
||||
pixmap.pixels.get() // discard b
|
||||
val a = pixmap.pixels.get()
|
||||
|
||||
if (a == 255.toByte()) print("█") else print("·")
|
||||
}
|
||||
println()
|
||||
}
|
||||
println()*/
|
||||
|
||||
|
||||
|
||||
pixmap.pixels.rewind()
|
||||
|
||||
if (!xySwapped) {
|
||||
regions = Array<Pixmap>(horizontalCount * verticalCount, {
|
||||
val rx = (it % horizontalCount * (tileW + hGap)) + hFrame // pixel, not index
|
||||
val ry = (it / horizontalCount * (tileH + vGap)) + vFrame // pixel, not index
|
||||
|
||||
val region = Pixmap(tileW, tileH, Pixmap.Format.RGBA8888)
|
||||
region.pixels.rewind()
|
||||
|
||||
|
||||
// for every "scanline"
|
||||
for (y in 0 until tileH) {
|
||||
|
||||
val offsetY = (ry + y) * (pixmap.width * 4) + (vFrame * pixmap.width * 4)
|
||||
val offsetX = rx * 4 + hFrame * 4
|
||||
|
||||
//println("offset: ${offsetX + offsetY}")
|
||||
|
||||
val bytesBuffer = ByteArray(4 * tileW)
|
||||
|
||||
pixmap.pixels.position(offsetY + offsetX)
|
||||
pixmap.pixels.get(bytesBuffer, 0, bytesBuffer.size)
|
||||
|
||||
// test print bytesbuffer
|
||||
/*bytesBuffer.forEachIndexed { index, it ->
|
||||
if (index % 4 == 3) {
|
||||
if (it == 255.toByte()) print("█") else print("·")
|
||||
}
|
||||
}
|
||||
println()*/
|
||||
|
||||
region.pixels.put(bytesBuffer)
|
||||
}
|
||||
|
||||
//println()
|
||||
|
||||
|
||||
|
||||
// todo globalFlipY ?
|
||||
|
||||
/*return*/region
|
||||
})
|
||||
}
|
||||
else {
|
||||
regions = Array<Pixmap>(horizontalCount * verticalCount, {
|
||||
val rx = (it / verticalCount * (tileW + hGap)) + hFrame
|
||||
val ry = (it % verticalCount * (tileH + vGap)) + vFrame
|
||||
|
||||
val region = Pixmap(tileW, tileH, Pixmap.Format.RGBA8888)
|
||||
region.pixels.rewind()
|
||||
|
||||
|
||||
// for every "scanline"
|
||||
for (y in 0 until tileH) {
|
||||
|
||||
val offsetY = (ry + y) * (pixmap.width * 4) + (vFrame * pixmap.width * 4)
|
||||
val offsetX = rx * 4 + hFrame * 4
|
||||
|
||||
//println("offset: ${offsetX + offsetY}")
|
||||
|
||||
val bytesBuffer = ByteArray(4 * tileW)
|
||||
|
||||
pixmap.pixels.position(offsetY + offsetX)
|
||||
pixmap.pixels.get(bytesBuffer, 0, bytesBuffer.size)
|
||||
|
||||
// test print bytesbuffer
|
||||
/*bytesBuffer.forEachIndexed { index, it ->
|
||||
if (index % 4 == 3) {
|
||||
if (it == 255.toByte()) print("█") else print("·")
|
||||
}
|
||||
}
|
||||
println()*/
|
||||
|
||||
region.pixels.put(bytesBuffer)
|
||||
}
|
||||
|
||||
//println()
|
||||
|
||||
|
||||
|
||||
// todo globalFlipY ?
|
||||
|
||||
/*return*/region
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
fun get(x: Int, y: Int) = regions[y * horizontalCount + x]
|
||||
|
||||
fun dispose() {
|
||||
regions.forEach { it.dispose() }
|
||||
}
|
||||
|
||||
}
|
||||
@@ -38,13 +38,14 @@ class TextureRegionPack(
|
||||
val hGap: Int = 0,
|
||||
val vGap: Int = 0,
|
||||
val hFrame: Int = 0,
|
||||
val vFrame: Int = 0
|
||||
val vFrame: Int = 0,
|
||||
val xySwapped: Boolean = false // because Unicode chart does, duh
|
||||
) {
|
||||
|
||||
constructor(ref: String, tileW: Int, tileH: Int, hGap: Int = 0, vGap: Int = 0, hFrame: Int = 0, vFrame: Int = 0) :
|
||||
this(Texture(ref), tileW, tileH, hGap, vGap, hFrame, vFrame)
|
||||
constructor(fileHandle: FileHandle, tileW: Int, tileH: Int, hGap: Int = 0, vGap: Int = 0, hFrame: Int = 0, vFrame: Int = 0) :
|
||||
this(Texture(fileHandle), tileW, tileH, hGap, vGap, hFrame, vFrame)
|
||||
constructor(ref: String, tileW: Int, tileH: Int, hGap: Int = 0, vGap: Int = 0, hFrame: Int = 0, vFrame: Int = 0, xySwapped: Boolean = false) :
|
||||
this(Texture(ref), tileW, tileH, hGap, vGap, hFrame, vFrame, xySwapped)
|
||||
constructor(fileHandle: FileHandle, tileW: Int, tileH: Int, hGap: Int = 0, vGap: Int = 0, hFrame: Int = 0, vFrame: Int = 0, xySwapped: Boolean = false) :
|
||||
this(Texture(fileHandle), tileW, tileH, hGap, vGap, hFrame, vFrame, xySwapped)
|
||||
|
||||
companion object {
|
||||
/** Intented for Y-down coord system, typically fon Non-GDX codebase */
|
||||
@@ -59,18 +60,34 @@ class TextureRegionPack(
|
||||
init {
|
||||
//println("texture: $texture, dim: ${texture.width} x ${texture.height}, grid: $horizontalCount x $verticalCount, cellDim: $tileW x $tileH")
|
||||
|
||||
regions = Array<TextureRegion>(horizontalCount * verticalCount, {
|
||||
val region = TextureRegion()
|
||||
val rx = (it % horizontalCount * (tileW + hGap)) + hFrame
|
||||
val ry = (it / horizontalCount * (tileH + vGap)) + vFrame
|
||||
if (!xySwapped) {
|
||||
regions = Array<TextureRegion>(horizontalCount * verticalCount, {
|
||||
val region = TextureRegion()
|
||||
val rx = (it % horizontalCount * (tileW + hGap)) + hFrame
|
||||
val ry = (it / horizontalCount * (tileH + vGap)) + vFrame
|
||||
|
||||
region.setRegion(texture)
|
||||
region.setRegion(rx, ry, tileW, tileH)
|
||||
region.setRegion(texture)
|
||||
region.setRegion(rx, ry, tileW, tileH)
|
||||
|
||||
region.flip(false, globalFlipY)
|
||||
region.flip(false, globalFlipY)
|
||||
|
||||
/*return*/region
|
||||
})
|
||||
/*return*/region
|
||||
})
|
||||
}
|
||||
else {
|
||||
regions = Array<TextureRegion>(horizontalCount * verticalCount, {
|
||||
val region = TextureRegion()
|
||||
val rx = (it / verticalCount * (tileW + hGap)) + hFrame
|
||||
val ry = (it % verticalCount * (tileH + vGap)) + vFrame
|
||||
|
||||
region.setRegion(texture)
|
||||
region.setRegion(rx, ry, tileW, tileH)
|
||||
|
||||
region.flip(false, globalFlipY)
|
||||
|
||||
/*return*/region
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
fun get(x: Int, y: Int) = regions[y * horizontalCount + x]
|
||||
|
||||
BIN
testing.PNG
Normal file
|
After Width: | Height: | Size: 18 KiB |
10
testtext.txt
Normal file
@@ -0,0 +1,10 @@
|
||||
re ʘ, ʇ, ʗ, and ʖ, al
|
||||
ɓ ɗ ɠ
|
||||
ɐ ɔ ə ɟ ɥ ɯ ɹ ʇ ʌ ʍ ʎ
|
||||
Vʷ[kʰuˣt̪s̟] and Vʷ[kʰʉˣt͜ʃ].
|
||||
|
||||
ʡ̆
|
||||
|
||||
Labiodental flap [ⱱ] U+2C71
|
||||
|
||||
acegijmnopqrsuvwxyzɱɳʙɾɽʒʂʐʋɹɻɥɟɡɢʛȵɲŋɴʀɕʑçʝxɣχʁʜʍɰʟɨʉɯuʊøɘɵɤəɛœɜɞʌɔæɐɶɑɒɚɝɩɪʅʈʏʞⱥⱦⱱⱳⱴⱶⱷⱸⱺⱻ
|
||||