📄 ieeetran.cls
字号:
%%%% IEEEtran.cls 2007/03/05 version V1.7a%% %% %% This is the official IEEE LaTeX class for authors of the Institute of %% Electrical and Electronics Engineers (IEEE) Transactions journals and%% conferences.%% %% Support sites:%% http://www.michaelshell.org/tex/ieeetran/%% http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/%% and%% http://www.ieee.org/%%%% Based on the original 1993 IEEEtran.cls, but with many bug fixes%% and enhancements (from both JVH and MDS) over the 1996/7 version.%%%%%% Contributors:%% Gerry Murray (1993), Silvano Balemi (1993),%% Jon Dixon (1996), Peter N"uchter (1996),%% Juergen von Hagen (2000), and Michael Shell (2001-2007)%% %% %% Copyright (c) 1993-2000 by Gerry Murray, Silvano Balemi, %% Jon Dixon, Peter N"uchter,%% Juergen von Hagen%% and%% Copyright (c) 2001-2007 by Michael Shell%%%% Current maintainer (V1.3 to V1.7): Michael Shell%% See:%% http://www.michaelshell.org/%% for current contact information.%%%% Special thanks to Peter Wilson (CUA) and Donald Arseneau%% for allowing the inclusion of the \@ifmtarg command %% from their ifmtarg LaTeX package. %% %%*************************************************************************%% Legal Notice:%% This code is offered as-is without any warranty either expressed or%% implied; without even the implied warranty of MERCHANTABILITY or%% FITNESS FOR A PARTICULAR PURPOSE! %% User assumes all risk.%% In no event shall IEEE or any contributor to this code be liable for%% any damages or losses, including, but not limited to, incidental,%% consequential, or any other damages, resulting from the use or misuse%% of any information contained here.%%%% All comments are the opinions of their respective authors and are not%% necessarily endorsed by the IEEE.%%%% This work is distributed under the LaTeX Project Public License (LPPL)%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used,%% distributed and modified. A copy of the LPPL, version 1.3, is included%% in the base LaTeX documentation of all distributions of LaTeX released%% 2003/12/01 or later.%% Retain all contribution notices and credits.%% ** Modified files should be clearly indicated as such, including **%% ** renaming them and changing author support contact information. **%%%% File list of work: IEEEtran.cls, IEEEtran_HOWTO.pdf, bare_adv.tex,%% bare_conf.tex, bare_jrnl.tex, bare_jrnl_compsoc.tex%% %% Major changes to the user interface should be indicated by an %% increase in the version numbers. If a version is a beta, it will %% be indicated with a BETA suffix, i.e., 1.4 BETA.%% Small changes can be indicated by appending letters to the version%% such as "IEEEtran_v14a.cls".%% In all cases, \Providesclass, any \typeout messages to the user,%% \IEEEtransversionmajor and \IEEEtransversionminor must reflect the%% correct version information.%% The changes should also be documented via source comments.%%*************************************************************************%%%% Available class options % e.g., \documentclass[10pt,conference]{IEEEtran} % % *** choose only one from each category ***%% 9pt, 10pt, 11pt, 12pt% Sets normal font size. The default is 10pt.% % conference, journal, technote, peerreview, peerreviewca% determines format mode - conference papers, journal papers,% correspondence papers (technotes), or peer review papers. The user% should also select 9pt when using technote. peerreview is like% journal mode, but provides for a single-column "cover" title page for% anonymous peer review. The paper title (without the author names) is% repeated at the top of the page after the cover page. For peer review% papers, the \IEEEpeerreviewmaketitle command must be executed (will% automatically be ignored for non-peerreview modes) at the place the% cover page is to end, usually just after the abstract (keywords are% not normally used with peer review papers). peerreviewca is like% peerreview, but allows the author names to be entered and formatted% as with conference mode so that author affiliation and contact% information can be easily seen on the cover page.% The default is journal.%% draft, draftcls, draftclsnofoot, final% determines if paper is formatted as a widely spaced draft (for% handwritten editor comments) or as a properly typeset final version.% draftcls restricts draft mode to the class file while all other LaTeX% packages (i.e., \usepackage{graphicx}) will behave as final - allows% for a draft paper with visible figures, etc. draftclsnofoot is like% draftcls, but does not display the date and the word "DRAFT" at the foot% of the pages. If using one of the draft modes, the user will probably% also want to select onecolumn.% The default is final.%% letterpaper, a4paper% determines paper size: 8.5in X 11in or 210mm X 297mm. CHANGING THE PAPER% SIZE WILL NOT ALTER THE TYPESETTING OF THE DOCUMENT - ONLY THE MARGINS% WILL BE AFFECTED. In particular, documents using the a4paper option will% have reduced side margins (A4 is narrower than US letter) and a longer% bottom margin (A4 is longer than US letter). For both cases, the top% margins will be the same and the text will be horizontally centered. % For final submission to IEEE, authors should use US letter (8.5 X 11in)% paper. Note that authors should ensure that all post-processing % (ps, pdf, etc.) uses the same paper specificiation as the .tex document.% Problems here are by far the number one reason for incorrect margins.% IEEEtran will automatically set the default paper size under pdflatex % (without requiring a change to pdftex.cfg), so this issue is more% important to dvips users. Fix config.ps, config.pdf, or ~/.dvipsrc for% dvips, or use the dvips -t papersize option instead as needed. See the% testflow documentation% http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/testflow% for more details on dvips paper size configuration.% The default is letterpaper.%% oneside, twoside% determines if layout follows single sided or two sided (duplex)% printing. The only notable change is with the headings at the top of% the pages.% The default is oneside.%% onecolumn, twocolumn% determines if text is organized into one or two columns per page. One% column mode is usually used only with draft papers.% The default is twocolumn.%% compsoc% Use the format of the IEEE Computer Society.%% romanappendices% Use the "Appendix I" convention when numbering appendices. IEEEtran.cls% now defaults to Alpha "Appendix A" convention - the opposite of what% v1.6b and earlier did.%% captionsoff% disables the display of the figure/table captions. Some IEEE journals% request that captions be removed and figures/tables be put on pages% of their own at the end of an initial paper submission. The endfloat% package can be used with this class option to achieve this format.%% nofonttune% turns off tuning of the font interword spacing. Maybe useful to those% not using the standard Times fonts or for those who have already "tuned"% their fonts.% The default is to enable IEEEtran to tune font parameters.%%%----------% Available CLASSINPUTs provided (all are macros unless otherwise noted):% \CLASSINPUTbaselinestretch% \CLASSINPUTinnersidemargin% \CLASSINPUToutersidemargin% \CLASSINPUTtoptextmargin% \CLASSINPUTbottomtextmargin%% Available CLASSINFOs provided:% \ifCLASSINFOpdf (TeX if conditional)% \CLASSINFOpaperwidth (macro)% \CLASSINFOpaperheight (macro)% \CLASSINFOnormalsizebaselineskip (length)% \CLASSINFOnormalsizeunitybaselineskip (length)%% Available CLASSOPTIONs provided:% all class option flags (TeX if conditionals) unless otherwise noted,% e.g., \ifCLASSOPTIONcaptionsoff% point size options provided as a single macro:% \CLASSOPTIONpt% which will be defined as 9, 10, 11, or 12 depending on the document's% normalsize point size.% also, class option peerreviewca implies the use of class option peerreview% and classoption draft implies the use of class option draftcls\ProvidesClass{IEEEtran}[2007/03/05 V1.7a by Michael Shell]\typeout{-- See the "IEEEtran_HOWTO" manual for usage information.}\typeout{-- http://www.michaelshell.org/tex/ieeetran/}\NeedsTeXFormat{LaTeX2e}% IEEEtran.cls version numbers, provided as of V1.3% These values serve as a way a .tex file can% determine if the new features are provided.% The version number of this IEEEtrans.cls can be obtained from % these values. i.e., V1.4% KEEP THESE AS INTEGERS! i.e., NO {4a} or anything like that-% (no need to enumerate "a" minor changes here)\def\IEEEtransversionmajor{1}\def\IEEEtransversionminor{7}% These do nothing, but provide them like in article.cls\newif\if@restonecol\newif\if@titlepage% class option conditionals\newif\ifCLASSOPTIONonecolumn \CLASSOPTIONonecolumnfalse\newif\ifCLASSOPTIONtwocolumn \CLASSOPTIONtwocolumntrue\newif\ifCLASSOPTIONoneside \CLASSOPTIONonesidetrue\newif\ifCLASSOPTIONtwoside \CLASSOPTIONtwosidefalse\newif\ifCLASSOPTIONfinal \CLASSOPTIONfinaltrue\newif\ifCLASSOPTIONdraft \CLASSOPTIONdraftfalse\newif\ifCLASSOPTIONdraftcls \CLASSOPTIONdraftclsfalse\newif\ifCLASSOPTIONdraftclsnofoot \CLASSOPTIONdraftclsnofootfalse\newif\ifCLASSOPTIONpeerreview \CLASSOPTIONpeerreviewfalse\newif\ifCLASSOPTIONpeerreviewca \CLASSOPTIONpeerreviewcafalse\newif\ifCLASSOPTIONjournal \CLASSOPTIONjournaltrue\newif\ifCLASSOPTIONconference \CLASSOPTIONconferencefalse\newif\ifCLASSOPTIONtechnote \CLASSOPTIONtechnotefalse\newif\ifCLASSOPTIONnofonttune \CLASSOPTIONnofonttunefalse\newif\ifCLASSOPTIONcaptionsoff \CLASSOPTIONcaptionsofffalse\newif\ifCLASSOPTIONcompsoc \CLASSOPTIONcompsocfalse\newif\ifCLASSOPTIONromanappendices \CLASSOPTIONromanappendicesfalse% class info conditionals% indicates if pdf (via pdflatex) output\newif\ifCLASSINFOpdf \CLASSINFOpdffalse% V1.6b internal flag to show if using a4paper\newif\if@IEEEusingAfourpaper \@IEEEusingAfourpaperfalse% IEEEtran class scratch pad registers% dimen\newdimen\@IEEEtrantmpdimenA\newdimen\@IEEEtrantmpdimenB% count\newcount\@IEEEtrantmpcountA\newcount\@IEEEtrantmpcountB% token list\newtoks\@IEEEtrantmptoksA% we use \CLASSOPTIONpt so that we can ID the point size (even for 9pt docs)% as well as LaTeX's \@ptsize to retain some compatability with some% external packages\def\@ptsize{0}% LaTeX does not support 9pt, so we set \@ptsize to 0 - same as that of 10pt\DeclareOption{9pt}{\def\CLASSOPTIONpt{9}\def\@ptsize{0}}\DeclareOption{10pt}{\def\CLASSOPTIONpt{10}\def\@ptsize{0}}\DeclareOption{11pt}{\def\CLASSOPTIONpt{11}\def\@ptsize{1}}\DeclareOption{12pt}{\def\CLASSOPTIONpt{12}\def\@ptsize{2}}\DeclareOption{letterpaper}{\setlength{\paperheight}{11in}% \setlength{\paperwidth}{8.5in}% \@IEEEusingAfourpaperfalse \def\CLASSOPTIONpaper{letter}% \def\CLASSINFOpaperwidth{8.5in}% \def\CLASSINFOpaperheight{11in}}\DeclareOption{a4paper}{\setlength{\paperheight}{297mm}% \setlength{\paperwidth}{210mm}% \@IEEEusingAfourpapertrue \def\CLASSOPTIONpaper{a4}% \def\CLASSINFOpaperwidth{210mm}% \def\CLASSINFOpaperheight{297mm}}\DeclareOption{oneside}{\@twosidefalse\@mparswitchfalse \CLASSOPTIONonesidetrue\CLASSOPTIONtwosidefalse}\DeclareOption{twoside}{\@twosidetrue\@mparswitchtrue \CLASSOPTIONtwosidetrue\CLASSOPTIONonesidefalse}\DeclareOption{onecolumn}{\CLASSOPTIONonecolumntrue\CLASSOPTIONtwocolumnfalse}\DeclareOption{twocolumn}{\CLASSOPTIONtwocolumntrue\CLASSOPTIONonecolumnfalse}% If the user selects draft, then this class AND any packages% will go into draft mode.\DeclareOption{draft}{\CLASSOPTIONdrafttrue\CLASSOPTIONdraftclstrue \CLASSOPTIONdraftclsnofootfalse} % draftcls is for a draft mode which will not affect any packages% used by the document.\DeclareOption{draftcls}{\CLASSOPTIONdraftfalse\CLASSOPTIONdraftclstrue \CLASSOPTIONdraftclsnofootfalse} % draftclsnofoot is like draftcls, but without the footer.\DeclareOption{draftclsnofoot}{\CLASSOPTIONdraftfalse\CLASSOPTIONdraftclstrue \CLASSOPTIONdraftclsnofoottrue} \DeclareOption{final}{\CLASSOPTIONdraftfalse\CLASSOPTIONdraftclsfalse \CLASSOPTIONdraftclsnofootfalse}\DeclareOption{journal}{\CLASSOPTIONpeerreviewfalse\CLASSOPTIONpeerreviewcafalse \CLASSOPTIONjournaltrue\CLASSOPTIONconferencefalse\CLASSOPTIONtechnotefalse}\DeclareOption{conference}{\CLASSOPTIONpeerreviewfalse\CLASSOPTIONpeerreviewcafalse \CLASSOPTIONjournalfalse\CLASSOPTIONconferencetrue\CLASSOPTIONtechnotefalse}\DeclareOption{technote}{\CLASSOPTIONpeerreviewfalse\CLASSOPTIONpeerreviewcafalse \CLASSOPTIONjournalfalse\CLASSOPTIONconferencefalse\CLASSOPTIONtechnotetrue}\DeclareOption{peerreview}{\CLASSOPTIONpeerreviewtrue\CLASSOPTIONpeerreviewcafalse \CLASSOPTIONjournalfalse\CLASSOPTIONconferencefalse\CLASSOPTIONtechnotefalse}\DeclareOption{peerreviewca}{\CLASSOPTIONpeerreviewtrue\CLASSOPTIONpeerreviewcatrue \CLASSOPTIONjournalfalse\CLASSOPTIONconferencefalse\CLASSOPTIONtechnotefalse}\DeclareOption{nofonttune}{\CLASSOPTIONnofonttunetrue}\DeclareOption{captionsoff}{\CLASSOPTIONcaptionsofftrue}\DeclareOption{compsoc}{\CLASSOPTIONcompsoctrue}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -