Skip to content

Issues in Sans SC #612

Open
Open

Description

@NightFurySL2001

Thank you for the hard work that goes into the IBM Plex Sans SC release. However, it has been disappointing given the bad quality of the Simplified Chinese glyphs (which warrant another issue @ #613). It is even worse with the following errors being present in the font showing the lack of QA on behalf of IBM Plex team. Reference glyphs on top are Source Han Sans/Serif.

The following characters have incorrect components, all (except the first) of them in 《通用规范汉字表》:
鿑𫐓遥𫵷𬀩崄
image

The following characters have incorrect strokes:
垚潖簠䶺
image

The component 廷 are all incorrect. According to 《通用规范汉字表》 and the latest GB 18030-2022, the middle stroke of 壬 should have been the longest, not the bottom stroke. IBM Plex Sans JP and TC had the correct form that can be applied in SC directly, but have been edited incorrectly.
image

《通用规范汉字表》(2013)

image
image
image

GB 18030-2022

image

Activity

  1. NightFurySL2001 commented on Dec 3, 2024

    @NightFurySL2001
    Author

    Additioanlly, 21 characters (all from the Kangxi Radicals block) are missing in SC, meaning the font does not reach GB 18030-2022 coverage. These should probably be mapped directly from the Kangxi Radicals block (all 214 are present).
    艸見貝車釆長門韋頁風飛馬鬥魚鹵麥黽齊齒龍龜
    image

  2. changed the title [-]Incorrect characters in SC[/-] [+]Issues in Sans SC[/+] on Dec 3, 2024
  3. lxgw commented on Dec 3, 2024

    @lxgw

    Additioanlly, 21 characters (all from the Kangxi Radicals block) are missing in SC, meaning the font does not reach GB 18030-2022 coverage. These should probably be mapped directly from the Kangxi Radicals block (all 214 are present). 艸見貝車釆長門韋頁風飛馬鬥魚鹵麥黽齊齒龍龜

    Besides, the character U+9F9C "龜" in SC should be mapped to U+2EF1 "⻱" instead of U+2FD4 "⿔" .

    图片

    图片

    图片

  4. StrideNotStrike commented on Dec 21, 2024

    @StrideNotStrike

    Glyphs of U+9F90, U+9F95 and U+9F97 (龐龕龗) have the vertical stroke of 龍 component, which doesn’t follow the other glyphs with this component. The top should follow other glyphs with the 龍 component and be slanted at the top. Reference glyphs below are MiSans.
    Screenshot_20241221_170001

  5. Skr-ZERO commented on Dec 24, 2024

    @Skr-ZERO

    image
    眳(U+7733) is deformed.

  6. VentusUta commented on Dec 26, 2024

    @VentusUta

    The component 廷 are all incorrect. According to 《通用规范汉字表》 and the latest GB 18030-2022, the middle stroke of 壬 should have been the longest, not the bottom stroke. IBM Plex Sans JP and TC had the correct form that can be applied in SC directly, but have been edited incorrectly.

    It’s weird… in the Unicode documentation, the G source has the longest bottom stroke.

    image

  7. AjinsonTalos commented on Dec 30, 2024

    @AjinsonTalos

    Yep, the actral standard of the characters in China Mainland is 《通用规范汉字表》 currently, which is not fully consistent with the Unicode chart.

  8. CoolMarvel43 commented on Jan 9, 2025

    @CoolMarvel43

    Additioanlly, 21 characters (all from the Kangxi Radicals block) are missing in SC, meaning the font does not reach GB 18030-2022 coverage. These should probably be mapped directly from the Kangxi Radicals block (all 214 are present). 艸見貝車釆長門韋頁風飛馬鬥魚鹵麥黽齊齒龍龜 image

    Well to clarify this part, the SC version is missing characters in these codepoints (currently mapped codepoint in italics):
    艸 U+8278 (U+2F8B)
    見 U+898B (U+2F92)
    貝 U+8C9D (U+2F99)
    車 U+8ECA (U+2F9E)
    釆 U+91C6 (U+2FA4)
    長 U+9577 (U+2FA7)
    門 U+9580 (U+2FA8)
    韋 U+97CB (U+2FB1)
    頁 U+9801 (U+2FB4)
    風 U+98A8 (U+2FB5)
    飛 U+98DB (U+2FB6)
    馬 U+99AC (U+2FBA)
    鬥 U+9B25 (U+2FBE)
    魚 U+9B5A (U+2FC2)
    鹵 U+9E75 (U+2FC4)
    麥 U+9EA5 (U+2FC6)
    黽 U+9EFD (U+2FCC)
    齊 U+9F4A (U+2FD1)
    齒 U+9F52 (U+2FD2)
    龍 U+9F8D (U+2FD3)
    龜 U+9F9C (U+2FD4)

    The appropriate glyphs are there, but currently only mapped to the Kangxi Radical blocks, so they should also be mapped to their regular codepoints.

    Screenshot 2025-01-09 at 21 15 43
  9. Skr-ZERO commented on Mar 15, 2025

    @Skr-ZERO

    The following characters have incorrect components, all (except the first) of them in 《通用规范汉字表》: 鿑𫐓遥𫵷𬀩崄 image

    滫 and 吭 in 《通用规范汉字表》have incorrect component, too.

    Image

  10. farteryhr commented on Apr 2, 2025

    @farteryhr

    借楼 and here are my findings:
    Image
    wat
    Image
    should be like 邶 since unicode 5.2
    Image
    dot of 龍
    Image
    dot of 言
    ImageImage
    excessive size seems for many 卑
    Image
    maybe small problem
    Image
    winzip
    Image
    the hook
    Image
    bit of out of style?
    ImageImageImageImage
    does 勿 need some care? as for my impression, the convention is to let the two 丿evenly divide the bar, the latter leaving space between the 乛 turning.


    and personally i think the contact point of 攵 (and 夂, or even 友犮, what about 䘠), especially when compressed hard horizontally (eg. 㜫䥩鿦), might be better to also follow the 人 style. i know there will be a lot of glyphs to change for this, though, just my wishes.

  11. deleted a comment from LoveBodhi on Jul 2, 2025
  12. deleted a comment from LoveBodhi on Jul 2, 2025
  13. deleted a comment from LoveBodhi on Jul 2, 2025
  14. BoldMonday commented on Jul 2, 2025

    @BoldMonday
    Collaborator

    Please remain on-topic. Links to derivatives of Plex are not appreciated and will be removed.

  15. deleted a comment from on Jul 2, 2025
  16. deleted a comment from lxgw on Jul 2, 2025
  17. NightFurySL2001 commented on Jul 3, 2025

    @NightFurySL2001
    Author

    燬 is incorrect in SC, bottom should be 工 not 土: Image
    Image

    燾 has incorrect ordered point on Bold causing interpolation issues between Regular and Bold:
    Image

  18. lakejason0 commented on Jul 10, 2025

    @lakejason0
    Image Image

    擧 has a bad outline, use the glyph in TC would work.

  19. lakejason0 commented on Jul 10, 2025

    @lakejason0
    Image Image Image

    執 should follow the stroke length in the regular master, SC forget to change the other masters. Use the glyph in TC would work.

  20. LoveBodhi commented on Aug 22, 2025

    @LoveBodhi

    Too many glyph problems to be used by present...
    I have to even use Source Han Sans instead...

  21. NightFurySL2001 commented on Oct 18, 2025

    @NightFurySL2001
    Author

    The OpenType ss02 feature is mapped to the wrong g glyph. In all other versions ss02 is mapped to single-storey g, but in SC it is mapped to the double-storey g that has a flatter tail version for diacritics mark.

  22. Steve-Cheung-emct commented on Feb 1, 2026

    @Steve-Cheung-emct

    Additioanlly, 21 characters (all from the Kangxi Radicals block) are missing in SC, meaning the font does not reach GB 18030-2022 coverage. These should probably be mapped directly from the Kangxi Radicals block (all 214 are present). 艸見貝車釆長門韋頁風飛馬鬥魚鹵麥黽齊齒龍龜 image

    Well to clarify this part, the SC version is missing characters in these codepoints (currently mapped codepoint in italics): 艸 U+8278 (U+2F8B) 見 U+898B (U+2F92) 貝 U+8C9D (U+2F99) 車 U+8ECA (U+2F9E) 釆 U+91C6 (U+2FA4) 長 U+9577 (U+2FA7) 門 U+9580 (U+2FA8) 韋 U+97CB (U+2FB1) 頁 U+9801 (U+2FB4) 風 U+98A8 (U+2FB5) 飛 U+98DB (U+2FB6) 馬 U+99AC (U+2FBA) 鬥 U+9B25 (U+2FBE) 魚 U+9B5A (U+2FC2) 鹵 U+9E75 (U+2FC4) 麥 U+9EA5 (U+2FC6) 黽 U+9EFD (U+2FCC) 齊 U+9F4A (U+2FD1) 齒 U+9F52 (U+2FD2) 龍 U+9F8D (U+2FD3) 龜 U+9F9C (U+2FD4)

    The appropriate glyphs are there, but currently only mapped to the Kangxi Radical blocks, so they should also be mapped to their regular codepoints.

    Screenshot 2025-01-09 at 21 15 43

    Has this issue been resolved?

    这个问题已经被解决了吗?

  23. Steve-Cheung-emct commented on Feb 1, 2026

    @Steve-Cheung-emct

    for OTF , dump out cmap, then add this code before </cmap_format_12> and </cmap_format_4>

          <map code="0x8C9D"  name="cid07739"/><!-- CJK UNIFIED IDEOGRAPH-8C9D -->
          <map code="0x9577"  name="cid07797"/><!-- CJK UNIFIED IDEOGRAPH-9577 -->
          <map code="0x8ECA"  name="cid07803"/><!-- CJK UNIFIED IDEOGRAPH-8ECA -->
          <map code="0x9F52"  name="cid07814"/><!-- CJK UNIFIED IDEOGRAPH-9F52 -->
          <map code="0x9B25"  name="cid07888"/><!-- CJK UNIFIED IDEOGRAPH-9B25 -->
          <map code="0x98DB"  name="cid07924"/><!-- CJK UNIFIED IDEOGRAPH-98DB -->
          <map code="0x98A8"  name="cid07936"/><!-- CJK UNIFIED IDEOGRAPH-98A8 -->
          <map code="0x9F9C"  name="cid07988"/><!-- CJK UNIFIED IDEOGRAPH-9F9C -->
          <map code="0x898B"  name="cid08086"/><!-- CJK UNIFIED IDEOGRAPH-898B -->
          <map code="0x9F8D"  name="cid08247"/><!-- CJK UNIFIED IDEOGRAPH-9F8D -->
          <map code="0x99AC"  name="cid08301"/><!-- CJK UNIFIED IDEOGRAPH-99AC -->
          <map code="0x9EA5"  name="cid08305"/><!-- CJK UNIFIED IDEOGRAPH-9EA5 -->
          <map code="0x9580"  name="cid08317"/><!-- CJK UNIFIED IDEOGRAPH-9580 -->
          <map code="0x9F4A"  name="cid08390"/><!-- CJK UNIFIED IDEOGRAPH-9F4A -->
          <map code="0x97CB"  name="cid08589"/><!-- CJK UNIFIED IDEOGRAPH-97CB -->
          <map code="0x9801"  name="cid08713"/><!-- CJK UNIFIED IDEOGRAPH-9801 -->
          <map code="0x9B5A"  name="cid08761"/><!-- CJK UNIFIED IDEOGRAPH-9B5A -->
          <map code="0x9EFD"  name="cid09752"/><!-- CJK UNIFIED IDEOGRAPH-9EFD -->
          <map code="0x9E75"  name="cid09864"/><!-- CJK UNIFIED IDEOGRAPH-9E75 -->
          <map code="0x8278"  name="cid17826"/><!-- CJK UNIFIED IDEOGRAPH-8278 -->
          <map code="0x91C6"  name="cid19992"/><!-- CJK UNIFIED IDEOGRAPH-91C6 -->

    for TTF , dump out cmap, then add this code before </cmap_format_12> and </cmap_format_4>

          <map code="0x8C9D"  name="uni2F99"/><!-- CJK UNIFIED IDEOGRAPH-8C9D-->
          <map code="0x9577"  name="uni2FA7"/><!-- CJK UNIFIED IDEOGRAPH-9577-->
          <map code="0x8ECA"  name="uni2F9E"/><!-- CJK UNIFIED IDEOGRAPH-8ECA-->
          <map code="0x9F52"  name="uni2FD2"/><!-- CJK UNIFIED IDEOGRAPH-9F52-->
          <map code="0x9B25"  name="uni2FBE"/><!-- CJK UNIFIED IDEOGRAPH-9B25-->
          <map code="0x98DB"  name="uni2FB6"/><!-- CJK UNIFIED IDEOGRAPH-98DB-->
          <map code="0x98A8"  name="uni2FB5"/><!-- CJK UNIFIED IDEOGRAPH-98A8-->
          <map code="0x9F9C"  name="uni2FD4"/><!-- CJK UNIFIED IDEOGRAPH-9F9C-->
          <map code="0x898B"  name="uni2F92"/><!-- CJK UNIFIED IDEOGRAPH-898B-->
          <map code="0x9F8D"  name="uni2FD3"/><!-- CJK UNIFIED IDEOGRAPH-9F8D-->
          <map code="0x99AC"  name="uni2FBA"/><!-- CJK UNIFIED IDEOGRAPH-99AC-->
          <map code="0x9EA5"  name="uni2FC6"/><!-- CJK UNIFIED IDEOGRAPH-9EA5-->
          <map code="0x9580"  name="uni2FA8"/><!-- CJK UNIFIED IDEOGRAPH-9580-->
          <map code="0x9F4A"  name="uni2FD1"/><!-- CJK UNIFIED IDEOGRAPH-9F4A-->
          <map code="0x97CB"  name="uni2FB1"/><!-- CJK UNIFIED IDEOGRAPH-97CB-->
          <map code="0x9801"  name="uni2FB4"/><!-- CJK UNIFIED IDEOGRAPH-9801-->
          <map code="0x9B5A"  name="uni2FC2"/><!-- CJK UNIFIED IDEOGRAPH-9B5A-->
          <map code="0x9EFD"  name="uni2FCC"/><!-- CJK UNIFIED IDEOGRAPH-9EFD-->
          <map code="0x9E75"  name="uni2FC4"/><!-- CJK UNIFIED IDEOGRAPH-9E75-->
          <map code="0x8278"  name="uni2F8B"/><!-- CJK UNIFIED IDEOGRAPH-8278-->
          <map code="0x91C6"  name="uni2FA4"/><!-- CJK UNIFIED IDEOGRAPH-91C6-->

    then you could merge the cmap by the cmd code, for example,

    ttx -m IBMPlexSansSC-Regular.otf cmap.ttx
    del IBMPlexSansSC-Regular.otf
    ren cmap.otf IBMPlexSansSC-Regular.otf
  24. NightFurySL2001 commented on Mar 10, 2026

    @NightFurySL2001
    Author

    犖 starting point for Thin is different to Regular and Bold.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions