F9y4ng / GreasyFork-Scripts

The open source code of this project is used for userscripts (油猴脚本) for desktop browsers, including Font Rendering (Customized) (字体渲染(自用脚本)- Font Rendering.user.js), and Search Engine Assistant (优雅的搜索引擎助手 - Google & Baidu Switcher.user.js), etc.
https://f9y4ng.github.io/GreasyFork-Scripts/
GNU General Public License v3.0
1.02k stars 48 forks source link

[发现错误] 部分字体,数字0异常显示,会比其它数字更占空间 #48

Closed 7peanuts closed 2 years ago

7peanuts commented 2 years ago

部分字体的数字0可能比较宽,渲染后占空间导致后续数字显示不全,我发现的有微软雅黑,汉仪旗黑,苹方。 思源黑体、方正简体508R等字体的0较瘦长,所以不会出现该问题。 其实这也不算很大的问题,很少有论坛会在用户头像下显示注册日期。 如下图: 优效截图20211225190238

错误再现 (重现行为的步骤)

  1. 帖子地址:https://www.52pojie.cn/thread-1567086-1-1.html
  2. 此帖楼主的注册日期是2020-10-14,渲染后导致后面的数字看不见了,而楼层中注册日期中不带0的则显示正常。 优效截图20211225184213

客户端信息: (请填写以下信息)

请预先排除与你本地其他扩展或脚本的冲突,尽量在仅运行本脚本的情况下测试

F9y4ng commented 2 years ago

你可以尝试分别定义中文与英文字体来解决此类问题。

分别设置中英文字体的方法:#94256

英文字体的选择的案例可以参照 #40 的方法。

7peanuts commented 2 years ago

你可以尝试分别定义中文与英文字体来解决此类问题。

分别设置中英文字体的方法:#94256

英文字体的选择的案例可以参照 #40 的方法。

感谢大佬,请问有适合阅读的英文字体推荐吗?😄 在字客网上找到了一些,但我发现有些同家族英文字体不同粗细的家族名称相同,这样添加进去,脚本还能识别粗中细吗?

F9y4ng commented 2 years ago

感谢大佬,请问有适合阅读的英文字体推荐吗?😄 在字客网上找到了一些,但我发现有些同家族英文字体不同粗细的家族名称相同,这样添加进去,脚本还能识别粗中细吗?

绝大部分网站默认的英文字体是Arial, Helvetica.

同家族英文字体不同粗细的家族名称相同的英文字体,可以用 字体全名 来调用。

7peanuts commented 2 years ago

大佬新年好,问个问题: Chromium内核浏览器的DirectWrite是否需要开启? 我发现关闭dw后,网页中的彩色字符变成黑白了,比如油猴脚本设置前面那三个彩色字符,🌓、⛔、和💎,脚本选项里的🔔。 但是开启dw脚本渲染效果貌似不如关闭好。

F9y4ng commented 2 years ago

大佬新年好,问个问题: Chromium内核浏览器的DirectWrite是否需要开启? 我发现关闭dw后,网页中的彩色字符变成黑白了,比如油猴脚本设置前面那三个彩色字符,🌓、⛔、和💎,脚本选项里的🔔。 但是开启dw脚本渲染效果貌似不如关闭好。

这是因为新版本的浏览器内核对粗体字体图标进行了重绘,造成彩色图标变为黑框图标,解决办法是去掉粗体设置,脚本样式已做过处理。

DW是否开启对脚本的影响只是参数上的差异,当然不排除极个别的特殊情况。根据自己的需求取舍就好。