我正在尝试在我的文档中添加一条水平线。
\documentclass{report}
\begin{document}
\begin{center}
\Huge CV
\end{center}
\line(1,0){250}
\end{document}
由于某种原因,\line(1,0){250}
会在文档上生成一条不等长的线。我的意思是,右边的线看起来比左边的长很多。我试图让它长而均匀。如果可能的话,我还想让它变粗。
答案1
您可以使用命令
\hrule
得到一条横跨文本块宽度的线。以下是对您的 MWE 的非常轻微的修改
\documentclass{report}
\usepackage{lipsum} % for filler text
\begin{document}
\begin{center}
\Huge CV
\end{center}
\hrule
\bigskip
\lipsum[2] % generate a short paragraph of filler text
\end{document}
生成:
有趣的是,似乎没有必要将\hrule
(或等效的)命令放置在center
环境内。
答案2
如果要精确控制文本 CV 到规则的垂直距离,则需要以下内容
\begin{center}
\Huge CV
\vspace{12pt}
\nointerlineskip
\rule{250pt}{0.4pt}
\end{center}
我们使用\nointerlineskip
告诉 TeX 不要添加任何自动空格(如果没有它,空格也会存在,因为\rule
以及\line
开始一个段落)。因此间距正好是 12pt。规则的宽度由 的第一个参数决定\rule
,其厚度由 的第二个参数决定。
垂直间距是通过 获得的\vspace
。
如果你想要一个跨越整个线宽的规则,那么说
\rule{\textwidth}{0.4pt}
如果你想要一个比文本宽度更宽的规则,但仍然正确居中,那么
\makebox[\textwidth]{\rule{200cm}{0.4pt}}
就可以了(当然,长度是夸张的)。
答案3
您还需要将该线放置在center
环境内部,以确保两个项目都正确放置:
\documentclass{report}
\begin{document}
\linethickness{5mm}
\begin{center}
\Huge CV
\line(1,0){250}
\end{center}
\end{document}
\line
本身不接受任何修改粗细的参数。但你还不算运气不佳,因为它\linethickness{<param>}
设置了所有后续线条的粗细。
编辑:上面的解决方案效果很好,因为您想要一条不超过文本宽度的线。要让一条线优雅地跨越整个文本宽度,您需要采取一些不同的做法:
\documentclass{report}
\begin{document}
\begin{center}
\Huge CV
\rule{\linewidth}{2mm}
\end{center}
\end{document}