r-markdown生成的PDF文件中是否可能有带有超链接的有线单元?

时间:2020-01-03 02:10:44

标签: r hyperlink r-markdown kableextra

是否可以为PDF输出带有超链接的有线单元格?例如这对我不起作用:

library(dplyr)
library(knitr)
library(kableExtra)

tbl <- tibble(test=c("A","B","C"),link=c("http://someurl1", "http://someurl2", "http://someurl3"))

tbl <- mutate(test = cell_spec(test, "html", link = link))

kable(tbl, "latex", escape = F, booktabs = T) %>% 
  kable_styling(bootstrap_options = c("hover", "condensed"), full_width = T)
使用escape = F进行

UPDATE 是导致我之前遇到的所有实际错误的元凶……有关如何解决此问题的任何建议?

[24]
LaTeX Font Info:    External font `lmex10' loaded for size
(Font)              <10> on input line 1566.
LaTeX Font Info:    External font `lmex10' loaded for size
(Font)              <7> on input line 1566.
! Extra alignment tab has been changed to \cr.
<recently read> \endtemplate 

l.1586 \end{tabu}

!  ==> Fatal error occurred, no output PDF file produced!

1 个答案:

答案 0 :(得分:1)

以下是使用LaTeX的\\href{}{}惯用语的解决方案:

tbl <- tibble(test=c("A","B","C"), 
              link=c("someurl1", "someurl2", "someurl3"))

tbl %>% 
  mutate(test = paste0("\\href{http://", link, "}{", test, "}")) %>%
  kable("latex", escape = F, booktabs = T) %>%
  kable_styling(bootstrap_options = c("hover", "condensed")) 

使用kable设置可能有一种不错的方法,但这会起作用。