Add a static pdf vignette to an R package

January 11, 2019

(This article was first published on R – Mark van der Loo, and kindly contributed to R-bloggers)

Most vignettes are built when a package is built, but there are occasions where you just want to include a pdf. For example when you want to include a paper. Of course there is a package supporting this, but in this post I will show you how to do it yourself with ease.

The idea is very simple: vignettes can be in LaTeX, and it is possible to include pdf documents in LaTeX using the pdfpages package. So here’s the step-by-step recipe:

  1. If you do not already have it, create the vignettes folder in your package directory.
  2. Put your static pdf there. Let’s call it mypaper.pdf for now.
  3. Create a .Rnw file with the following content.

\includepdf[pages=-, fitpaper=true]{mypaper.pdf}

That’s it.

Some notes.

  1. This repo contains an example.
  2. The option fitpaper=true is necessary because the Sweave package that is included when the vignette is built somehow causes the pages to rescale if it is not included.
  3. If you post your package to CRAN, myfile.pdf will be deleted from the directory so it is not part of a binary download.
  4. You can include errata or other notes, for example as follows:

\includepdf[pages=-, fitpaper=true]{mypaper.pdf}


A few things were borked in the original publication, here
is a list of sto0pid things I did:

\item{fubar 1}
\item{fubar 2}


To leave a comment for the author, please follow the link and comment on their blog: R – Mark van der Loo. offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

If you got this far, why not subscribe for updates from the site? Choose your flavor: e-mail, twitter, RSS, or facebook...

Comments are closed.

Search R-bloggers


Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)