3.2 LaTeX/PDF

Se recomienda encarecidamente el uso de un formato de salida HTML en lugar de LaTeX cuando se hace un libro, ya que no tendrá que estar distrayéndose por los detalles de composición tipográfica que pueden molestar mucho si se revisa constantemente la salida PDF de un libro. Deje el trabajo de cuidar la composición tipográfica sólo para el final (idealmente después de que realmente haya terminado el contenido del libro).

El formato de salida de LaTeX/PDF es proporcionado por pdf_book() en bookdown. No hay una diferencia significativa entre pdf_book() y el pdf_document() del formato rmarkdown. El objetivo principal de pdf_book() es aclarar las etiquetas y referencias cruzadas escritas usando la sintaxis descrita en las secciones 2.4, 2.5, y 2.6. Si el único formato de salida que desea para un libro es el LaTeX/PDF, puede utilizar la sintaxis específica de LaTeX, por ejemplo \label{} para etiquetar las figuras/tablas/secciones, y \ref{} para sus referencias cruzadas, puesto que Pandoc admite comandos de LaTeX en Markdown. Sin embargo, la sintaxis LaTeX no es portátil a otros formatos de salida, tales como HTML y libros electrónicos. Es por eso que se ha introducido la sintaxis (\#label) para etiquetas y \@ref(label) para referencias cruzadas.

Hay algunas opciones YAML de alto nivel que se aplicarán a la salida LaTeX. Para un libro, puede cambiar la clase de documento predeterminado a book (el valor predeterminado esarticle), y especificar un estilo de bibliografía requerida por su editor. Un breve ejemplo YAML:

---
documentclass: book
bibliography: [book.bib, packages.bib]
biblio-style: apalike
---

Hay una gran cantidad de opciones de YAML que puede especificar para la salida de LaTeX, como el tamaño del papel, el tamaño de la fuente, el margen de página, el espaciado entre líneas, las familias de fuentes, etc. Consulte http://pandoc.org/MANUAL.html#variables-for-latex para obtener una lista completa de opciones.

El formato pdf_book() es un formato general como html_chapters, que también tiene un argumento base_format:

pdf_book(toc = TRUE, number_sections = TRUE,
  fig_caption = TRUE, ...,
  base_format = rmarkdown::pdf_document,
  toc_unnumbered = TRUE, toc_appendix = FALSE,
  toc_bib = FALSE, quote_footer = NULL,
  highlight_bw = FALSE)

Puede cambiar la función base_format a otras funciones de formato de salida, y bookdown ha proporcionado una sencilla función de contenedor tufte_book2(), que es básicamente pdf_book(base_format = Tufte::tufte_book), para producir un libro PDF utilizando el estilo PDF Tufte (de nuevo, ver el paquete tufte).