Some font fixes/compatibility improvements #1045

Merged
merged 5 commits into from Sep 30, 2016

Conversation

Projects
None yet
5 participants
@kakurasan
Contributor

kakurasan commented Sep 30, 2016

I modified some glyphs for better look and MS font compatibility.
0 5 0-font-1 ---> 0 5 0-font-1-patched
U+301C(〜) is rendered incorrectly, but I fixed it.
0 5 0-font-2 ---> 0 5 0-font-2-patched

@carstene1ns

This comment has been minimized.

Show comment
Hide comment
@carstene1ns

carstene1ns Sep 30, 2016

Member

This looks really good to me.

(For reference: This fixes a part of #514.)

Member

carstene1ns commented Sep 30, 2016

This looks really good to me.

(For reference: This fixes a part of #514.)

@Ghabry

This comment has been minimized.

Show comment
Hide comment
@Ghabry

Ghabry Sep 30, 2016

Member

thanks for your contribution

Member

Ghabry commented Sep 30, 2016

thanks for your contribution

@Ghabry Ghabry merged commit 61ceecb into EasyRPG:master Sep 30, 2016

kakurasan added a commit to kakurasan/easyrpg-player that referenced this pull request Oct 1, 2016

Window_Keyboard: Replace U+301C with U+FF5E
WAVE DASH is U+301C, but the displayed glyph in games is U+FF5E
(see EasyRPG#1045
 FULLWIDTH TILDE in korean font is displayed).

 This fixes missing glyph issue.

kakurasan added a commit to kakurasan/easyrpg-player that referenced this pull request Oct 2, 2016

Window_Keyboard: Replace U+301C with U+FF5E
WAVE DASH is U+301C, but the displayed glyph in games is U+FF5E
(see EasyRPG#1045
 FULLWIDTH TILDE in Korean font is displayed).

 This fixes missing glyph issue.

kakurasan added a commit to kakurasan/easyrpg-player that referenced this pull request Oct 2, 2016

Window_Keyboard: Replace U+301C with U+FF5E
WAVE DASH is U+301C, but the displayed glyph in games is U+FF5E
(see EasyRPG#1045
 FULLWIDTH TILDE in Korean font is displayed).

 This fixes missing glyph issue.

@carstene1ns carstene1ns added this to the 0.5.1 milestone Oct 2, 2016

@rohkea

This comment has been minimized.

Show comment
Hide comment
@rohkea

rohkea Apr 14, 2017

Member

This change makes European languages look worse. :(

The " is used both for closing and opening quotation marks. The correct rendering of opening quotation mark is “, and the correct closing quotation mark is ”. This change straight quotation mark (a compromise between “ and ”) with closing quotation marks (which is 100% incorrect).

Here’s how EasyRPG renders it now (two closing quotes):
screenshot_1

Here’s the correct rendering in RPG_RT (a straight quote that is a compromise between an opening and a closing quote):
correct-font

Member

rohkea commented Apr 14, 2017

This change makes European languages look worse. :(

The " is used both for closing and opening quotation marks. The correct rendering of opening quotation mark is “, and the correct closing quotation mark is ”. This change straight quotation mark (a compromise between “ and ”) with closing quotation marks (which is 100% incorrect).

Here’s how EasyRPG renders it now (two closing quotes):
screenshot_1

Here’s the correct rendering in RPG_RT (a straight quote that is a compromise between an opening and a closing quote):
correct-font

@kakurasan

This comment has been minimized.

Show comment
Hide comment
@kakurasan

kakurasan Apr 15, 2017

Contributor

Here are screenshots on Japanese Windows (RPG_RT + "MS Gothic" font). U+0022 looks similar to "closing" quotation mark.

Seraphic Blue (Japanese) on Japanese Windows
Seraphic Blue (English) on Japanese Windows

Patch 1 (revert the change):

diff --git a/resources/shinonome/latin1/font_src.bit b/resources/shinonome/latin1/font_src.bit
index 0cece447..04d76585 100644
--- a/resources/shinonome/latin1/font_src.bit
+++ b/resources/shinonome/latin1/font_src.bit
@@ -683,10 +683,10 @@ DWIDTH 6 0
 BBX 6 12 0 -2
 BITMAP
 ......
-@@.@@.
-.@..@.
-.@..@.
-@..@..
+.@.@..
+.@.@..
+.@.@..
+......
 ......
 ......
 ......
diff --git a/src/shinonome_gothic.cpp b/src/shinonome_gothic.cpp
index 80ae8892..f43ddac9 100644
--- a/src/shinonome_gothic.cpp
+++ b/src/shinonome_gothic.cpp
@@ -35,7 +35,7 @@ ShinonomeGlyph const SHINONOME_GOTHIC[11219] = {
   { 31, false, { 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0 } },
   { 32, false, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
   { 33, false, { 0, 4, 4, 4, 4, 4, 4, 4, 0, 4, 0, 0 } },
-  { 34, false, { 0, 27, 18, 18, 9, 0, 0, 0, 0, 0, 0, 0 } },
+  { 34, false, { 0, 10, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0 } },
   { 35, false, { 0, 8, 10, 30, 11, 10, 10, 30, 11, 10, 2, 0 } },
   { 36, false, { 0, 4, 14, 21, 21, 6, 12, 20, 21, 14, 4, 0 } },
   { 37, false, { 0, 18, 21, 10, 8, 4, 4, 10, 22, 9, 1, 0 } },

Patch 2 (re-edit):

diff --git a/resources/shinonome/latin1/font_src.bit b/resources/shinonome/latin1/font_src.bit
index 0cece447..0a9ceb7c 100644
--- a/resources/shinonome/latin1/font_src.bit
+++ b/resources/shinonome/latin1/font_src.bit
@@ -683,7 +683,7 @@ DWIDTH 6 0
 BBX 6 12 0 -2
 BITMAP
 ......
-@@.@@.
+.@..@.
 .@..@.
 .@..@.
 @..@..
diff --git a/src/shinonome_gothic.cpp b/src/shinonome_gothic.cpp
index 80ae8892..a16960d6 100644
--- a/src/shinonome_gothic.cpp
+++ b/src/shinonome_gothic.cpp
@@ -35,7 +35,7 @@ ShinonomeGlyph const SHINONOME_GOTHIC[11219] = {
   { 31, false, { 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0 } },
   { 32, false, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
   { 33, false, { 0, 4, 4, 4, 4, 4, 4, 4, 0, 4, 0, 0 } },
-  { 34, false, { 0, 27, 18, 18, 9, 0, 0, 0, 0, 0, 0, 0 } },
+  { 34, false, { 0, 18, 18, 18, 9, 0, 0, 0, 0, 0, 0, 0 } },
   { 35, false, { 0, 8, 10, 30, 11, 10, 10, 30, 11, 10, 2, 0 } },
   { 36, false, { 0, 4, 14, 21, 21, 6, 12, 20, 21, 14, 4, 0 } },
   { 37, false, { 0, 18, 21, 10, 8, 4, 4, 10, 22, 9, 1, 0 } },

I prefer "Patch 2" because of MS Gothic (Japanese) font.

Seraphic Blue (Japanese) / Patch 2
Seraphic Blue (English) / Patch 2

I'm not sure which is better.

Contributor

kakurasan commented Apr 15, 2017

Here are screenshots on Japanese Windows (RPG_RT + "MS Gothic" font). U+0022 looks similar to "closing" quotation mark.

Seraphic Blue (Japanese) on Japanese Windows
Seraphic Blue (English) on Japanese Windows

Patch 1 (revert the change):

diff --git a/resources/shinonome/latin1/font_src.bit b/resources/shinonome/latin1/font_src.bit
index 0cece447..04d76585 100644
--- a/resources/shinonome/latin1/font_src.bit
+++ b/resources/shinonome/latin1/font_src.bit
@@ -683,10 +683,10 @@ DWIDTH 6 0
 BBX 6 12 0 -2
 BITMAP
 ......
-@@.@@.
-.@..@.
-.@..@.
-@..@..
+.@.@..
+.@.@..
+.@.@..
+......
 ......
 ......
 ......
diff --git a/src/shinonome_gothic.cpp b/src/shinonome_gothic.cpp
index 80ae8892..f43ddac9 100644
--- a/src/shinonome_gothic.cpp
+++ b/src/shinonome_gothic.cpp
@@ -35,7 +35,7 @@ ShinonomeGlyph const SHINONOME_GOTHIC[11219] = {
   { 31, false, { 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0 } },
   { 32, false, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
   { 33, false, { 0, 4, 4, 4, 4, 4, 4, 4, 0, 4, 0, 0 } },
-  { 34, false, { 0, 27, 18, 18, 9, 0, 0, 0, 0, 0, 0, 0 } },
+  { 34, false, { 0, 10, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0 } },
   { 35, false, { 0, 8, 10, 30, 11, 10, 10, 30, 11, 10, 2, 0 } },
   { 36, false, { 0, 4, 14, 21, 21, 6, 12, 20, 21, 14, 4, 0 } },
   { 37, false, { 0, 18, 21, 10, 8, 4, 4, 10, 22, 9, 1, 0 } },

Patch 2 (re-edit):

diff --git a/resources/shinonome/latin1/font_src.bit b/resources/shinonome/latin1/font_src.bit
index 0cece447..0a9ceb7c 100644
--- a/resources/shinonome/latin1/font_src.bit
+++ b/resources/shinonome/latin1/font_src.bit
@@ -683,7 +683,7 @@ DWIDTH 6 0
 BBX 6 12 0 -2
 BITMAP
 ......
-@@.@@.
+.@..@.
 .@..@.
 .@..@.
 @..@..
diff --git a/src/shinonome_gothic.cpp b/src/shinonome_gothic.cpp
index 80ae8892..a16960d6 100644
--- a/src/shinonome_gothic.cpp
+++ b/src/shinonome_gothic.cpp
@@ -35,7 +35,7 @@ ShinonomeGlyph const SHINONOME_GOTHIC[11219] = {
   { 31, false, { 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0 } },
   { 32, false, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
   { 33, false, { 0, 4, 4, 4, 4, 4, 4, 4, 0, 4, 0, 0 } },
-  { 34, false, { 0, 27, 18, 18, 9, 0, 0, 0, 0, 0, 0, 0 } },
+  { 34, false, { 0, 18, 18, 18, 9, 0, 0, 0, 0, 0, 0, 0 } },
   { 35, false, { 0, 8, 10, 30, 11, 10, 10, 30, 11, 10, 2, 0 } },
   { 36, false, { 0, 4, 14, 21, 21, 6, 12, 20, 21, 14, 4, 0 } },
   { 37, false, { 0, 18, 21, 10, 8, 4, 4, 10, 22, 9, 1, 0 } },

I prefer "Patch 2" because of MS Gothic (Japanese) font.

Seraphic Blue (Japanese) / Patch 2
Seraphic Blue (English) / Patch 2

I'm not sure which is better.

@rohkea

This comment has been minimized.

Show comment
Hide comment
@rohkea

rohkea Apr 15, 2017

Member

I think the solution is to use different fonts for Japanese and European translations.

The " character can be fixed, but … would look weird either for Japanese or for European lanuages. For Japanese, … should be in the middle of the line. For European languages, it should be on the bottom.

I will add the code for using different fonts in the evening.

Member

rohkea commented Apr 15, 2017

I think the solution is to use different fonts for Japanese and European translations.

The " character can be fixed, but … would look weird either for Japanese or for European lanuages. For Japanese, … should be in the middle of the line. For European languages, it should be on the bottom.

I will add the code for using different fonts in the evening.

@fdelapena

This comment has been minimized.

Show comment
Hide comment
@fdelapena

fdelapena Apr 15, 2017

Contributor

In my opinion, sometimes Shift_JIS to Unicode mappings are not perfect, e.g. well known issues with the inverted wave dash, or Yen in the codepoint of backslash. For the Yen sign issue (also an issue for Won sign in Korean codepage) they could be solved by doing a replacement directly in text parsing. For other stuff (wave dash in top or middle, quotes styling, etc.) might use the same solution depending on the used game encoding.

Contributor

fdelapena commented Apr 15, 2017

In my opinion, sometimes Shift_JIS to Unicode mappings are not perfect, e.g. well known issues with the inverted wave dash, or Yen in the codepoint of backslash. For the Yen sign issue (also an issue for Won sign in Korean codepage) they could be solved by doing a replacement directly in text parsing. For other stuff (wave dash in top or middle, quotes styling, etc.) might use the same solution depending on the used game encoding.

@Ghabry

This comment has been minimized.

Show comment
Hide comment
@Ghabry

Ghabry Apr 17, 2017

Member

I also know one european user who doesn't like the ... formatting of Shinonome. The 3 dots are centered, not at the bottom.

Member

Ghabry commented Apr 17, 2017

I also know one european user who doesn't like the ... formatting of Shinonome. The 3 dots are centered, not at the bottom.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment