📄 llncs.cls
字号:
\reset@font
\small
\@setnobreak
\@setminipage
}
\def\fps@table{htbp}
\def\fnum@table{\tablename~\thetable}
\renewenvironment{table}
{\setlength\abovecaptionskip{0\p@}%
\setlength\belowcaptionskip{10\p@}%
\@float{table}}
{\end@float}
\renewenvironment{table*}
{\setlength\abovecaptionskip{0\p@}%
\setlength\belowcaptionskip{10\p@}%
\@dblfloat{table}}
{\end@dblfloat}
\long\def\@caption#1[#2]#3{\par\addcontentsline{\csname
ext@#1\endcsname}{#1}{\protect\numberline{\csname
the#1\endcsname}{\ignorespaces #2}}\begingroup
\@parboxrestore
\@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
\endgroup}
% LaTeX does not provide a command to enter the authors institute
% addresses. The \institute command is defined here.
\newcounter{@inst}
\newcounter{@auth}
\newcounter{auco}
\newdimen\instindent
\newbox\authrun
\newtoks\authorrunning
\newtoks\tocauthor
\newbox\titrun
\newtoks\titlerunning
\newtoks\toctitle
\def\clearheadinfo{\gdef\@author{No Author Given}%
\gdef\@title{No Title Given}%
\gdef\@subtitle{}%
\gdef\@institute{No Institute Given}%
\gdef\@thanks{}%
\global\titlerunning={}\global\authorrunning={}%
\global\toctitle={}\global\tocauthor={}}
\def\institute#1{\gdef\@institute{#1}}
\def\institutename{\par
\begingroup
\parskip=\z@
\parindent=\z@
\setcounter{@inst}{1}%
\def\and{\par\stepcounter{@inst}%
\noindent$^{\the@inst}$\enspace\ignorespaces}%
\setbox0=\vbox{\def\thanks##1{}\@institute}%
\ifnum\c@@inst=1\relax
\gdef\fnnstart{0}%
\else
\xdef\fnnstart{\c@@inst}%
\setcounter{@inst}{1}%
\noindent$^{\the@inst}$\enspace
\fi
\ignorespaces
\@institute\par
\endgroup}
\def\@fnsymbol#1{\ensuremath{\ifcase#1\or\star\or{\star\star}\or
{\star\star\star}\or \dagger\or \ddagger\or
\mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger
\or \ddagger\ddagger \else\@ctrerr\fi}}
\def\inst#1{\unskip$^{#1}$}
\def\fnmsep{\unskip$^,$}
\def\email#1{{\tt#1}}
\AtBeginDocument{\@ifundefined{url}{\def\url#1{#1}}{}%
\@ifpackageloaded{babel}{%
\@ifundefined{extrasenglish}{}{\addto\extrasenglish{\switcht@albion}}%
\@ifundefined{extrasfrenchb}{}{\addto\extrasfrenchb{\switcht@francais}}%
\@ifundefined{extrasgerman}{}{\addto\extrasgerman{\switcht@deutsch}}%
}{\switcht@@therlang}%
}
\def\homedir{\~{ }}
\def\subtitle#1{\gdef\@subtitle{#1}}
\clearheadinfo
%
\renewcommand\maketitle{\newpage
\refstepcounter{chapter}%
\stepcounter{section}%
\setcounter{section}{0}%
\setcounter{subsection}{0}%
\setcounter{figure}{0}
\setcounter{table}{0}
\setcounter{equation}{0}
\setcounter{footnote}{0}%
\begingroup
\parindent=\z@
\renewcommand\thefootnote{\@fnsymbol\c@footnote}%
\if@twocolumn
\ifnum \col@number=\@ne
\@maketitle
\else
\twocolumn[\@maketitle]%
\fi
\else
\newpage
\global\@topnum\z@ % Prevents figures from going at top of page.
\@maketitle
\fi
\thispagestyle{empty}\@thanks
%
\def\\{\unskip\ \ignorespaces}\def\inst##1{\unskip{}}%
\def\thanks##1{\unskip{}}\def\fnmsep{\unskip}%
\instindent=\hsize
\advance\instindent by-\headlineindent
\if!\the\toctitle!\addcontentsline{toc}{title}{\@title}\else
\addcontentsline{toc}{title}{\the\toctitle}\fi
\if@runhead
\if!\the\titlerunning!\else
\edef\@title{\the\titlerunning}%
\fi
\global\setbox\titrun=\hbox{\small\rm\unboldmath\ignorespaces\@title}%
\ifdim\wd\titrun>\instindent
\typeout{Title too long for running head. Please supply}%
\typeout{a shorter form with \string\titlerunning\space prior to
\string\maketitle}%
\global\setbox\titrun=\hbox{\small\rm
Title Suppressed Due to Excessive Length}%
\fi
\xdef\@title{\copy\titrun}%
\fi
%
\if!\the\tocauthor!\relax
{\def\and{\noexpand\protect\noexpand\and}%
\protected@xdef\toc@uthor{\@author}}%
\else
\def\\{\noexpand\protect\noexpand\newline}%
\protected@xdef\scratch{\the\tocauthor}%
\protected@xdef\toc@uthor{\scratch}%
\fi
\addtocontents{toc}{\noexpand\protect\noexpand\authcount{\the\c@auco}}%
\addcontentsline{toc}{author}{\toc@uthor}%
\if@runhead
\if!\the\authorrunning!
\value{@inst}=\value{@auth}%
\setcounter{@auth}{1}%
\else
\edef\@author{\the\authorrunning}%
\fi
\global\setbox\authrun=\hbox{\small\unboldmath\@author\unskip}%
\ifdim\wd\authrun>\instindent
\typeout{Names of authors too long for running head. Please supply}%
\typeout{a shorter form with \string\authorrunning\space prior to
\string\maketitle}%
\global\setbox\authrun=\hbox{\small\rm
Authors Suppressed Due to Excessive Length}%
\fi
\xdef\@author{\copy\authrun}%
\markboth{\@author}{\@title}%
\fi
\endgroup
\setcounter{footnote}{\fnnstart}%
\clearheadinfo}
%
\def\@maketitle{\newpage
\markboth{}{}%
\def\lastand{\ifnum\value{@inst}=2\relax
\unskip{} \andname\
\else
\unskip \lastandname\
\fi}%
\def\and{\stepcounter{@auth}\relax
\ifnum\value{@auth}=\value{@inst}%
\lastand
\else
\unskip,
\fi}%
\begin{center}%
\let\newline\\
{\Large \bfseries\boldmath
\pretolerance=10000
\@title \par}\vskip .8cm
\if!\@subtitle!\else {\large \bfseries\boldmath
\vskip -.65cm
\pretolerance=10000
\@subtitle \par}\vskip .8cm\fi
\setbox0=\vbox{\setcounter{@auth}{1}\def\and{\stepcounter{@auth}}%
\def\thanks##1{}\@author}%
\global\value{@inst}=\value{@auth}%
\global\value{auco}=\value{@auth}%
\setcounter{@auth}{1}%
{\lineskip .5em
\noindent\ignorespaces
\@author\vskip.35cm}
{\small\institutename}
\end{center}%
}
% definition of the "\spnewtheorem" command.
%
% Usage:
%
% \spnewtheorem{env_nam}{caption}[within]{cap_font}{body_font}
% or \spnewtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}
% or \spnewtheorem*{env_nam}{caption}{cap_font}{body_font}
%
% New is "cap_font" and "body_font". It stands for
% fontdefinition of the caption and the text itself.
%
% "\spnewtheorem*" gives a theorem without number.
%
% A defined spnewthoerem environment is used as described
% by Lamport.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\@thmcountersep{}
\def\@thmcounterend{.}
\def\spnewtheorem{\@ifstar{\@sthm}{\@Sthm}}
% definition of \spnewtheorem with number
\def\@spnthm#1#2{%
\@ifnextchar[{\@spxnthm{#1}{#2}}{\@spynthm{#1}{#2}}}
\def\@Sthm#1{\@ifnextchar[{\@spothm{#1}}{\@spnthm{#1}}}
\def\@spxnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname
{\@definecounter{#1}\@addtoreset{#1}{#3}%
\expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
\csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%
\expandafter\xdef\csname #1name\endcsname{#2}%
\global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#4}{#5}}%
\global\@namedef{end#1}{\@endtheorem}}}
\def\@spynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
{\@definecounter{#1}%
\expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
\expandafter\xdef\csname #1name\endcsname{#2}%
\global\@namedef{#1}{\@spthm{#1}{\csname #1name\endcsname}{#3}{#4}}%
\global\@namedef{end#1}{\@endtheorem}}}
\def\@spothm#1[#2]#3#4#5{%
\@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%
{\expandafter\@ifdefinable\csname #1\endcsname
{\global\@namedef{the#1}{\@nameuse{the#2}}%
\expandafter\xdef\csname #1name\endcsname{#3}%
\global\@namedef{#1}{\@spthm{#2}{\csname #1name\endcsname}{#4}{#5}}%
\global\@namedef{end#1}{\@endtheorem}}}}
\def\@spthm#1#2#3#4{\topsep 7\p@ \@plus2\p@ \@minus4\p@
\refstepcounter{#1}%
\@ifnextchar[{\@spythm{#1}{#2}{#3}{#4}}{\@spxthm{#1}{#2}{#3}{#4}}}
\def\@spxthm#1#2#3#4{\@spbegintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%
\ignorespaces}
\def\@spythm#1#2#3#4[#5]{\@spopargbegintheorem{#2}{\csname
the#1\endcsname}{#5}{#3}{#4}\ignorespaces}
\def\@spbegintheorem#1#2#3#4{\trivlist
\item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4}
\def\@spopargbegintheorem#1#2#3#4#5{\trivlist
\item[\hskip\labelsep{#4#1\ #2}]{#4(#3)\@thmcounterend\ }#5}
% definition of \spnewtheorem* without number
\def\@sthm#1#2{\@Ynthm{#1}{#2}}
\def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
{\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%
\expandafter\xdef\csname #1name\endcsname{#2}%
\global\@namedef{end#1}{\@endtheorem}}}
\def\@Thm#1#2#3{\topsep 7\p@ \@plus2\p@ \@minus4\p@
\@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}
\def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}
\def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}
{#4}{#2}{#3}\ignorespaces}
\def\@Begintheorem#1#2#3{#3\trivlist
\item[\hskip\labelsep{#2#1\@thmcounterend}]}
\def\@Opargbegintheorem#1#2#3#4{#4\trivlist
\item[\hskip\labelsep{#3#1}]{#3(#2)\@thmcounterend\ }}
\if@envcntsect
\def\@thmcountersep{.}
\spnewtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape}
\else
\spnewtheorem{theorem}{Theorem}{\bfseries}{\itshape}
\if@envcntreset
\@addtoreset{theorem}{section}
\else
\@addtoreset{theorem}{chapter}
\fi
\fi
%definition of divers theorem environments
\spnewtheorem*{claim}{Claim}{\itshape}{\rmfamily}
\spnewtheorem*{proof}{Proof}{\itshape}{\rmfamily}
\if@envcntsame % alle Umgebungen wie Theorem.
\def\spn@wtheorem#1#2#3#4{\@spothm{#1}[theorem]{#2}{#3}{#4}}
\else % alle Umgebungen mit eigenem Zaehler
\if@envcntsect % mit section numeriert
\def\spn@wtheorem#1#2#3#4{\@spxnthm{#1}{#2}[section]{#3}{#4}}
\else % nicht mit section numeriert
\if@envcntreset
\def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
\@addtoreset{#1}{section}}
\else
\def\spn@wtheorem#1#2#3#4{\@spynthm{#1}{#2}{#3}{#4}
\@addtoreset{#1}{chapter}}%
\fi
\fi
\fi
\spn@wtheorem{case}{Case}{\itshape}{\rmfamily}
\spn@wtheorem{conjecture}{Conjecture}{\itshape}{\rmfamily}
\spn@wtheorem{corollary}{Corollary}{\bfseries}{\itshape}
\spn@wtheorem{definition}{Definition}{\bfseries}{\itshape}
\spn@wtheorem{example}{Example}{\itshape}{\rmfamily}
\spn@wtheorem{exercise}{Exercise}{\itshape}{\rmfamily}
\spn@wtheorem{lemma}{Lemma}{\bfseries}{\itshape}
\spn@wtheorem{note}{Note}{\itshape}{\rmfamily}
\spn@wtheorem{problem}{Problem}{\itshape}{\rmfamily}
\spn@wtheorem{property}{Property}{\itshape}{\rmfamily}
\spn@wtheorem{proposition}{Proposition}{\bfseries}{\itshape}
\spn@wtheorem{question}{Question}{\itshape}{\rmfamily}
\spn@wtheorem{solution}{Solution}{\itshape}{\rmfamily}
\spn@wtheorem{remark}{Remark}{\itshape}{\rmfamily}
\def\@takefromreset#1#2{%
\def\@tempa{#1}%
\let\@tempd\@elt
\def\@elt##1{%
\def\@tempb{##1}%
\ifx\@tempa\@tempb\else
\@addtoreset{##1}{#2}%
\fi}%
\expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname
\expandafter\def\csname cl@#2\endcsname{}%
\@tempc
\let\@elt\@tempd}
\def\theopargself{\def\@spopargbegintheorem##1##2##3##4##5{\trivlist
\item[\hskip\labelsep{##4##1\ ##2}]{##4##3\@thmcounterend\ }##5}
\def\@Opargbegintheorem##1##2##3##4{##4\trivlist
\item[\hskip\labelsep{##3##1}]{##3##2\@thmcounterend\ }}
}
\renewenvironment{abstract}{%
\list{}{\advance\topsep by0.35cm\relax\small
\leftmargin=1cm
\labelwidth=\z@
\listparindent=\z@
\itemindent\listparindent
\rightmargin\leftmargin}\item[\hskip\labelsep
\bfseries\abstractname]}
{\endlist}
\newdimen\headlineindent % dimension for space between
\headlineindent=1.166cm % number and text of headings.
\def\ps@headings{\let\@mkboth\@gobbletwo
\let\@oddfoot\@empty\let\@evenfoot\@empty
\def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%
\leftmark\hfil}
\def\@oddhead{\normalfont\small\hfil\rightmark\hspace{\headlineindent}%
\llap{\thepage}}
\def\chaptermark##1{}%
\def\sectionmark##1{}%
\def\subsectionmark##1{}}
\def\ps@titlepage{\let\@mkboth\@gobbletwo
\let\@oddfoot\@empty\let\@evenfoot\@empty
\def\@evenhead{\normalfont\small\rlap{\thepage}\hspace{\headlineindent}%
\hfil}
\def\@oddhead{\normalfont\small\hfil\hspace{\headlineindent}%
\llap{\thepage}}
\def\chaptermark##1{}%
\def\sectionmark##1{}%
\def\subsectionmark##1{}}
\if@runhead\ps@headings\else
\ps@empty\fi
\setlength\arraycolsep{1.4\p@}
\setlength\tabcolsep{1.4\p@}
\endinput
%end of file llncs.cls
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -