两行之间的文本

两行之间的文本

我想写适合两行之间的单词。

我找到了以下代码:

\documentclass[parskip,paper=a4]{scrartcl}
\usepackage{calc}

\setlength{\parindent}{0pt}
\setlength{\fboxsep}{0pt}
\pagestyle{empty}

\newsavebox{\mybox}
\newenvironment{mb}
{\begin{lrbox}{\mybox}\begin{minipage}[4mm]{\columnwidth-2\fboxsep}}%
{\end{minipage}\end{lrbox}\par\vspace{10mm}\noindent\fbox{\usebox{\mybox}}\par}

\begin{document}
\begin{mb}
\Huge Stackexchange
\end{mb}
\end{document}

我希望得到这样的东西:

编辑:更清楚...抱歉!

我希望线条与页面同宽,且两行前面仅包含一些字符。

答案1

以下示例将文本放入一个框中,然后减小高度和深度,在\fbox缩小的框周围放置一个无边距的框架 ( )。原始高度和深度保持不变\vphantom

\documentclass[parskip,paper=a4]{scrartcl}

\newcommand*{\TwoLinesBox}[1]{%
  \leavevmode
  \begingroup
    \sbox0{\,#1\,}%
    \vphantom{\copy0}% keep original height and depth
    \sbox2{x}% new height
    \ht0=\ht2 %
    \dp0=0pt %
    \setlength{\fboxsep}{0pt}% \fbox without additional inner margins
    \fbox{\copy0}%
  \endgroup
}

\begin{document}
\Huge
\noindent
\TwoLinesBox{Stackexchange}
\end{document}

结果

半开箱,跨越线

下面的示例使用tabular一个列跨越整个行宽的环境。这两行设置在行的开头。

代码使用纯 TeX 宏和原语。文献:

示例文件:

\documentclass{article}

\usepackage{array}

\newenvironment{twolines}{%
  \par
  \noindent
  \begin{tabular}{@{}>{\AddTwoLines}p{\linewidth}@{}}%
}{%
  \end{tabular}%
}

\newcommand*{\AddTwoLines}{%
  \noindent
  \sbox0{\vrule\vphantom{x}}%
  \rlap{%
    \vbox{\hrule width\linewidth}%
  }%
  \rlap{%
    \raise\ht0\vbox{\hrule width\linewidth}%
  }%
  \copy0 %
  \,\ignorespaces
}

\begin{document}
\Huge
\begin{twolines}
  Stack\\
  Exchange
\end{twolines}
\end{document}

结果

相关内容