目前我手持三星 23U ,我习惯 Edge 浏览器、狐猴浏览器,然后我发现一个现象:三星手机系统的字体我替换成了霞鹜文楷,常用的 app 例如:小红书、抖音、哔哩哔哩、知乎等,其内容字体正确的按霞鹜文楷渲染了,但是 Edge 浏览器、狐猴浏览器的网页内容并没有按该字体渲染。但是我手上的一个一加平板同样替换了字体,这 2 个浏览器都正常的按照霞鹜文楷来渲染网页了。
我简单找了下原因,应该是三星的字体替换,并没有把/system/fonts 中的系统字体做替换,而是做了个映射导致的,国产定制的 Android 系统大多是替换了 /system/fonts 中字体,在浏览器取系统字体的时候三星手机取到的是/system/fonts 下的字体,而非系统映射后的字体。
于是我想找一个开源浏览器 iceraven,看自己能改获取字体的方法自己打包一个版本来使用的,但是我遇到 2 个问题: 1 、如何正确的获取到三星系统替换后的字体。 2 、iceraven 中我该怎么改逻辑(对 Android 开发了解甚少)。
对了我还了解到,小红书里有个功能是使用系统字体,开启后就能用自定义字体渲染内容了,但是我不知道具体的原理。 请了解的大佬赐教一下~
1
a87965028 1 天前 via Android
三星自带的浏览器,在实验室选项里有个“网页使用系统字体”的选项,也许能替换网页字体。
|
4
RikkaW 1 天前 1
浏览器一般都是自己解析 /system 里的 fonts.xml (包含 font-family 到字体文件的映射关系还有其他各种字体相关的),然后直接去读取并使用字体文件。而一般的应用如果未作处理那就是使用系统传过来的,改字体功能一般都是在这里下手。
要修改浏览器,在里面搜 fonts.xml 吧,应该还是挺复杂的(但是也许可以直接指定为一个自己的 fonts.xml 然后就随便改((( |
5
Paradox4068 1 天前
|
6
Granado OP |
7
asipirin1120 11 小时 57 分钟前
小米也有这个毛病。我甚至是利用 KernelSU 的模块做了全局替换之后,在以 WebView 显示的地方(如:知乎正文,Chrome 浏览器网页)都还是小米自带的 MiSans 以及思源黑体,极其割裂。根本不知道他们是分别从那调用到的。
|