Unicode character support required
Opened this issue · 2 comments
Describe the bug
When unicode characters (Chinese, Japanese, Korean, etc.) appear in the replay file (commonly in chat), the original font warhelios_bold.ttf
just gives blank boxes as output due to lack of characters.
To reproduce
Steps to reproduce the behavior:
- Play WOWS and type any undefined characters (e.g., CJK characters) in chat.
- Generate replay mp4 using renderer.
Expected behavior
The characters are rendered as they should be.
Possible solutions
- Place any Unicode font (I tried
Arial Unicode MS Font
) in thesrc/renderer/resources
folder. - Edit
src/renderer/layers/chat.py
, replace L25 byfilename="Arial Unicode MS Font.ttf", size=12
(just to change the font used) - Reinstall the minimap_renderer package
- Regenerate the replays with blank box outputs. Now the characters are normal.
This solution is quite simple but the fonts in chat are not consistent with other fonts now. Is there any possible solutions to use different fonts for those undefined characters?
I'll make a custom font that merges the different Warhelios fonts Wargaming uses.
I have tested the Source_Han_Sans_CN_Bold_WH
font from the game. It renders exactly the same as in the game. It also has the largest size (11MB). Not sure if this can cover up Japanese or potentially Korean also.