2016-04-06 15 views
6

Vorrei utilizzare caratteri non standard in un grafico ggplot2 che ho poi incorporato in un documento rmarkdown, che viene elaborato in un PDF. Il mio flusso di lavoro corrente è specificare il carattere nel grafico, quindi lavorare a maglia, quindi eseguire extrafonts :: embed_fonts sul PDF creato. La mia domanda è: posso specificare direttamente nel documento rmarkdown che i caratteri dovrebbero essere incorporati nel PDF in uscita?Incorporamento dei caratteri nei grafici ggplot2 nei documenti rmarkdown

Esempio minimo:

--- 
title: "Untitled" 
output: beamer_presentation 
--- 

```{r} 
library(extrafont) 
library(ggplot2) 
loadfonts() 
qplot(iris$Sepal.Length) + theme_light(base_family = "CM Roman") 
``` 

knitr::knit2pdf("test.rmd") 
embed_fonts("test.pdf") 

risposta

10

Se si imposta il dispositivo grafico a "cairo_pdf" i font saranno incorporati. È possibile farlo per singoli blocchi o per l'intero documento utilizzando knitr::opts_chunk$set

Ho utilizzato un carattere ovviamente molto diverso di seguito in modo che fosse chiaro che i caratteri erano stati impostati.

Il pacchetto si chiama "extrafont" non "extrafonts"

--- 
title: "Untitled" 
output: beamer_presentation 
--- 

```{r, echo=FALSE, message = FALSE} 
knitr::opts_chunk$set(warning=FALSE, message=FALSE, echo = FALSE, dev = "cairo_pdf") 
``` 

```{r} 
library(extrafont) 
library(ggplot2) 
loadfonts() 
``` 


## 

```{r, fig.width = 5} 
qplot(iris$Sepal.Length) + theme_light(base_family = "Vladimir Script") 
``` 
Problemi correlati