![居中对齐,上下对齐](https://linux22.com/image/245740/%E5%B1%85%E4%B8%AD%E5%AF%B9%E9%BD%90%EF%BC%8C%E4%B8%8A%E4%B8%8B%E5%AF%B9%E9%BD%90.png)
在我的标题页上,我有这样的内容:
\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!
--------------------------------------
请注意两件事:
- 顶部第一行和(折回的)第二行相似,但长度不同。我想对齐它们(稍微压缩顶部行,稍微扩展底部行)。
- 扩展
\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}