在R包中使用静态(预建)PDF小插图

Jer*_*oen 22 r cran

从R 3.0开始,在CRAN包中包含静态PDF文件作为"晕影"的正确方法是什么?

本文档中描述的使用空存根的技巧Rnw似乎在R 3.0中不起作用.该文档表明现在有一种更好的方法,\VignetteEngine{}但是对于静态PDF文件这是如何工作还不是很清楚.

Hen*_*ikB 13

使用R.rsp(> = 1.19.0),您可以通过添加一个小的'vignettes/main.pdf.asis'文本文件来包含静态PDF'vignettes/main.pdf',该文件包含:

%\VignetteIndexEntry{My amazing package}
%\VignetteEngine{R.rsp::asis}
Run Code Online (Sandbox Code Playgroud)

并确保有:

Suggests: R.rsp
VignetteBuilder: R.rsp
Run Code Online (Sandbox Code Playgroud)

在您的包的描述文件中.这也适用于静态HTML插图.这也是在一个R.rsp小插曲中解释的.

  • 请注意:在 R.rsp 的下一个版本(\*)中,还将有一个 `\VignetteEngine{R.rsp::tex}` 晕影引擎,它采用 _static LaTeX 文件_ 并将其编译为 PDF 晕影,这应该提供一个更具可重复性的包。(\*) 此评论将在发布时更新。 (2认同)

Dir*_*tel 5

这适用于本博客文章中描述的普通 LaTeX 技巧。

我最近改用当前的 R 版本(现在的 3.6.0)执行此操作,请参阅此包装器 .Rnw 文件,其中仅包含:

\documentclass{article}
\usepackage{pdfpages}
%\VignetteIndexEntry{Using Annoy in C++}
%\VignetteKeywords{Rcpp, Annoy, R, Cpp, Approximate Nearest Neighbours}
%\VignettePackage{RcppAnnoy}

\begin{document}
\includepdf[pages=-, fitpaper=true]{UsingAnnoyInCpp.pdf}
\end{document}
Run Code Online (Sandbox Code Playgroud)

优点是,这使用 Sweave 进行完全传统的小插图构建,并且不会强加任何额外的依赖项。