如何将两个标题放在同一行(彼此相邻)?

如何将两个标题放在同一行(彼此相邻)?

有人可以帮我把“作者:”和“主管:”放在同一行吗?

\begin{minipage}{0.4\textwidth}
\begin{flushleft} \large
{\bf Author:}\\
aaa\textsc{bbb} % My name
\end{flushleft}
\end{minipage}
~
\begin{minipage}{0.4\textwidth}
\begin{flushright} \large
{\bf Supervisors:} \\
ccc \textsc{ddd} \\% Name 1
eee \textsc{fff} \\% Name 2
\end{flushright}

答案1

只需稍加努力,您就可以获得可重复使用的结构,从而更轻松地输入数据。

环境namedata将全局宽度(默认.8\textwidth)作为第一个可选参数,将作者姓名作为强制参数。环境主体由主管姓名组成。我展示了三个具有不同宽度的示例。

总体tabular*环境包含两个顶部对齐的tabular环境。更改内部对齐很容易;例如,我更喜欢将主管姓名左对齐(只需将第二个更改\begin{tabular}[t]{@{}r@{}}\begin{tabular}[t]{@{}l@{}}即可看到效果)。

\documentclass{article}

\usepackage{showframe} % just for the example

\newenvironment{namedata}[2][.8\textwidth]
 {\centering
  \begin{tabular*}{#1}{@{\extracolsep{\fill}}lr@{}}%
  \namedataauthor{#2} &
  \begin{tabular}[t]{@{}r@{}}
    \bfseries Supervisors: \\}
 {\end{tabular}\end{tabular*}\par}
\newcommand{\namedataauthor}[1]{%
  \begin{tabular}[t]{@{}l@{}}
  \bfseries Author: \\
  #1
  \end{tabular}}

\begin{document}


\begin{namedata}{My \textsc{Name}}
Super Visor\\
Excellent Visor\\
Extraordinary Visor
\end{namedata}

\bigskip

\begin{namedata}[.6\textwidth]{My \textsc{Name}}
Super Visor\\
Excellent Visor\\
Extraordinary Visor
\end{namedata}

\bigskip

\begin{namedata}[\textwidth]{My \textsc{Name}}
Super Visor\\
Excellent Visor\\
Extraordinary Visor
\end{namedata}
\end{document}

在此处输入图片描述

相关内容