我想为技术报告生成封面,因此将以下内容放在我的序言中
\makeatletter
\newcommand{\coverpage}{\onecolumn \centering \large
\thispagestyle{empty}
{\noindent\includegraphics[width=3.5in]{Logo_black}}\vspace*{0.4in}\\
{\noindent\huge Electrical Engineering and Computer Science}\vspace*{0.8in}\\
{\noindent\Huge \bf \@title}\vspace*{0.3in}\\
{\noindent \@date}\vspace*{0.3in}\\
{\noindent \@author}\vspace*{0.4in}\\
\textit{TR-ID-12-06}\vspace*{0.4in}\\
\noindent\textbf{Abstract}\vspace*{0.1in}\\
\hspace*{0.1in}\begin{minipage}{0.8\linewidth}
\input{abstract}
\end{minipage}
\vfill
\setcounter{page}{0}}
\makeatother
然后,在 之后\begin{document}
,我有一个\coverpage
,后面跟着\maketitle
等等。但是,现在整个文档的格式为单列并居中,尽管我的类文件将其配置为双列(并完全对齐)。为什么会发生这种情况?我该如何避免这种情况?
答案1
通过用并将coverpage
宏括起来\begingroup
,\endgroup
您可以将宏的效果限制在该范围内。
笔记:
- 包裹
lipsum
仅用于提供虚拟文本。您的文档中不需要它。 - 该
[demo]
选项用于包裹graphicx
为了在演示目的放置图形的黑框,在实际使用中(当您实际有可用的图形时),您需要删除此选项。
代码:
\documentclass{article}
\usepackage{lipsum}
\usepackage[demo]{graphicx}
\makeatletter
\newcommand{\coverpage}{\begingroup\onecolumn \centering \large
\thispagestyle{empty}
{\noindent\includegraphics[width=3.5in]{Logo_black}}\vspace*{0.4in}\\
{\noindent\huge Electrical Engineering and Computer Science}\vspace*{0.8in}\\
{\noindent\Huge \bf \@title}\vspace*{0.3in}\\
{\noindent \@date}\vspace*{0.3in}\\
{\noindent \@author}\vspace*{0.4in}\\
\textit{TR-ID-12-06}\vspace*{0.4in}\\
\noindent\textbf{Abstract}\vspace*{0.1in}\\
\hspace*{0.1in}\begin{minipage}{0.8\linewidth}
%\input{abstract}
\end{minipage}
\vfill
\setcounter{page}{0}\endgroup}
\makeatother
\begin{document}
\title{Title}
\coverpage
\lipsum[1-7]
\end{document}
答案2
\newcommand{\coverpage}{\onecolumn {\centering \large
%%
创建一个组来限制范围\centering
\setcounter{page}{0}%
\par}%
结束组以停止\centering
(始终确保大小更改和段落格式命令\par
在末尾包含。
\twocolumn
开始两栏
}
结束命令定义
一些不相关的注释,\noindent
通常在之后没有效果\\
,在居中时也没有实际效果,因为缩进无论如何都是 0。最好避免\vspace
在水平模式下使用,其效果是明确的,但很难解释。\vspace*{0.3in}\\
最好写成\\[.3in]