私の問題はhttps://bookdown.org/yihui/rmarkdown-cookbook/multi-column.html、ここで私は設定を借りてcolumns.tex
、
\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
わかりやすく簡単にするために、純粋な LaTeX ソース コードで問題を次のようにまとめます。
\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}
これはrmarkdownのソースコードとほぼ同等である。
---
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]
ソース コードをコンパイルした後、取得した PDF ファイルには 2 列環境の前に空白が表示されます。これを削除するにはどうすればよいですか?
答え1
簡単です。2 列の資料はボックス内に設定されており、ページをまたいで分割することはできません。
テキストが単純に 1 つの列から別の列に流れる場合は、次のように使用できます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}
2 つのテキストが「平行」である場合は、 を使用できます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}