我希望能够做类似的事情:
\hspace{2cm} \hrule
并让 LaTeX 给我一条从左边距 2cm 处到右边距的线。我四处查看了一下,作为 LaTeX 新手,这似乎不是一件容易的事情。
答案1
您需要\hrulefill
为此目的使用。请参阅以下文件中包含的三个示例。
\documentclass{article}
\begin{document}
Fill the whole horizontal width
\hrulefill
\bigskip
Fill the whole horizontal width after a cetain space
\hspace{2cm}\hrulefill
\bigskip
Fill between two texts
Make a horizontal \hrulefill line from the current indented
\end{document}
以下是输出。
为了进一步了解\hrulefill
,请看这里。
答案2
为此定义一个命令;\MyRule
有一个可选参数,允许您指定与左边距的距离(默认= 0pt
,意味着使用 just\MyRule
将为您提供跨越整个文本宽度的规则):
\documentclass{article}
\usepackage{showframe}%just for the example
\newcommand\MyRule[1][0pt]{\par\noindent\hspace*{#1}\hrulefill\par}
\begin{document}
text
\MyRule[0cm]
\MyRule[2cm]
\MyRule[4in]
\MyRule[0.5\textwidth]
\end{document}
该showframe
包装仅用于提供显示边缘的视觉指导。
答案3
\hrule
如果您想模拟(这是一个原始命令,要小心使用)的行为,您可以从另一个原始命令中受益\moveright
:
\documentclass{article}
\usepackage{lipsum}
\newcommand{\movedrule}[1]{%
\par
\nointerlineskip
\moveright#1\vbox{
\hrule width\dimexpr\linewidth-#1\relax
}
\nointerlineskip
}
\begin{document}
\lipsum[2]
\hrule
\lipsum[2]
\movedrule{2cm}
\lipsum[2]
\end{document}