有逐字框时如何设置段落之间的相同长度?

有逐字框时如何设置段落之间的相同长度?

我想要的是段落和逐字框之间的距离为 1em,逐字框和下一个段落之间的距离为 1em。我正在使用 Rstudio 和 Knitr 和 PDFLatex。这是我尝试过的:

\documentclass[12pt, a4paper, oneside]{book}

\usepackage{lipsum}
\setlength{\parskip}{-1em}

\usepackage{etoolbox}
\makeatletter
\def\verbatim{\small\@verbatim \frenchspacing\@vobeyspaces \@xverbatim}
\preto{\@verbatim}{\topsep=-1em \partopsep=-1em}
\makeatother

\usepackage{lipsum}

\begin{document}

\lipsum[1]

<<>>=
head(mtcars, 3)
@

\lipsum[1]

如果我删除该命令,效果会很好\setlength{\parskip}{1em},但我需要在段落之间留出空格。

平衡逐字和段落的长度

更新

我所要做的是了解 knitr 在哪个环境中工作,然后根据条件设置一些参数来调整垂直空间。我并不完全清楚所有事情,因为在这个解决方案中,我混合了间距和\vspace

虽然还有其他一些更容易实现的解决方案,但没有一个包括我在正常段落之间留有空格的示例\parskip = 0.125in

\documentclass{article}

\usepackage{lipsum}
\parskip = 0.125in
% \setlength{\parskip}{\baselineskip}

\ifdefined\knitrout
  \renewenvironment{knitrout}{

    \setlength{\parskip}{0ex} 
    \topsep=0ex             
    \partopsep=-0.5ex         
    \vspace{0.8ex}   
                     
    
  }{
     \vspace{-0.6ex} 
                     
  }
\else
\fi

\begin{document}

\lipsum[1]

<<>>=
head(mtcars)
@

\lipsum[2-3]


\end{document}

相关内容