From 7cd8decef4781f81800abfddd6ca43e079b7997b Mon Sep 17 00:00:00 2001 From: Olli Wang Date: Tue, 1 Nov 2016 23:57:41 +0800 Subject: [PATCH] Better support for CJK characters. Previously, the Unicode range of the CJK chractaters only includes Chinese charactaters, Japanese Kanji, and CJK Symbols and Punctuation. The range are used by traditioanl Korean as well. This commit further includes Hiragana and Katakana in Japanese, and Hangul Syllables and Hangul Jamo in Korean to make CJK support more complete. --- src/nanovg.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/nanovg.c b/src/nanovg.c index 4e1731b..149886b 100644 --- a/src/nanovg.c +++ b/src/nanovg.c @@ -2617,7 +2617,12 @@ int nvgTextBreakLines(NVGcontext* ctx, const char* string, const char* end, floa type = NVG_NEWLINE; break; default: - if (iter.codepoint >= 0x4E00 && iter.codepoint <= 0x9FFF) + if (iter.codepoint >= 0x4E00 && iter.codepoint <= 0x9FFF || + iter.codepoint >= 0x3000 && iter.codepoint <= 0x30FF || + iter.codepoint >= 0xFF00 && iter.codepoint <= 0xFFEF || + iter.codepoint >= 0x1100 && iter.codepoint <= 0x11FF || + iter.codepoint >= 0x3130 && iter.codepoint <= 0x318F || + iter.codepoint >= 0xAC00 && iter.codepoint <= 0xD7AF) type = NVG_CJK_CHAR; else type = NVG_CHAR;