-
Notifications
You must be signed in to change notification settings - Fork 14.1k
[PR]改进Emoji字体兼容性 #8346
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PR]改进Emoji字体兼容性 #8346
Conversation
如果这个代码没有用,是否可以利用这个设置起来,在启动的时候应用这个用户设置的字体,而不是调用命令获取后再应用。 |
确实,多跑一个进程不太好 |
|
@fujiwarabach Most Linux distributions seem to use only the noto sans emoji. We can either let v2rayN use it, or fallback if it doesn't support it. |
以上代码没有测试过,只是可以使用这样的方式尝试是否可以? |
或者用这样的方式,增加一个 WithFontByLinux() |
@2dust 增加命令检测不是我们的本意,只是希望更能精准的抓到字体,刚刚调查了一下几个主流发行版,几乎都用同一个,考虑很久,认为直接兜底即可。 |
|
Well: Fedora Linux 10
Red Hat Enterprise Linux 10
Rocky Linux 10
AlmaLinux 10
Ubuntu Linux 24.04 | 25.10
Debian Linux 12 | 13
Elementary OS 8Issue: OpenSUSE Leap 16 |
This looks good. |
|
@xujiegb Yeah, that means most people can get their problems solved. |
|
@xujiegb I saw Firefox calling fontconfig to handle this. |
Using libfontconfig would probably be even more troublesome. |
|
@fujiwarabach @alphonca99 The current modification seems fine. Have you found any problems? |

内容
此PR旨在改进部分Linux发行版的字体兼容性
已知缺陷
1、此方案在部分配置换乱、字体劫持的发行版中无效
需要和对应发行版取得支持
或者Linux版打包字体文件,强制指定字体(可能会增加打包占用空间)
2、在采用COLRv1字体的发行版中,无法显示Emoji
Fedora 43 用户需要降级字体包
sudo dnf install */NotoColorEmoji.ttf --releasever=42需要等上游将渲染器完全适配COLRv1字体
或者Linux版打包字体文件,强制指定字体(可能会增加打包占用空间)
3、用户在安装个人字体后会导致字体默认选择行为出错
用户可以指定显示的字体
4、更改字体后,部分区域的字体将不会改变
测试通过系统
Red Hat Enterprise Linux 10










Rocky Linux 10
Rocky Linux 10
AlmaLinux 10
Fedora Linux 43
Elementary OS 8
Debian Linux 12
Debian Linux 13
Ubuntu Linux 25.10
Manjaro Linux