V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
eaglu
V2EX  ›  Android

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

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

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

    22 条回复    2021-05-07 08:07:34 +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
    现成的字体,google 想要做轻而易举还用得着 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 (需要登录)
    ooxxcc
        15
    ooxxcc  
       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 已经有可变字体版本了
    ooxxcc
        17
    ooxxcc  
       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 我不知道这个?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1250 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 17:56 · PVG 01:56 · LAX 10:56 · JFK 13:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.