Google 字体

:discourse2: 摘要 Google Fonts 是一个简单的主题组件,允许您无需编写任何 CSS 即可从 Google Fonts 添加字体。
:eyeglasses: 预览 在 Discourse 主题创建器中预览
:hammer_and_wrench: 仓库链接 https://github.com/discourse/discourse-google-font-component
:open_book: Discourse 主题新手? Discourse 主题使用入门指南

安装此主题组件

功能

此组件允许您设置站点主字体,并可选择为标题和等宽文本(代码块)设置单独的字体。您还可以为每种情况选择字体粗细,并增加字体大小。

在幕后,这会设置少量的 CSS 以及 Google 的字体 <link>。请注意,这依赖于 Google 从 https://fonts.googleapis.com/ 提供字体文件。

设置

名称 描述
fonts 添加您想从 fonts.google.com 使用的字体名称。请注意,字体名称区分大小写!
body font Discourse 全文使用的主字体,必须包含在上述“fonts”设置中
body font weight 字体粗细,范围为 100-900。400 为正常,700 为粗体
headline font 标题可选字体,必须包含在上述“fonts”设置中
headline font weight 字体粗细,范围为 100-900。400 为正常,700 为粗体
monospaced font 代码块可选字体,必须包含在上述“fonts”设置中。
monospaced font weight 字体粗细,范围为 100-900。400 为正常,700 为粗体
normal font size 所有用户的默认字体大小,调整此项将按比例调整所有字体大小
smaller font size 可在每个用户的界面偏好设置中选择
larger font size 可在每个用户的界面偏好设置中选择
largest font size 可在每个用户的界面偏好设置中选择

:discourse2: 由我们托管? 主题组件可在我们的标准版、商业版和企业版计划中使用。

51 个赞

这太棒了!能否通过高级安装中更改名称的方式,多次安装以链接到不同的主题?

我不明白为什么不行。例如,我们在 Meta 上就安装了两次相同的主题,分别用于浅色和深色版本。

3 个赞

谢谢。我忘了可以重命名它以便识别或将其与其他主题关联。

1 个赞

谢谢。我很喜欢。:grin:

3 个赞

谢谢♥ 我真的很喜欢它。

我刚刚发现此组件不适用于 /pub/(已发布)页面。这些页面上的字体未加载,导致显示默认的新罗马字体。

1 个赞

我也看到了默认字体,但在 https://yoursite.org/u/activate-account/... 激活账户页面上

我试过了,这确实是个问题。

已发布的页面尝试通过主题组件加载谷歌字体:

image

字体文件未在已发布的页面上加载,它不会回退到字体系列变量 Arial, sans-serif,而是使用 Times New Roman。

只要已发布的页面能够访问所需的修改,这里可能还有改进的空间。

1 个赞

老实说,自从有了这个发现以来,我一直在自定义 CSS 中定义我的字体。效果很好。

2 个赞

太棒了,感谢您和您的团队开发了如此便捷的功能^^。我会向我认识的、使用 discourse 构建用户社区的人推荐它。

快速 Bug 报告:我刚注意到当我设置字体粗细时,粗体文本没有显示为粗体。

我在字体 Work SansZilla Slab 上测试了这一点。我将字体粗细从默认值(400)更改为 300。当我这样做时,粗体文本没有显示为粗体。重置该设置后,粗体文本会重新出现。

我将其设置为 400,然后结束了,但想告知您。

感谢您在这方面所做的工作!

能否更深入地探讨一下?“Headline”字体在 Topics 中的 Headers 默认显示为 900 字重。如果能为每个 Markdown 对象设置默认值就太好了。

1 个赞

这似乎存在一个 bug,至少在我的论坛上是这样,如果我添加字体“Inter”和此组件,就会发生以下情况:

  • 开始编辑或撰写消息
  • 在撰写器打开的情况下切换到其他应用
  • 返回后,缩放会完全错误,就像放得太大了
  • 现在聊天和滚动也会出现 bug

不确定是否会与其他字体发生这种情况,但如果我将此组件添加到任何主题中,它会 100% 发生。

这是一个已知的 bug 吗?有修复方法吗?

谢谢。

2 个赞

如果您想要更改 基础字体标题字体,我们已经内置了 Inter 字体,在管理员  网站设置中,无需其他组件。

2 个赞

哪个版本的 Discourse?我使用的是 3.3 稳定版,但没有看到 Inter。我在这里遇到了一些用户关于此组件的相同问题。

我使用的是 3.3 版本,想使用 Inter。虽然字体已加载,但粗体文本并非粗体。

您需要更新到 3.4 版本才能使用内置的 Inter 选项。

2 个赞

我刚刚合并了此组件的重构,以更好地适应 Google 字体更新——这应该可以解决人们在使用不同字重时遇到的问题。

请注意,设置格式已略有更改,因此字重不能再包含在字体名称设置中,例如 Roboto:300,300i,500,而应更新为简单的 Roboto……但它应该会在更新时自动迁移。

2 个赞