居中对齐,上下对齐

居中对齐,上下对齐

在我的标题页上,我有这样的内容:

\rule{\linewidth}{0.25mm}\\[0.25cm]
\huge
\textbf{This is my title, it is somewhat long and split over two lines!}\\[0.25cm]
\normalsize
\rule{\linewidth}{0.25mm}

这是相应的输出:

--------------------------------------
   This is my title, it is somewhat
    long and split over two lines!
--------------------------------------

请注意两件事:

  1. 顶部第一行和(折回的)第二行相似,但长度不同。我想对齐它们(稍微压缩顶部行,稍微扩展底部行)。
  2. 扩展\rule\linewidth,而我希望它是规则之间的文本的宽度。

我想要的结果是这样的:

--------------------------------
This is my title, it is somewhat
long and  split over  two lines!
--------------------------------

有谁能帮我实现这个吗?谢谢 :)

答案1

窃取@egreg 的答案...您可以修改单词间距,或者仅\hfill在其间添加几个 s:

在此处输入图片描述

\documentclass{article}
\usepackage{booktabs}% http://ctan.org/pkg/booktabs
\begin{document}

\mbox{\huge\bfseries
  \begin{tabular}{@{}c@{}}
  \toprule[.25mm]
  This is my title, it is somewhat\\
  long\hfill and\hfill split\hfill over\hfill two\hfill lines!\\
  \bottomrule[.25mm]
  \end{tabular}%
}

\end{document}

如果没有足够的空间可以拉伸,则它本身\hfill不会在 a 内执行任何操作。但是,由于第一行比第二行长,因此有拉伸空间。tabular


\makebox[<len>][<justification>]{<stuff>}如果您知道应该分布的,也可以与<justification>给出的[s](用于拉伸)一起使用:s<len><stuff>

在此处输入图片描述

\documentclass{article}
\usepackage{booktabs}% http://ctan.org/pkg/booktabs
\begin{document}

\newlength{\mylen}
\noindent{\huge\bfseries
  \settowidth{\mylen}{This is my title, it is somewhat}%
  \begin{tabular}{@{}c@{}}
  \toprule[.25mm]
  This is my title, it is somewhat\\
  \makebox[\mylen][s]{long and split over two lines!}\\
  \bottomrule[.25mm]
  \end{tabular}%
}

\end{document}

答案2

使用tabular环境:

\documentclass{article}
\usepackage{booktabs}
\begin{document}
\mbox{\huge\bfseries
  \begin{tabular}{@{}c@{}}
  \toprule[.25mm]
  This is my title, it is somewhat\\
  long and split over two lines!\\
  \bottomrule[.25mm]
  \end{tabular}%
}
\end{document}

在此处输入图片描述

答案3

我不确定我是否理解您的第一个要求,但您可以使用来\parbox让文本根据需要换行。

这里我定义了\MyTitleLength设置所需长度的位置。由于这是一次性使用,您可以调整它直到获得所需长度。如果经常使用它,我会用它\widhtof{<text>}来计算所需的宽度。我们使用相同的长度来指定您想要的规则的长度。

您可以使用center环境来获得居中效果。这里我使用了包[showframe]的选项geometry来显示它已居中。

在此处输入图片描述

将标题文本居中也可以获得更好的效果:

\parbox{\MyTitleLength}{\centering\huge\textbf{This is my title, it is somewhat long and split over two lines!}}\\[0.25cm]

在此处输入图片描述

\documentclass{article}
\begin{document}
\newlength{\MyTitleLength}%
\setlength{\MyTitleLength}{4.5in}%
%
\noindent\rule{\MyTitleLength}{0.25mm}\\[0.25cm]
\parbox{\MyTitleLength}{\huge\textbf{This is my title, it is somewhat long and split over two lines!}}\\[0.25cm]
\normalsize
\rule{\MyTitleLength}{0.25mm}
\end{document}

相关内容