如何在使用 pictureGrob 创建的 PDF 中添加可点击的图片?

How to have a clickable picture in a PDF created using pictureGrob?

我创建了一个简单的绘图,并有一个图片实际上是一个 SVG 图标,如下所示:

library(ggplot2); library(grid); library(gridExtra)

facebookGrob <- gTree(children=gList(pictureGrob(readPicture("inst/svg/facebook2.svg"))))

p1 <- ggplot() + 
  ggplot2::annotation_custom(facebookGrob, xmin=1.8, xmax=3.2, ymin=-0.6, ymax=1)

final <- arrangeGrob(p1,...,)
ggsave(filename='output.pdf',plot=final,...)

有没有办法在最终 PDF 中的这个 SVG 图标之上生成可点击的 link?

tikzDevice 包允许您将 hyperref 链接作为节点插入,

library(tikzDevice)
tikz("annotation.tex",width=4,height=4, standAlone = TRUE,
     packages = c(getOption('tikzLatexPackages'),
                  "\usepackage{hyperref}",
                  "\usetikzlibrary{positioning}")
)

tg <- tikzNodeGrob(x = 0.5, y = 0.5, name = 'google',
             content='\href{http://www.google.com}{\includegraphics[width=1in]{google.png}}',
             units = "native")

qplot(1:10, 1:10) +
  annotation_custom(grob = tg, xmin=3,xmax=3,ymin=5,ymax=5)

dev.off()