缩进或居中 \hrule

缩进或居中 \hrule

我正在尝试打印两条水平线,使其看起来像一本旧书的分隔线。使用\hrule略有不同的宽度和长度会使线条看起来像手工绘制的。

但尝试使用\moveleft\nointerlineskip建议居中hrule我收到一条错误消息,提示无法在水平模式下执行此操作。问题是hrule带缩进类似,但如果是这样,我不知道如何应用这些信息。我遇到了 \indent 和 \item 等错误。

我想了解如何修复\hrule,但使用规则或其他命令回答也可以。

这是我正在使用的代码,它可以编译,但是每次尝试调整都会导致无法编译。

\documentclass{scrartcl}
    %\usepackage{fontspec}
    %\setmainfont{Gentium Plus}
    %\usepackage{microtype}
\begin{document}
\begin{center}
    \normalfont\large Some Text Above 
    \vspace{9pt}
    \hrule height .8pt width .870\textwidth
    \vspace{14pt}
    \hrule height 1.1pt width .877\textwidth
    \vspace{6pt}
    1 6 4 7.
\end{center}
\end{document}

答案1

\rule和的问题\leavevmode在于每个基线之间的 的累积\baselineskip。在此解决方案中,您可以删除所有 0pt 项,并看到它们精确对齐。

\documentclass{scrartcl}
    %\usepackage{fontspec}
    %\setmainfont{Gentium Plus}% Please don't make me download another font
    %\usepackage{microtype}
\begin{document}
\begin{center}
    \normalfont\large Some Text Above 
    \hrule height 0pt
    \vrule height 9pt width 0pt
    \vbox{\hrule height .8pt width .870\textwidth}
    \hrule height 0pt
    \vrule height 14pt width 0pt
    \vbox{\hrule height 1.1pt width .877\textwidth}
    \hrule height 0pt
    \vrule height 6pt width 0pt
    \hrule height 0pt
    1 6 4 7.
\end{center}
\end{document}

答案2

使用规则代替\hrule

姆韦

\documentclass{scrartcl}
\begin{document}
\begin{center}
    \large Some Text Above\\     
    \rule[1ex]{.8\textwidth}{1pt}\\
    \rule[1.9ex]{.7\textwidth}{.6pt}\\[-6pt]
    1 6 4 7
\end{center}
\end{document}

Whit\hrule也是可能的,但是没有必要更复杂:

\documentclass{scrartcl}
\begin{document}
{\centering
\large Some Text Above\\[-4pt] 
\leavevmode\vbox{\hrule height 1pt width .8\textwidth}\\[-4pt] 
\leavevmode\vbox{\hrule  width .7\textwidth}\\ 
1 6 4 7\par}

\end{document}

相关内容