From 5ad75bb0ef7725212d8b0d83f985c6803d8024c3 Mon Sep 17 00:00:00 2001 From: Lim Chunwei Date: Wed, 17 Nov 2021 00:06:19 +0800 Subject: [PATCH] East Asian font size adjustments --- SpaceCadetPinball/gdrv.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/SpaceCadetPinball/gdrv.cpp b/SpaceCadetPinball/gdrv.cpp index b714d9c..dd28270 100644 --- a/SpaceCadetPinball/gdrv.cpp +++ b/SpaceCadetPinball/gdrv.cpp @@ -441,7 +441,6 @@ void gdrv::grtext_draw_ttext_in_box(LPCWSTR text, int xOff, int yOff, int width, yOff = static_cast(yOff * fullscrn::ScaleY) + fullscrn::OffsetY; width = static_cast(width * fullscrn::ScaleX); height = static_cast(height * fullscrn::ScaleY); - auto fontSize = static_cast(round(fontSizes[fullscrn::GetResolution()] * fullscrn::ScaleY)); HDC dc = GetDC(hwnd); tagRECT rc{}; @@ -460,24 +459,30 @@ void gdrv::grtext_draw_ttext_in_box(LPCWSTR text, int xOff, int yOff, int width, } const char* font; + int fontSizeChange = 0; switch (options::Options.Language) { case Languages::TraditionalChinese: font = "Microsoft JhengHei"; + fontSizeChange = 4; break; case Languages::SimplifiedChinese: font = "Microsoft YaHei"; + fontSizeChange = 4; break; case Languages::Japanese: font = "MS UI Gothic"; break; case Languages::Korean: font = "Gulim"; + fontSizeChange = 4; break; default: font = "Arial"; } + auto fontSize = static_cast(round((fontSizes[fullscrn::GetResolution()] + fontSizeChange) * fullscrn::ScaleY)); + // Default font does not scale well auto hNewFont = CreateFont(fontSize, 0, 0, 0, FW_DONTCARE, FALSE, FALSE, FALSE, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,