From Fedora Project Wiki
(update test cases to make sure if the lang is set as strong binding)
(Update test cases)
Line 160: Line 160:
*** LANG=zh_TW.UTF-8 fc-match serif:lang=zh-tw
*** LANG=zh_TW.UTF-8 fc-match serif:lang=zh-tw
*** LANG=zh_TW.UTF-8 fc-match monospace:lang=zh-tw
*** LANG=zh_TW.UTF-8 fc-match monospace:lang=zh-tw
* Check applications if they render CJK characters with the expected fonts
* Check the following items on applications (GTK+: gedit, gnome-terminal etc, Qt: kate, konsole etc, X/Xft: xterm etc, Others: LibreOffice, firefox etc)
** GTK+ apps like gedit, gnome-terminal
** Check applications preference if the above fonts are visible
** Qt apps like kate, konsole
** Check applications if the above fonts are rendered properly
** X/Xft apps like xterm
** Check applications if those fonts are chosen as the default font for certain language when the generic family names like sans-serif, serif, and monospace is selected.
** Others like LibreOffice, firefox...
*** See the above table for mapping between language and families


<!-- This does not need to be a full-fledged document. Describe the dimensions of tests that this change implementation is expected to pass when it is done.  If it needs to be tested with different hardware or software configurations, indicate them.  The more specific you can be, the better the community testing can be.  
<!-- This does not need to be a full-fledged document. Describe the dimensions of tests that this change implementation is expected to pass when it is done.  If it needs to be tested with different hardware or software configurations, indicate them.  The more specific you can be, the better the community testing can be.  

Revision as of 11:21, 16 June 2018


CJK Default Fonts To Noto

Summary

Changes the default fonts for CJK to Google Noto.

Owner

Current status

  • Targeted release: Fedora 29
  • Last updated: 2018-06-16
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

This proposal is to change the default fonts for CJK to Google Noto. typefaces and the size consumptions will be changed as the follow:

Language Sans-serif Serif Monospace
ja VL Gothic -> Noto Sans CJK JP (No default serif) -> Noto Serif CJK JP VL Gothic -> Noto Sans Mono CJK JP
ko NanumGothic -> Noto Sans CJK KR (No default serif) -> Noto Serif CJK KR (No default monospace) -> Noto Sans Mono CJK KR
zh-CN Source Han Sans CN -> Noto Sans CJK SC Source Han Serif CN -> Noto Serif CJK SC Source Han Sans CN -> Noto Sans Mono CJK SC
zh-TW Source Han Sans TW -> Noto Sans CJK TC Source Han Serif TW -> Noto Serif CJK TC Source Han Sans TW -> Noto Sans Mono CJK TC

Note that all CJK fonts will be unified into one OpenType collection format file per weight-variants so there are no detailed estimation for f29. all of CJK languages' fonts will be covered by one package. the size consumptions are calculated from the font file size:

\ ja ko zh-CN zh-TW Total
f28 3.9M 13.8M 133.1M 77.4M 228.2M
f29 - - - - 288M

Benefit to Fedora

This change will provides better quality of rendering for all of CJK characters. we will have default serif and monospace fonts for Japanese and Korean and keep consistensies in look among those typefaces.


Scope

  • Proposal owners:
    • Update packages with the proper priority of fontconfig config files.
    • Update fonts group in comps
  • Other developers: N/A (not a System Wide Change)
  • Policies and guidelines: N/A
  • Trademark approval: N/A

Upgrade/compatibility impact

This change will be done by installing the updated packages. no need to update/modify any configuration files by the hand. the sort of this change may has the objective preference. they can revert this by uninstalling font packages like this:

# dnf uninstall google-noto-sans-cjk-ttc-fonts google-noto-serif-cjk-ttc-fonts


How To Test

  • Check if the default font is changed to Noto:
    • ja
      • LANG=ja_JP.UTF-8 fc-match sans-serif:lang=ja
      • LANG=ja_JP.UTF-8 fc-match serif:lang=ja
      • LANG=ja_JP.UTF-8 fc-match monospace:lang=ja
    • ko
      • LANG=ko_KR.UTF-8 fc-match sans-serif:lang=ko
      • LANG=ko_KR.UTF-8 fc-match serif:lang=ko
      • LANG=ko_KR.UTF-8 fc-match monospace:lang=ko
    • zh-cn
      • LANG=zh_CN.UTF-8 fc-match sans-serif:lang=zh-cn
      • LANG=zh_CN.UTF-8 fc-match serif:lang=zh-cn
      • LANG=zh_CN.UTF-8 fc-match monospace:lang=zh-cn
    • zh-tw
      • LANG=zh_TW.UTF-8 fc-match sans-serif:lang=zh-tw
      • LANG=zh_TW.UTF-8 fc-match serif:lang=zh-tw
      • LANG=zh_TW.UTF-8 fc-match monospace:lang=zh-tw
  • Check the following items on applications (GTK+: gedit, gnome-terminal etc, Qt: kate, konsole etc, X/Xft: xterm etc, Others: LibreOffice, firefox etc)
    • Check applications preference if the above fonts are visible
    • Check applications if the above fonts are rendered properly
    • Check applications if those fonts are chosen as the default font for certain language when the generic family names like sans-serif, serif, and monospace is selected.
      • See the above table for mapping between language and families


User Experience

Users will see better quality of rendering for CJK characters on applications and on desktops.


Dependencies

N/A

Contingency Plan

  • Contingency mechanism: (What to do? Who will do it?) revert all of changes in packages and comps
  • Contingency deadline: Beta freeze
  • Blocks release? No

Documentation

N/A (not a System Wide Change)

Release Notes