BlackGlory / appoint-font

🌳 The easiest font setting extension.
https://chrome.google.com/webstore/detail/lmjdabbpgabigbonekfpjhfgjekpnkge
MIT License
63 stars 5 forks source link

CSDN站点下,B加粗会不显示 #25

Closed losvincent closed 1 month ago

losvincent commented 1 month ago

这是一个非常不错的插件,不过反馈一个小问题,辛苦看下: Csnd的文章,被加粗的文本,启用本插件后依然不显示加粗效果。浏览器无痕模式打开则显示 字体:华康圆体WP7

BlackGlory commented 1 month ago

font-synthesis: none;导致的: image

原因是浏览器用字体的特定字重替换了具有多种字重的字族. 当用来替换的字体缺乏特定字重时, 浏览器会尝试合成这个字重, 而这条CSS规则会取消这一行为(因为浏览器合成的效果不比专门设计的字体好).

可以通过配置字重来解决: image 然而这里也是有问题的, 主要是因为@font-facesrclocal指定本地字体时, 只会选择一个固定的字重. 所以你指定的粗体字体需要能够被列在字体列表里才行.

BlackGlory commented 1 month ago

借此机会, 我又重新调查了一下Local Font Access API, 这东西就跟我第一次发现它时一样好, 能够列出每种字重. 但问题也是同样的, 这是一个随时可能被取消或修改的实验性API, 不应该在扩展程序里使用. image

BlackGlory commented 1 month ago

解决方案1: 使用新版本

刚刚发布了v2024.1.0, 正在等待审核通过.

无需再等待Local Font Access API, 现在可以手动填写子字体名, 像这样: image

效果: image

解决方案2: 重置CSS规则

这种解决方案适用于旧版本.

原理是重置页面上的font-synthesis: none;规则, 只需要用Stylus之类的扩展注入这个:

* {
  font-synthesis: initial !important;
}

不过跟之前提到的一样, 这种字体是浏览器合成出来的, 显示效果差一点.

losvincent commented 3 weeks ago

解决方案1: 使用新版本

刚刚发布了v2024.1.0, 正在等待审核通过.

无需再等待Local Font Access API, 现在可以手动填写子字体名, 像这样: image

效果: image

解决方案2: 重置CSS规则

这种解决方案适用于旧版本.

原理是重置页面上的font-synthesis: none;规则, 只需要用Stylus之类的扩展注入这个:

* {
  font-synthesis: initial !important;
}

不过跟之前提到的一样, 这种字体是浏览器合成出来的, 显示效果差一点.

太强大了,给力,等新版推送了我观察看看

BlackGlory commented 3 weeks ago

Chrome Web Store的审核员用一个非常愚蠢的理由卡了我的审核, 刚刚传了v2024.1.1, 不知道新版本能不能审核过. 几乎每个平台的审核都是由技术水平最差的人负责, 这些人为了证明自己的价值经常会提出一些极为脑残的理由来退回版本. 最坏情况下, 我会下架这个扩展程序, 因为我已经对跟这些货色打交道失去了耐性.

losvincent commented 3 weeks ago

Chrome Web Store的审核员用一个非常愚蠢的理由卡了我的审核, 刚刚传了v2024.1.1, 不知道新版本能不能审核过. 几乎每个平台的审核都是由技术水平最差的人负责, 这些人为了证明自己的价值经常会提出一些极为脑残的理由来退回版本. 最坏情况下, 我会下架这个扩展程序, 因为我已经对跟这些货色打交道失去了耐性.

千万别下架,当初我检索了好多帖子,试了好几个插件,才找到你这个字体设置的,解决了当时遇到的问题,非常好的这个插件!Edge可以试试,现在主要用Edge哈哈哈