有人给 Google 提了一个 feature request 希望解决一直以来 Android CJK 的字重问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
eaglu
V2EX    Android

有人给 Google 提了一个 feature request 希望解决一直以来 Android CJK 的字重问题

  •  1
     
  •   eaglu 2021-05-02 07:52:31 +08:00 14823 次点击
    这是一个创建于 1623 天前的主题,其中的信息可能已经有所发展或是发生改变。

    各位有条件的希望可以 star 一下 https://issuetracker.google.com/issues/186033995

    23 条回复    2024-04-12 18:08:03 +08:00
    loukky
        1
    loukky  
       2021-05-02 08:26:24 +08:00 via Android   1
    cjk 用户没人权呗,我 root 以后通过 magisk 刷入你拖 noto sans cjk,发现部分 app 确实采用了不同的字重
    9yu
        2
    9yu  
       2021-05-02 10:13:15 +08:00 via Android
    持续关注
    john6lq
        3
    john6lq  
       2021-05-02 11:42:27 +08:00 via iPhone
    作为安卓开发,请问如何指定不同字重?
    q197
        4
    q197  
       2021-05-02 12:46:32 +08:00
    @john6lq textview 可以设置的
    q197
        5
    q197  
       2021-05-02 12:49:09 +08:00
    @john6lq 例如 android:fOntFamily="sans-serif-light" 如果用户 magisk 刷过很全的字体包,那么有 sans 和 serif,还有全字重,宋体(作为 serif )都能显示出来。不过很多安卓包括一些国产安卓、aosp 出厂没有多字重,这些设置没用。想要加粗只能 fOntstyle=bold 这样。
    john6lq
        6
    john6lq  
       2021-05-02 13:51:09 +08:00 via iPhone
    @q197 我不是要人来科普基础知识,我是问这个人的诉求会给现有开发带来什么改变,现在不就只有一个 normal 一个 bold ?国外开发能指定具体字重?还是说每个 textview 都指定对应 family ?
    om2mo
        7
    om2mo  
       2021-05-02 14:59:07 +08:00 via iPhone
    现成的字体,googl 想要做轻而易举还用得着 issue
    om2mo
        8
    om2mo  
       2021-05-02 15:00:46 +08:00 via iPhone
    就算有全字重,国产的垃圾应用也不调用,比如最大的垃圾安卓微信
    billlee
        9
    billlee  
       2021-05-02 17:38:51 +08:00
    @john6lq 至少 web 上是可以指定 font-weight 的吧?
    billlee
        10
    billlee  
       2021-05-02 17:40:37 +08:00
    @om2mo 以前微信是有指定的,刷了全字重包以后,明显地朋友圈中的用户名会变粗体,后来不知道为什么被砍了
    KallyDev
        11
    KallyDev  
       2021-05-02 17:41:42 +08:00 via iPhone
    确实遇见过这个问题,已 star 。
    billlee
        12
    billlee  
       2021-05-02 17:47:18 +08:00
    这个 star 还需要权限的吗?我没看到有 star 按钮?
    VinsonGuo
        13
    VinsonGuo  
       2021-05-02 18:40:44 +08:00 via Android
    不得不说 google 和 Android 对中文字体的支持太差了,iOS 的中文字体有 9 个字重,而 Android 只有两个,500 的字重没有加粗导致通知的标题和内容都一样的粗细
    monsterX
        14
    monsterX  
       2021-05-02 18:57:56 +08:00 via Android   1
    @billlee 标题左侧,有一个 star 的 icon (需要登录)
    47jm9ozp
        15
    47jm9ozp  
       2021-05-02 19:04:08 +08:00
    没办法,cjk 字符太多,两个字重就占了几十 m 的,衬线 /非衬线+全字重估计要 300-400m rom 空间。

    可变字体可以解决这个问题,但是现在 cjk 可变字体还少,另外还有授权问题…
    haozi1986
        16
    haozi1986  
       2021-05-04 10:50:19 +08:00
    @ooxxcc

    Android 默认的 noto sans cjk 已经有可变字体版本了
    47jm9ozp
        17
    47jm9ozp  
       2021-05-04 11:27:56 +08:00
    @haozi1986 真的,看来我的消息落后了
    zoharSoul
        18
    zoharSoul  
       2021-05-04 17:07:03 +08:00 via Android
    @john6lq
    每个 textview 都指定对应 family,具体哪个看 ui 设置要哪个
    datou
        19
    datou  
       2021-05-05 23:34:18 +08:00
    @q197 移动设备没有用宋体的吧?

    iOS 和 Android 的默认中文显示字体都是黑体
    q197
        20
    q197  
       2021-05-06 10:29:43 +08:00
    @datou 如果手机字体齐全(例如刷了 magisk 的 cjk 大字体包),电报和维基百科选择 serif 后 instant view 和维基百科正文都是 serif 字体,一般就是思源宋体了
    q197
        21
    q197  
       2021-05-06 10:30:50 +08:00
    @john6lq family 和 style 是两个属性,前者是控制字重+字体,后者是加粗、斜体,不一样。
    john6lq
        22
    john6lq  
       2021-05-07 08:07:34 +08:00 via iPhone
    @q197 我不知道这个?
    Lightdawn
        23
    Lightdawn  
       2024-04-12 18:08:03 +08:00 via Android
    Android 15 支持了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2645 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 13:57 PVG 21:57 LAX 06:57 JFK 09:57
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86