Versiones recientes de rmarkdown y pandoc
En versiones más recientes de rmarkdown , la configuración de los márgenes se puede realizar en el encabezado YAML a través del elemento de nivel superior geometry
. Lo que especifique en la geometry
etiqueta se canalizará a la plantilla de LaTeX que se envía con Pandoc a través del siguiente fragmento de LaTeX
$if(geometry)$
\usepackage[$for(geometry)$$geometry$$sep$,$endfor$]{geometry}
$endif$
Por ejemplo, para especificar márgenes de 2 cm de ancho, uno incluiría
---
title: "Habits"
author: John Doe
date: March 22, 2005
geometry: margin=2cm
output: pdf_document
---
Para que se pasen especificaciones más complejas al paquete de geometría de LaTeX, combine las opciones de cadena como lo haría con LaTeX:
---
title: "Habits"
author: John Doe
date: March 22, 2005
geometry: "left=3cm,right=3cm,top=2cm,bottom=2cm"
output: pdf_document
---
Respuesta original
Esta es una pregunta de LaTeX, ya que Pandoc está procesando en PDF a través de LaTeX: lo que vinculó representa los márgenes predeterminados en un documento de LaTeX.
El paquete de geometría LaTeX, por ejemplo, se puede utilizar para alterar los márgenes de la página. Sin embargo, necesitará una manera de decirle a Pandoc que use esto incluyéndolo en el encabezado LaTeX aplicado al archivo md convertido.
Cómo hacer esto está documentado en la Guía del usuario de Pandoc . Vea en particular el --template=FILE
argumento de la línea de comando y la sección de Plantillas . Esencialmente, busque y modifique la plantilla predeterminada para incluir las instrucciones de LaTeX que desea usar o inicie su propia plantilla desde cero y colóquela en la ubicación adecuada; ver el --data-dir
argumento de la línea de comando.
Otra alternativa si está utilizando una versión reciente de Pandoc es utilizar el argumento variable (establecido con -V KEY[=VAL]
o --variable=KEY[:VAL]
). El geometry
paquete se agregó a la plantilla predeterminada de LaTeX en mayo de 2012 (consulte esta discusión ). Como tal, si desea cambiar los márgenes de la página, puede usar:
pandoc -V geometry:margin=1in -o output.pdf input.md
También puede especificar múltiples valores de variables. Por ejemplo, si desea crear un pdf de 4 por 6 pulgadas con márgenes de media pulgada, puede usar:
pandoc -V geometry:paperwidth=4in -V geometry:paperheight=6in -V geometry:margin=.5in -o output.pdf input.md
variable
comando en lugar de tener que hacer una plantilla desde cero o codificar los márgenes en la plantilla predeterminada. Por ejemplo, para márgenes de 1 pulgada, puede usarpandoc -V geometry:margin=1in -o output.pdf input.md
.-V geometry:margin=1in
opción no estaba teniendo efecto. A través de Google, encontré en algún lugar (perdón el enlace perdido) documentación que dice que esta opción no tiene ningún efecto si se usa la plantilla predeterminada. Solo quiero convertir un archivo de marcado de una página a un PDF para enviarlo a alguien como volante. Mi solución rápida: edite el archivo de plantilla directamente y agregue la línea\usepackage[margin=1.0in]{geometry}
. En mi instalación, el archivo está en:/usr/share/pandoc-1.9.1.1/templates
En versiones más recientes de pandoc, puede establecer una serie de parámetros en el encabezado YAML . Puede configurar la geometría aquí, por ejemplo:
Cuando pandoc lo convierte a un pdf, debe tener márgenes correctos.
fuente
Kile
oSublime Text 2/3
y cambiar los argumentos de la línea de comandos sería un dolor.