zoukankan      html  css  js  c++  java
  • 如何讓Android系統顯示CJK擴展區漢字

    由於一些特殊需要,需要在個人設備上顯示CJK擴展區漢字,經多方詢問並驗證,找到了一下辦法,暫總結如下。


    、電腦上顯示

    在電腦(Windows,Linux,Mac等系統)上可以通過安裝「花園明朝字體」,讓電腦/PC顯示擴展區的漢字、八卦符號、麻將符號等。截止2015年8月,Unicode已經發展到了Unicode8.0,8.0版本收錄了80,388個漢字。

    『1』、花園明朝字體:目前收錄97,745字。

    『2』、CJK擴展區漢字:CJK統一表意文字/CJK Unified Ideographs/Unihan。C:China/中國,J:Japan/日本,K:Korea/韓國。

    『3』、「花園明朝字體」下載地址:Hanazono fonts


    二、Android上顯示

    截止2016年,目前大多数安卓手机系统应该都是5.0以上的系统了,安卓5.0以上系統字体显示机制基本上是完善了,所以可以直接添加完整的大字符集字体,达到如电脑一样无囗囗「即方框」的效果。

    1、獲取Android手機的Root權限或Root Android手機

    本人用的是KingRoot,但是並不確保其他手機可以完整地root手機。

    2、安裝Root Explorer或者其他類似「我的電腦」的、具有「訪問/system目錄權限」的Android App。「App: Application/應用程序 的縮寫」。

    3、打开Root Explorer,将所扩展区字体「HanaMinA、HanaMinB」复制到 /system/fonts 下并修改权限,这里提供两个扩展区字体。

    4、通過RootExplore進入/etc目錄

    5、打開fallback_fonts.xml和fonts.xml,找到以下語句

     1 <family>
     2     <fileset>
     3         <file lang="zh-Hans">NotoSansHans-Regular.otf</file>
     4     </fileset>
     5 </family>
     6 <family>
     7     <fileset>
     8         <file lang="zh-Hant">NotoSansHant-Regular.otf</file>
     9     </fileset>
    10 </family>

    这里记录了系统默认中文字體爲思源黑體(NotoSansHans为簡化漢字,NotoSansHant为傳統漢字),在上面这段语句「NotoSanHans」后添加扩展区字体的配置。格式如下:

    1 <family>
    2     <fileset>
    3         <file>YourFont.ttf</file>
    4     </fileset>
    5 </family>

    注:
    Ⅰ.“YourFont.ttf”请换为添加到fonts文件夹扩展区字体「HanaMinA、HanaMinB」的名称。
    Ⅱ.其中lang属性是否设置是两可的,大可不必添加。
    Ⅲ.Android5.0系统同时支持.otf和.ttf两种字体格式。
    Ⅳ.一个family集下可以同时对应四种粗细的字体,分别为Regular(常规)、Bold(粗体)、Italic(斜体)、ItalicBold(粗斜体),但一般对于扩展区字体一个family集下只用对应一个字体即可。

    一些说明:
    1.在Android5.0中,字体显示的原则是:「在fallback_fonts.xml以及fonts.xml中,越先记录的字体就越先被应用」。也就是说若所记录的字体同时含有同一字符的unicode编码,系统會用最前面记录的字体去顯示對應的漢字。


    參考 1:Android系統顯示及輸入漢字超大字符集(包括E區)

    參考 2:在Android5.0下安装扩展区字体

  • 相关阅读:
    diff
    tar
    ln
    setfacl
    组件建站
    容器组件
    组件需求
    页面结构
    字体
    轮博图加元素动效的动效ransition
  • 原文地址:https://www.cnblogs.com/xuanyuanchen/p/5656516.html
Copyright © 2011-2022 走看看