Table of Contents
Rmd: document PDF
Table of Contents
Pour créer un document PDF à partir de R Markdown, spécifier le format de sortie pdf_document dans les métadonnées YAML:
--- title: "Habits" author: John Doe date: March 22, 2005 output: pdf_document ---
Dans les documents R Markdown qui génèrent une sortie PDF, vous pouvez utiliser LaTeX brut et même définir des macros LaTeX. Voir la documentation de Pandoc sur l' extension raw_tex pour plus de détails.
Note: La sortie PDF (y compris les diapositives Beamer) nécessite une installation de LaTeX
Table des matières
Ajouter une table des matières à l'aide de l'option toc et spécifier la profondeur des en-têtes auxquels elle s'applique à l'aide de l'option toc_depth . Par exemple:
--- title: "Habits" output: pdf_document: toc: true toc_depth: 2 ---
Si la profondeur de la table des matières n'est pas explicitement spécifiée, la valeur par défaut est 3 (ce qui signifie que tous les en-têtes de niveau 1, 2 et 3 seront inclus dans la table des matières).
Pour ajouter une numérotation de section aux en-têtes utiliser l'option number_sections :
--- title: "Habits" output: pdf_document: toc: true number_sections: true ---
En LaTeX, number_sections: true signifie \section{} et number_sections: false signifie \section*{} pour les sections de LaTeX (cela s'applique également aux autres niveaux de “sections” tels que \chapter{} et \subsection{} ).
Options de figure
Plusieurs options affectent la sortie des figures dans les documents PDF:
- fig_width et fig_height peuvent être utilisés pour contrôler la largeur et la hauteur de la figure par défaut (6×4.5 est utilisé par défaut).
- fig_crop contrôle si l'utilitaire pdfcrop est disponible, et automatiquement l'applique aux figures PDF (ceci est true par défaut). Si périphérique graphique est en postscript l'option -postscript est activée, il est recommandé de désactiver cette fonctionnalité.
- fig_caption contrôle si les figures sont rendues avec des légendes (c'est false par défaut).
- dev contrôle le périphérique graphique utilisé pour le rendu des figures ( pdf défaut).
Par exemple:
--- title: "Habits" output: pdf_document: fig_width: 7 fig_height: 6 fig_caption: true ---
Impression de trame de données
On peut améliorer l'affichage par défaut des trames de données en utilisant l'option df_print. Les valeurs possibles de l'option df_print pour le format pdf_document sont :
Option | Description |
---|---|
default | Appelle la méthode générique print.data.frame |
kable | Utilise la fonction knitr::kable() |
tibble | Utilise la fonction tibble::print.tbl_df() |
Par exemple:
--- title: "Habits" output: pdf_document: df_print: kable ---
Mise en évidence de la syntaxe
L'option highlight spécifie le style de surbrillance de la syntaxe. Son utilisation dans pdf_document est la même que html_document. Par exemple:
--- title: "Habits" output: pdf_document: highlight: tango ---
Options LaTeX
De nombreux aspects du modèle LaTeX utilisé pour créer des documents PDF peuvent être personnalisés à l'aide de métadonnées YAML de niveau supérieur (ces options n'apparaissent pas sous la section de output , mais apparaissent plutôt au niveau supérieur avec le title , l' author , etc…). Par exemple:
title: "Crop Analysis Q3 2013" output: pdf_document fontsize: 11pt geometry: margin=1in ---
Variables de métadonnées YAML de niveau supérieur disponibles pour la sortie LaTeX.
Variable | La description |
---|---|
lang | Code de langue du document |
taille de police | Taille de la police (par exemple, 10 10pt , 11pt ou 10pt 11pt ) |
documentclass | Classe de document LaTeX (par exemple, article ) |
optionclass | Options pour la oneside de document (par exemple, un oneside ) |
geometrie | Options pour la classe de géométrie (par exemple, margin=1in ) |
mainfont, sansfont, monofont, mathfont | Polices de documents (fonctionne uniquement avec xelatex et lualatex ) |
linkcolor, urlcolor, citecolor | Couleur pour les liens internes, externes et de citation |
Paquets LaTeX pour les citations
Par défaut, les citations sont traitées par pandoc-citeproc, qui fonctionne pour tous les formats de sortie. Pour la sortie PDF, il est parfois préférable d’utiliser des packages LaTeX pour traiter les citations, telles que natbib ou biblatex . Pour utiliser l’un de ces paquets, définir simplement l’option citation_package sur natbib ou biblatex , par exemple:
--- output: pdf_document: citation_package: natbib ---
Personnalisation avancée
Moteur LaTeX
Par défaut, les documents PDF sont rendus à l'aide de pdflatex . Vous pouvez spécifier un autre moteur à l'aide de l'option latex_engine . Les moteurs disponibles sont pdflatex, xelatex et lualatex. Par exemple:
--- title: "Habits" output: pdf_document: latex_engine: xelatex ---
Les principales raisons pour lesquelles on peut utiliser xelatex ou lualatex sont les suivantes:
- Ils prennent mieux en charge Unicode;
- Il est plus facile d'utiliser les polices système.
Garder un TeX intermédiaire
Les documents R Markdown sont convertis au format PDF en les convertissant d'abord en un fichier TeX, puis en appelant le moteur LaTeX pour les convertir en PDF. Par défaut, ce fichier TeX est supprimé. Toutefois, pour le conserver (par exemple, pour la soumission d'un article), spécifier l'option keep_tex. Par exemple:
--- title: "Habits" output: pdf_document: keep_tex: true ---
Inclusion
On peut personnaliser davantage la sortie PDF en incluant des directives LaTeX et / ou du contenu supplémentaires ou en remplaçant entièrement le modèle Pandoc principal. Pour inclure le contenu dans l'en-tête du document ou avant / après le corps du document, utiliser l'option includes comme suit:
--- title: "Habits" output: pdf_document: includes: in_header: preamble.tex before_body: doc-prefix.tex after_body: doc-suffix.tex ---
Modèles personnalisés
On peut également remplacer le modèle Pandoc sous-jacent à l’aide de l’option template :
--- title: "Habits" output: pdf_document: template: quarterly-report.tex ---
Autres caractéristiques
Comme pour les documents HTML, on peut activer ou désactiver certaines extensions Markdown pour générer des documents PDF.