diff --git a/FontTestGDX/lib/TerrarumSansBitmap.jar b/FontTestGDX/lib/TerrarumSansBitmap.jar index 2b8a215..ae9e28f 100644 Binary files a/FontTestGDX/lib/TerrarumSansBitmap.jar and b/FontTestGDX/lib/TerrarumSansBitmap.jar differ diff --git a/assets/hangul_johab.tga b/assets/hangul_johab.tga old mode 100755 new mode 100644 index 28010b2..5e6237b Binary files a/assets/hangul_johab.tga and b/assets/hangul_johab.tga differ diff --git a/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt b/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt index 29c3f0e..4f54128 100755 --- a/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt +++ b/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt @@ -112,11 +112,16 @@ class GameFontBase( private fun getWanseongHanJungseong(hanIndex: Int) = hanIndex / JONG_COUNT % JUNG_COUNT private fun getWanseongHanJongseong(hanIndex: Int) = hanIndex % JONG_COUNT + // ㅗ ㅛ ㅜ ㅠ ㅡ etc private val jungseongWide: Array = arrayOf(9,13,14,18,19,34,35,39,45,51,53,54,62,64,66,80,83) + // ㅘ ㅙ ㅚ etc private val jungseongComplex: Array = arrayOf(10,11,12,15,16,17,20) + (22..33).toList() + arrayOf(36,37,38) + (40..44).toList() + arrayOf(46,47,48,49,50,52) + (55..60).toList() + arrayOf(63,65) + (67..79).toList() + arrayOf(81,82) + (84..93).toList() + // ㅓ ㅔ ㅕ etc + private val jungseongRightie: Array = arrayOf(2,4,6,8,11,16,32,33,37,42,44,48,50,71,72,75,78,79,83,86,87,88,94) private fun isJungseongWide(hanIndex: Int) = jungseongWide.binarySearch(hanIndex) >= 0 private fun isJungseongComplex(hanIndex: Int) = jungseongComplex.binarySearch(hanIndex) >= 0 + private fun isJungseongRighie(hanIndex: Int) = jungseongRightie.binarySearch(hanIndex) >= 0 /** * @param i Initial (Choseong) @@ -136,10 +141,10 @@ class GameFontBase( private fun getHanFinalRow(i: Int, p: Int, f: Int): Int { - return if (isJungseongWide(p)) - 9 - else + return if (isJungseongRighie(p)) 10 + else + 9 } private fun isHangulChoseong(c: CodePoint) = c in (0x1100..0x115F) || c in (0xA960..0xA97F) diff --git a/testing.PNG b/testing.PNG index a7aeb87..19b5681 100755 Binary files a/testing.PNG and b/testing.PNG differ diff --git a/testtext.txt b/testtext.txt index ad90357..0138771 100755 --- a/testtext.txt +++ b/testtext.txt @@ -8,4 +8,28 @@ ATA LVJ LTJ ΓJ -ΓΛV \ No newline at end of file +ΓΛV +LOT +OOO + +바람결에 실려온 당신의 nostalgia와 어지러이 섞인 regret의 memories + +x86 또는 80x86은 인텔이 개발한 마이크로프로세서 계열을 부르는 말이자, 이들과 호환되는 프로세서들에서 사용한 명령어 집합 +구조들을 통칭하는 말이다. x86 아키텍처는 데스크톱 컴퓨터 시장에서 매우 널리 쓰이며, PowerPC 같이 좀 더 근대적인 아키텍처를 +사용한 프로세서들이 x86과 경쟁했으나 그다지 많은 시장 점유율을 확보하지는 못했다. + +x86 또는 80x86이라는 이름은 여기에 속하는 초기의 프로세서들 이름이 모두 80으로 시작해서 86으로 끝났기 때문에 붙여졌다. +여기에는 8086, 80186, 80286, 386, 486이 포함되며, 숫자로 상표를 등록할 수 없었기 때문에 그 뒤로는 펜티엄과 같은 별도의 +이름을 사용하게 되었다. 그러나 586, 686과 같은 이름은 아직까지도 (비공식적으로) 사용되며, 전체 아키텍처를 나타내는 말에도 +그 흔적이 남아 있다. + +x86 아키텍처를 사용하는 최초의 프로세서는 1978년에 발표된 인텔 8086으로, 이전 프로세서인 인텔 8080과 어셈블리어 단에서 +호환되도록 설계되었다. 인텔 8086은 3년 후에 IBM PC의 표준 프로세서로 채택되었다. IBM PC는 그 후로 계속 성장하여 개인용 +컴퓨터 업계의 표준이 되었으며, 그에 따라 x86 아키텍처는 매우 성공적인 명령 집합 아키텍처가 되었다. 사이릭스, 일본 +전기 주식회사(NEC), IBM, 트랜스메타 등의 회사들이 x86 아키텍처를 사용하는 프로세서를 생산했으며, 그중 AMD의 애슬론 계열 +프로세서들은 펜티엄에 미치지는 못 하지만 상당한 시장 점유율을 차지하고 있다. + +x86 아키텍처는 가변 길이 명령을 쓰는 CISC 설계를 채용했으며, 하위 호환성에 중점을 두고 있다. x86 아키텍처는 다른 아키텍처와 +같이 워드 경계에 맞춰서 메모리를 읽는 것이 효율적이긴 하지만, 워드 경계에 걸치는 메모리도 한 번에 접근할 수 있다. 워드들은 +최하위 바이트부터 최상위 바이트까지 순서대로 (리틀 엔디안) 저장된다. 현재의 x86 프로세서들은 명령들을 내부적으로 더 작은 +단위로 쪼개서 RISC와 비슷한 내부 아키텍처에서 수행한다. \ No newline at end of file