From Fedora Project Wiki
m (trivial update)
(Update test cases)
(3 intermediate revisions by the same user not shown)
Line 72: Line 72:
|}
|}


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 figured out from the font file size:
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:


{| class="wikitable"
{| class="wikitable"
Line 145: Line 145:
* Check if the default font is changed to Noto:
* Check if the default font is changed to Noto:
** ja
** ja
*** LANG=ja_JP.UTF-8 fc-match sans-serif
*** LANG=ja_JP.UTF-8 fc-match sans-serif:lang=ja
*** LANG=ja_JP.UTF-8 fc-match serif
*** LANG=ja_JP.UTF-8 fc-match serif:lang=ja
*** LANG=ja_JP.UTF-8 fc-match monospace
*** LANG=ja_JP.UTF-8 fc-match monospace:lang=ja
** ko
** ko
*** LANG=ko_KR.UTF-8 fc-match sans-serif
*** LANG=ko_KR.UTF-8 fc-match sans-serif:lang=ko
*** LANG=ko_KR.UTF-8 fc-match serif
*** LANG=ko_KR.UTF-8 fc-match serif:lang=ko
*** LANG=ko_KR.UTF-8 fc-match monospace
*** LANG=ko_KR.UTF-8 fc-match monospace:lang=ko
** zh-cn
** zh-cn
*** LANG=zh_CN.UTF-8 fc-match sans-serif
*** LANG=zh_CN.UTF-8 fc-match sans-serif:lang=zh-cn
*** LANG=zh_CN.UTF-8 fc-match serif
*** LANG=zh_CN.UTF-8 fc-match serif:lang=zh-cn
*** LANG=zh_CN.UTF-8 fc-match monospace
*** LANG=zh_CN.UTF-8 fc-match monospace:lang=zh-cn
** zh-tw
** zh-tw
*** LANG=zh_TW.UTF-8 fc-match sans-serif
*** LANG=zh_TW.UTF-8 fc-match sans-serif:lang=zh-tw
*** LANG=zh_TW.UTF-8 fc-match serif
*** LANG=zh_TW.UTF-8 fc-match serif:lang=zh-tw
*** LANG=zh_TW.UTF-8 fc-match monospace
*** 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.  
Line 203: Line 203:


<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
* Contingency mechanism: (What to do?  Who will do it?) N/A (not a System Wide Change)  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency mechanism: (What to do?  Who will do it?) revert all of changes in packages and comps <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
* Contingency deadline: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency deadline: Beta freeze <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- Does finishing this feature block the release, or can we ship with the feature in incomplete state? -->
<!-- Does finishing this feature block the release, or can we ship with the feature in incomplete state? -->
* Blocks release? N/A (not a System Wide Change), Yes/No <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Blocks release? No
* Blocks product? product <!-- Applicable for Changes that blocks specific product release/Fedora.next -->
<!-- * Blocks product? product --><!-- Applicable for Changes that blocks specific product release/Fedora.next -->


== Documentation ==
== Documentation ==

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