如何在文本下方插入边框?

如何在文本下方插入边框?

我想模拟一些文字处理程序(例如 Microsoft Word、LibreOffice Writer)的功能,在这些程序中我可以(在某种程度上)任意地在任何文本/段落下方插入底部边框。如何在 LaTeX 中实现此操作?

编辑:澄清一下,我想要的是一条横跨页面、位于文本下方的水平线。像这样:

下边框

答案1

可能有很多方法可以做到这一点。您是否尝试过发出命令

\hrule

在一条线上?

答案2

与@egreg的回答略有修改将水平线向左移动,以下最小工作示例 (MWE) 提供了,它在段落之间\myrule[<thickness>][<gap>][<color>]设置了粗细规则(默认值为 )。此外,第二个可选参数允许您增加行与前一个/后一个段落之间的间隙(默认值为)。最后,最后一个可选参数允许您将线条的颜色更改为(默认值为)。颜色通过从<thickness>1pt3pt<color>black\colorxcolor包裹

\documentclass{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{xcolor}% http://ctan.org/pkg/xcolor
\usepackage{xparse}% http://ctan.org/pkg/xparse
\NewDocumentCommand{\myrule}{O{1pt} O{3pt} O{black}}{%
  \par\nobreak % don't break a page here
  \kern\the\prevdepth % don't take into account the depth of the preceding line
  \kern#2 % space before the rule
  {\color{#3}\hrule height #1 width\hsize} % the rule
  \kern#2 % space after the rule
  \nointerlineskip % no additional space after the rule
}
\begin{document}
\lipsum[1]

\myrule

\lipsum[2]

\myrule[10pt][5pt]

\lipsum[3]

\myrule[5pt][5pt][orange]

\lipsum[4]

\end{document}

在此处输入图片描述

答案3

这是使用 的另一种方法environment。这种方法的优点是您可以在序言中全局装饰环境的内容。您可以将这个想法与 Werner 的想法结合起来,使边框更加丰富多彩。

我已经使用该needspace包来确保不会\hrule与段落的最后一行分离。

\documentclass{article}

\usepackage{lipsum}     % needed for sample text
\usepackage{needspace}  % provides the \needspace command
\newenvironment{bottomborder}%
{}  % code to be processed before the environment begins
{\needspace{\baselineskip}\hrule} % code to be processed after the environment ends
\begin{document}

\begin{bottomborder}
\lipsum[1-3] 
\end{bottomborder}

\end{document}

相关内容