eliminar espacios en blanco antes del entorno de varias columnas en pdf producido por rmarkdown

eliminar espacios en blanco antes del entorno de varias columnas en pdf producido por rmarkdown

Mi problema surge dehttps://bookdown.org/yihui/rmarkdown-cookbook/multi-column.html, donde tomo prestada la configuración columns.texque dice

\newenvironment{cols}[1][]{}{}

\newenvironment{col}[1]{\begin{minipage}{#1}\ignorespaces}{%
\end{minipage}
\ifhmode\unskip\fi
\aftergroup\useignorespacesandallpars}

\def\useignorespacesandallpars#1\ignorespaces\fi{%
#1\fi\ignorespacesandallpars}

\makeatletter
\def\ignorespacesandallpars{%
  \@ifnextchar\par
    {\expandafter\ignorespacesandallpars\@gobble}%
    {}%
}
\makeatother

Para hacerlo claro y simple, resumo mi problema en código fuente de látex puro de la siguiente manera:

\documentclass[12pt,a4paper]{article}

\usepackage{lipsum}
\input{columns.tex}

\begin{document}

\section{Two columns}

\lipsum[1]

\begin{col}{0.49\textwidth}
\scriptsize
\lipsum[2-5]
\end{col}

\begin{col}{0.02\textwidth}
~
\end{col}

\begin{col}{0.49\textwidth}
\scriptsize
\lipsum[6-9]
\end{col}
~

\lipsum[10]

\end{document} 

que es algo equivalente al código fuente de rmarkdown como

---
output:
  pdf_document: 
    keep_tex: true
    includes:
      in_header: columns.tex
  html_document: 
    css: columns.css
  beamer_presentation: 
    keep_tex: true
    includes:
      in_header: columns.tex
documentclass: article
classoption: 12pt,a4paper
header-includes:
  - \usepackage{lipsum}
---

# Two columns

\lipsum[1]

:::::: {.cols data-latex=""}

::: {.col data-latex="{0.49\textwidth}"}

\scriptsize
\lipsum[2-5]

:::

::: {.col data-latex="{0.02\textwidth}"}
\ 
<!-- an empty Div (with a white space), serving as
a column separator -->
:::

::: {.col data-latex="{0.49\textwidth}"}

\scriptsize
\lipsum[6-9]

:::
::::::

\lipsum[10]

Después de compilar el código fuente, el archivo pdf que obtengo muestra un espacio en blanco antes del entorno de dos columnas. ¿Cómo eliminarlo?

ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

Respuesta1

Es simple: el material de dos columnas está colocado en cajas, por lo que no se puede dividir en páginas.

Si el texto simplemente fluye de una columna a la otra, puedes usar multicol:

\documentclass[12pt,a4paper]{article}

\usepackage{lipsum}
\usepackage{multicol}

\begin{document}

\section{Two columns}

\lipsum[1]

\begin{multicols}{2}
\scriptsize
\lipsum[2-5]
\lipsum[6-9]
\end{multicols}

\lipsum[10]

\end{document}

ingrese la descripción de la imagen aquí

Si los dos textos son “paralelos”, puedes utilizar paracol.

\documentclass[12pt,a4paper]{article}

\usepackage{lipsum}
\usepackage{paracol}

\begin{document}

\section{Two columns}

\lipsum[1]

\vspace{\topsep}

\begin{paracol}{2}
\scriptsize
\lipsum[2-5]
\switchcolumn
\lipsum[6-9]
\end{paracol}

\vspace{\topsep}

\lipsum[10]

\end{document}

ingrese la descripción de la imagen aquí

información relacionada