knitr无法加载showtext / sysfonts

时间:2017-05-31 18:16:43

标签: r knitr

我一直在使用knitr和showtext库来生成使用某些Google字体的HTML文件。它工作正常,直到我升级到3.4。当我现在编织文档时,出现以下错误:

  

错误:包' sysfonts'无法加载执行暂停

这可以通过编织再现:

---
title: "test"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(showtext)
```

没有库(showtext)它运行良好。

然后,当我尝试使用相同的模板运行库(sysfonts)时:

---
title: "test"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(sysfonts)
```

我收到此错误:

  

错误:' sysfonts':.onLoad失败,在loadNamespace()中为' sysfonts',详细信息:call:dyn.load(file,DLLpath = DLLpath) ,...)错误:无法加载共享对象'〜/ Library / R / 3.4 / library / sysfonts / libs / sysfonts.so':dlopen(〜/ Library / R / 3.4 / library / sysfonts /libs/sysfonts.so,6):未加载库:/opt/X11/lib/libfreetype.6.dylib参考自:〜/ Library / R / 3.4 / library / sysfonts / libs / sysfonts.so原因:图像没有结果

这似乎是sysfonts库的一个问题。但是,我可以从控制台加载showtext和sysfonts。所以我不知道这是一个系统问题还是编织问题。我正在运行El Capitan 10.6并且最近将R升级到3.4。我尝试降级回3.3,但仍然产生了同样的错误。

1 个答案:

答案 0 :(得分:0)

较晚的回复,但可能对其他人有用(如果在Mac上工作):

1)删除所有相关的R-packages

remove.packages("sysfonts")
remove.packages("showtext")

2)安装XQuartz

3)重新安装并再次加载所有软件包

install.packages("sysfonts")
install.packages("showtext")

tcarnus on GitHub提供的此解决方案为我解决了这个问题。