图片通过RMarkdown中的短代码使用blogdown未显示

时间:2017-09-08 08:20:44

标签: r r-markdown hugo blogdown

我想使用blogdown在RMarkdown文件中通过短代码显示图像。我使用代码:

```{r echo=FALSE}
blogdown::shortcode("figure", src = "/img/to/path/my-picture.png", alt = "Some alt text")
```

我没有收到任何错误消息,只是网站上的空白区域。图片不显示。短代码通常有效,我用推特卡试了一下。

路径正确,因为knitr显示相同的图片。 (该路径也可以作为普通.md文档中的短代码。)如果我不在我的.Rmd文件中使用alt参数,那么短代码命令的代码将显示在网站上 - 不仅适用于此命令,但适用于所有其他(以前工作的)短代码。例如,我得到了以下网页摘录:

{{% figure src=/img/to/path/my-picture.png %}}
But shortcode works, here is a tweet card: {{% tweet 852205086956818432 %}}

与图有关的另一个问题:如果我使用的是标准命令:

![some alt text](/img/to/path/my-picture.png)

网页显示替代文字"一些替代文字"在图片下面。

我正在使用hugo-academic主题,这是我的会话信息:

R version 3.4.1 (2017-06-30)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.6

Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.12    bookdown_0.5    digest_0.6.12   rprojroot_1.2   mime_0.5        backports_1.1.0
 [7] magrittr_1.5    evaluate_0.10.1 blogdown_0.1    stringi_1.1.5   rmarkdown_1.6   tools_3.4.1    
[13] servr_0.7       stringr_1.2.0   httpuv_1.3.5    yaml_2.1.14     compiler_3.4.1  htmltools_0.3.6
[19] knitr_1.17 

1 个答案:

答案 0 :(得分:4)

我能够用不同的主题(Beautiful Hugo)重新创建这个问题。看起来blogdown函数正在从src中删除引号。我能够通过用单引号括起引号来修复它。

blogdown::shortcode("figure", src = '"/img/to/path/my-picture.png"', alt = "Some alt text")