如何在R的showtext包中调用Google Fonts的Roboto粗体字重
方案1:通过fontface参数直接调用粗体
font_add_google默认已经为Roboto字体配置了400(常规)和700(粗体)的字重映射,你只需要在需要加粗的draw_text层添加fontface = "bold"参数即可,修改后代码如下:
library(showtext) library(cowplot) # ggdraw、draw_text函数来自cowplot包,需提前加载 font_add_google(name = "roboto", family = "roboto") showtext_auto() ggdraw() + draw_text("Text1", x = 0.82, y = 0.69, color = "black", size = 35, family = "roboto", fontface = "bold")+ draw_text("Text1", x = 0.4, y = 0.69, color = "black", size = 35, family = "roboto")+ draw_text("Text1", x = 0.1, y = 0.69, color = "black", size = 35)
方案2:单独注册Roboto粗体为独立字体族
如果方案1在你的环境中不生效,可以直接将Roboto粗体作为单独的字体族导入,调用时直接指定该字体族即可:
library(showtext) library(cowplot) # 注册Roboto粗体为独立字体族 font_add_google(name = "roboto", family = "roboto-bold", regular.wt = 700) # 注册常规Roboto font_add_google(name = "roboto", family = "roboto") showtext_auto() ggdraw() + draw_text("Text1", x = 0.82, y = 0.69, color = "black", size = 35, family = "roboto-bold")+ draw_text("Text1", x = 0.4, y = 0.69, color = "black", size = 35, family = "roboto")+ draw_text("Text1", x = 0.1, y = 0.69, color = "black", size = 35)
注意事项
- 运行代码前确保设备可以正常连接Google Fonts服务,否则字体会下载失败无法生效
- 如果在RMarkdown/Quarto场景下使用,需要将
showtext_auto()放在对应代码块的最开头
内容的提问来源于stack exchange,提问作者LePyka
相关产品推荐
相关产品推荐

