Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice

Question Korean Language Font Not Working with TextMeshPro

Discussion in 'UGUI & TextMesh Pro' started by siddharth3322, Jan 26, 2022.

  1. siddharth3322

    siddharth3322

    Joined:
    Nov 29, 2013
    Posts:
    1,049
    My game support multiple languages and Korean is one of them.
    I have downloaded Korean font files from here:
    https://fonts.google.com/noto/specimen/Noto+Sans+KR

    This kind of result I have with Text and TextMeshPro components.
    text vs textmeshpro components.png

    Now I can't able to understand why TextMeshPro component not able to display texts properly though I have used special Korean supported fonts.

    Any how for the quality, i want to use TextMeshPro-Text but with this kind of output how can I move ahead! Not just with Korean language but with some languages have the same problem in TextMeshPro.

    Please suggestion some solution for this.
     
  2. jonathan_h

    jonathan_h

    Unity Technologies

    Joined:
    Jul 29, 2021
    Posts:
    18
    Hi,

    It's possible the glyphs are not included in the static font asset. You need to specifically include these characters (unicode range) when creating the static font asset. Another option is to create a dynamic font asset which is simpler as you don't need to provide unicode range. Please refer to the forum link below for additional information on creating dynamic font asset.

    https://forum.unity.com/threads/korean-japanese-and-chinese-localization-issues.663991/
     
    siddharth3322 likes this.
  3. siddharth3322

    siddharth3322

    Joined:
    Nov 29, 2013
    Posts:
    1,049
    Thank you @jonathan_h for your quick reply and good news is, I have created a dynamic font and Korean and Thai languages started working properly.
    From the link this video really become useful to me:


    Still I was facing problem with the Hindi language, can you able to suggest me for this?
    Dynamic font could not able to handle Hindi language fonts.
    This font I have used for testing for Hindi language texts:
    https://fonts.google.com/specimen/Noto Sans Devanagari
     
    MythicalCity likes this.
  4. jonathan_h

    jonathan_h

    Unity Technologies

    Joined:
    Jul 29, 2021
    Posts:
    18
    Hi,

    I need more details regarding the issue with the Hindi language font. Where you able to create the font asset? If yes then what is exactly the issue you are having?
     
  5. siddharth3322

    siddharth3322

    Joined:
    Nov 29, 2013
    Posts:
    1,049
    For Hindi language, I can't able to find a font that can support Hindi language so Unity editor can't able to recognise this language as like Chinese, Japanese and Korean languages.

    Here you have a screenshot of my language selection screen:
    hindi language not supported.png

    All other languages started working properly that you can clearly see in the above screenshot.
    Total 23 languages I have used within the project :)
     
  6. jonathan_h

    jonathan_h

    Unity Technologies

    Joined:
    Jul 29, 2021
    Posts:
    18
    Please create static font asset with the correct unicode range and let me know if it works. Also, please provide the version of editor and TextMeshPro that you are using.
     
    siddharth3322 likes this.
  7. siddharth3322

    siddharth3322

    Joined:
    Nov 29, 2013
    Posts:
    1,049
    Let me reply for all points those you have asked.
    Unity Version 2021.1.13f1
    TextMeshPro Version 3.0.6

    I have applied the same trick that i used for Chinese, Japanese and Korean languages.
    Used specific font for Hindi language.
    I was using Google Fonts for languages which do not supported by the default game used font and I have picked this font style.
    https://fonts.google.com/specimen/Hind#standard-styles

    This is the result that I am getting at present:
    hindi language current progress.png

    Not displaying Hindi content correctly in Editor window plus in the game window too.
    This is the correct way of writing Hindi (हिन्दी) in the local language, compare with my screenshot.
    Similarly all texts written in wrong way though it's started writing little bit in Hindi language.

    I hope you got my point :)
     
  8. jonathan_h

    jonathan_h

    Unity Technologies

    Joined:
    Jul 29, 2021
    Posts:
    18
    Hi,

    After talking to the team, it seems Hindi language is not fully supported yet in TextMeshPro. However, there is some Unity asset store plugins compatible with TextMeshPro that you can use. Alternatively, you can try using the ITextPreprocessor interface to render the text correctly.
     
    siddharth3322 likes this.
  9. unity_69EVftN1AdjyIw

    unity_69EVftN1AdjyIw

    Joined:
    Nov 10, 2020
    Posts:
    1
    Hello Siddharth,
    Were u able to fix the issue of the text not rendering properly both inspector and TMP? im trying to use kannada font and it is not rendering the text in the proper order when there are some characters in subscript.