|
@@ -0,0 +1,660 @@
|
|
|
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
|
|
|
+\ProvidesClass{cumcmthesis}
|
|
|
+ [2017/09/16 v2.6 Standard LaTeX Template for CUMCM]
|
|
|
+%% Inital Code
|
|
|
+\newif\if@mcm@bwprint\@mcm@bwprintfalse
|
|
|
+\newif\if@mcm@preface\@mcm@prefacetrue
|
|
|
+% tokens definition
|
|
|
+%%%% 承诺书
|
|
|
+\newcommand\mcm@tokens@keywords{}
|
|
|
+\newcommand*\mcm@tokens@tihao{}
|
|
|
+\newcommand*\mcm@tokens@baominghao{}
|
|
|
+\newcommand*\mcm@tokens@schoolname{}
|
|
|
+\newcommand*\mcm@tokens@membera{}
|
|
|
+\newcommand*\mcm@tokens@memberb{}
|
|
|
+\newcommand*\mcm@tokens@memberc{}
|
|
|
+\newcommand*\mcm@tokens@supervisor{}
|
|
|
+\newcommand*\mcm@tokens@yearinput{}
|
|
|
+\newcommand*\mcm@tokens@monthinput{}
|
|
|
+\newcommand*\mcm@tokens@dayinput{}
|
|
|
+%%%% 编号专用页
|
|
|
+% 没有
|
|
|
+%% Declaration of Options
|
|
|
+\DeclareOption{colorprint}{\@mcm@bwprintfalse}
|
|
|
+\DeclareOption{bwprint}{\@mcm@bwprinttrue}
|
|
|
+\DeclareOption{withoutpreface}{\@mcm@prefacefalse}
|
|
|
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
|
|
|
+%% Executing of Options
|
|
|
+\ExecuteOptions{colorprint}
|
|
|
+\ProcessOptions\relax
|
|
|
+%% Loading Class
|
|
|
+\LoadClass[a4paper,12pt]{article}
|
|
|
+%% Loading Package
|
|
|
+\RequirePackage{ifxetex}
|
|
|
+\RequireXeTeX
|
|
|
+\ifxetex\else
|
|
|
+\ClassError{mcmthesis}{You must use the `xelatex' driver\MessageBreak Please choose `xelatex'}{%
|
|
|
+Just choose `xelatex', no `pdflatex' or `latex' and so on.}
|
|
|
+\fi
|
|
|
+% 支持中文的 ctex 宏包
|
|
|
+\RequirePackage{ctex}
|
|
|
+% 页面布局
|
|
|
+\RequirePackage{geometry}
|
|
|
+% 数学宏包
|
|
|
+\RequirePackage{amsmath}
|
|
|
+\RequirePackage{amsfonts}
|
|
|
+\RequirePackage{amssymb}
|
|
|
+\RequirePackage{bm}
|
|
|
+%\RequirePackage{titletoc}
|
|
|
+% 设置颜色
|
|
|
+\RequirePackage{xcolor}
|
|
|
+% 插入图片
|
|
|
+\RequirePackage{graphicx}
|
|
|
+\RequirePackage{float}
|
|
|
+% 表格
|
|
|
+\RequirePackage{array}
|
|
|
+%% 长表格
|
|
|
+\RequirePackage{longtable}
|
|
|
+%% booktabs 提供了\toprule 等命令.
|
|
|
+\RequirePackage{booktabs,tabularx}
|
|
|
+%% multirow 支持在表格中跨行
|
|
|
+\RequirePackage{multirow}
|
|
|
+%% 调整间隔, 让表格更好看些
|
|
|
+\RequirePackage{bigstrut}
|
|
|
+%% 在跨行表格中输入定界符
|
|
|
+\RequirePackage{bigdelim}
|
|
|
+% 保护脆落命令
|
|
|
+\RequirePackage{cprotect}
|
|
|
+% 设置代码环境
|
|
|
+\RequirePackage{listings}
|
|
|
+\RequirePackage{xcolor}
|
|
|
+% 插入链接
|
|
|
+\RequirePackage{url}
|
|
|
+% 绘图的包
|
|
|
+%\RequirePackage{tikz}
|
|
|
+%\usetikzlibrary{snakes}
|
|
|
+
|
|
|
+% 字图与子标题
|
|
|
+\RequirePackage{subcaption}
|
|
|
+\RequirePackage[titles]{tocloft}
|
|
|
+%\renewcommand{\cftdot}{$\cdot$}
|
|
|
+%\renewcommand{\cftsecdotsep}{1.5}
|
|
|
+\renewcommand{\cftsecdotsep}{4.5}
|
|
|
+\setlength{\cftbeforesecskip}{7pt}
|
|
|
+\setlength{\cftbeforesubsecskip}{3pt}
|
|
|
+%\setlength{\cftbeforesubsecskip}{5pt}
|
|
|
+\renewcommand{\cftsecfont}{\bfseries\zihao{-4}\heiti}
|
|
|
+\renewcommand{\cftsecleader}{\cftdotfill{\cftsecdotsep}}
|
|
|
+\renewcommand{\cftsecaftersnumb}{\hskip.4em}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+\definecolor{dkgreen}{rgb}{0,0.6,0}
|
|
|
+\definecolor{gray}{rgb}{0.5,0.5,0.5}
|
|
|
+\definecolor{mauve}{rgb}{0.58,0,0.82}
|
|
|
+
|
|
|
+\lstset{
|
|
|
+ frame=tb,
|
|
|
+ aboveskip=3mm,
|
|
|
+ belowskip=3mm,
|
|
|
+ showstringspaces=false,
|
|
|
+ columns=flexible,
|
|
|
+ framerule=1pt,
|
|
|
+ rulecolor=\color{gray!35},
|
|
|
+ backgroundcolor=\color{gray!5},
|
|
|
+ basicstyle={\small\ttfamily},
|
|
|
+ numbers=none,
|
|
|
+ numberstyle=\tiny\color{gray},
|
|
|
+ keywordstyle=\color{blue},
|
|
|
+ commentstyle=\color{dkgreen},
|
|
|
+ stringstyle=\color{mauve},
|
|
|
+ breaklines=true,
|
|
|
+ breakatwhitespace=true,
|
|
|
+ tabsize=3,
|
|
|
+}
|
|
|
+% 首行缩进
|
|
|
+\RequirePackage{indentfirst}
|
|
|
+% 设置浮动体的标题
|
|
|
+\RequirePackage{caption}
|
|
|
+% 定制列表环境
|
|
|
+\RequirePackage{enumitem}
|
|
|
+% 下划线
|
|
|
+\RequirePackage{ulem}
|
|
|
+% 尺寸计算
|
|
|
+\RequirePackage{calc}
|
|
|
+
|
|
|
+\RequirePackage[titletoc,title]{appendix}
|
|
|
+
|
|
|
+%\RequirePackage[title,toc,titletoc]{appendix}
|
|
|
+
|
|
|
+\RequirePackage{etoolbox}
|
|
|
+\AtBeginEnvironment{thebibliography}{%
|
|
|
+ \phantomsection
|
|
|
+ \addcontentsline{toc}{section}{\refname}
|
|
|
+ }
|
|
|
+% 超链接 hyperref 的设置
|
|
|
+\RequirePackage{hyperref}
|
|
|
+% 智能自动化交叉引用
|
|
|
+\RequirePackage{cleveref}
|
|
|
+%% Document Layout
|
|
|
+% 页面布局
|
|
|
+\geometry{top=25mm,bottom=25mm,left=25mm,right=25mm}
|
|
|
+\renewcommand*{\baselinestretch}{1.38}
|
|
|
+% 修改tabular 环境, 设置表格中的行间距为正文行间距.
|
|
|
+\let\mcm@oldtabular\tabular
|
|
|
+\let\mcm@endoldtabular\endtabular
|
|
|
+\renewenvironment{tabular}%
|
|
|
+ {\bgroup%
|
|
|
+ \renewcommand{\arraystretch}{1.38}%
|
|
|
+ \mcm@oldtabular}%
|
|
|
+ {\mcm@endoldtabular\egroup}
|
|
|
+% 每行缩进两个汉字
|
|
|
+\setlength\parindent{2em}
|
|
|
+% 设置字体
|
|
|
+\setmainfont{Times New Roman}
|
|
|
+%\setmonofont{Courier New}
|
|
|
+\setsansfont{Arial}
|
|
|
+\setCJKfamilyfont{kai}[AutoFakeBold]{simkai.ttf}
|
|
|
+\newcommand*{\kai}{\CJKfamily{kai}}
|
|
|
+\setCJKfamilyfont{song}[AutoFakeBold]{SimSun}
|
|
|
+\newcommand*{\song}{\CJKfamily{song}}
|
|
|
+
|
|
|
+\renewcommand\normalsize{%
|
|
|
+ \@setfontsize\normalsize{12.05}{14.45}%
|
|
|
+ \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@
|
|
|
+ \abovedisplayshortskip \z@ \@plus3\p@
|
|
|
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@}
|
|
|
+% 数学环境, 定理等设置
|
|
|
+\newtheorem{definition}{\mcm@cap@definition}
|
|
|
+\newtheorem{theorem}{\mcm@cap@theorem}
|
|
|
+\newtheorem{lemma}{\mcm@cap@lemma}
|
|
|
+\newtheorem{corollary}{\mcm@cap@corollary}
|
|
|
+\newtheorem{assumption}{\mcm@cap@assumption}
|
|
|
+\newtheorem{conjecture}{\mcm@cap@conjecture}
|
|
|
+\newtheorem{axiom}{\mcm@cap@axiom}
|
|
|
+\newtheorem{principle}{\mcm@cap@principle}
|
|
|
+\newtheorem{problem}{\mcm@cap@problem}
|
|
|
+\newtheorem{example}{\mcm@cap@example}
|
|
|
+\newtheorem{proof}{\mcm@cap@proof}
|
|
|
+\newtheorem{solution}{\mcm@cap@solution}
|
|
|
+
|
|
|
+% 浮动环境设置
|
|
|
+% 默认情况下, \LaTeX{} 要求每页的文字至少占据 20%,否则该页就只单独放置一个浮动环境,
|
|
|
+% 而这通常不是我们想要的, 我们将这个要求降低到 5%.
|
|
|
+ \renewcommand*{\textfraction}{0.05}
|
|
|
+% 有时如果多个浮动环境连续放在一起, \LaTeX{}
|
|
|
+% 会将它们分在几个不同页,即使它们可在同一页放
|
|
|
+% 得下. 我们可以通过修改 |\topfraction| 和 |\bottomfraction| 分别设置顶端和底端的浮
|
|
|
+% 动环境的最大比例.
|
|
|
+ \renewcommand*{\topfraction}{0.9}
|
|
|
+ \renewcommand*{\bottomfraction}{0.8}
|
|
|
+% 有时\LaTeX{}会把一个浮动环境单独放在一页,
|
|
|
+% 我们要求这个环境至少要占据 85% 才能单独放在一页.
|
|
|
+% 注意: |\floatpagefraction| 的数值必须小于 |\topfraction|.
|
|
|
+ \renewcommand*{\floatpagefraction}{0.85}
|
|
|
+% 关于图片 graphicx
|
|
|
+ % 如果图片没有指定后缀, 依次按下列顺序搜索
|
|
|
+\DeclareGraphicsExtensions{.pdf,.eps,.jpg,.png}
|
|
|
+ % 设置图表搜索路径, 可以给图表文件夹取如下名字
|
|
|
+\graphicspath{{figures/}{figure/}{pictures/}%
|
|
|
+ {picture/}{pic/}{pics/}{image/}{images/}}
|
|
|
+% 图表标题
|
|
|
+\DeclareCaptionFont{song}{\songti}
|
|
|
+\DeclareCaptionFont{minusfour}{\zihao{-4}}
|
|
|
+\captionsetup[figure]{%
|
|
|
+ format=hang, % 标题从第二行开始都有缩进, 应该和 justification=raggedright 的效果一样.
|
|
|
+ labelsep=quad, % 分隔符是一个空格
|
|
|
+ font={song,minusfour,bf}, % 图的字体, 宋体小四
|
|
|
+ position=bottom % position=bottom, 不代表标题放在下面, 标题仍放在你放\caption的位置.
|
|
|
+}
|
|
|
+\captionsetup[table]{%
|
|
|
+ format=hang, % 标题从第二行开始都有缩进, 应该和 justification=raggedright 的效果一样.
|
|
|
+ labelsep=quad, % 分隔符是一个空格
|
|
|
+ font={song,minusfour,bf}, % 表的字体, 宋体小四
|
|
|
+ position=top % position=bottom, 不代表标题放在下面, 标题仍放在你放\caption的位置.
|
|
|
+}
|
|
|
+% 列表环境设置
|
|
|
+\setlist{%
|
|
|
+ topsep=0.3em, % 列表顶端的垂直空白
|
|
|
+ partopsep=0pt, % 列表环境前面紧接着一个空白行时其顶端的额外垂直空白
|
|
|
+ itemsep=0ex plus 0.1ex, % 列表项之间的额外垂直空白
|
|
|
+ parsep=0pt, % 列表项内的段落之间的垂直空白
|
|
|
+ leftmargin=1.5em, % 环境的左边界和列表之间的水平距离
|
|
|
+ rightmargin=0em, % 环境的右边界和列表之间的水平距离
|
|
|
+ labelsep=0.5em, % 包含标签的盒子与列表项的第一行文本之间的间隔
|
|
|
+ labelwidth=2em % 包含标签的盒子的正常宽度;若实际宽度更宽,则使用实际宽度。
|
|
|
+}
|
|
|
+
|
|
|
+% 超链接
|
|
|
+ \hypersetup{%
|
|
|
+% xetex,
|
|
|
+ % unicode=false, % hyperref 和 xetex 同时使用时不能开启 Unicode 选项.
|
|
|
+ pdfstartview=FitH,
|
|
|
+ CJKbookmarks=true,
|
|
|
+ bookmarksnumbered=true,
|
|
|
+ bookmarksopen=true,
|
|
|
+ colorlinks, %注释掉此项则交叉引用为彩色边框(将colorlinks和pdfborder同时注释掉)
|
|
|
+ pdfborder=001, %注释掉此项则交叉引用为彩色边框
|
|
|
+ allcolors=black,
|
|
|
+ breaklinks=true}%
|
|
|
+% \if@mcm@bwprint
|
|
|
+% \AtBeginDocument{\hypersetup{hidelinks}}
|
|
|
+% \else\relax\fi
|
|
|
+\pdfstringdefDisableCommands{%
|
|
|
+ \def\cftdotfill{ }%
|
|
|
+}
|
|
|
+\lstnewenvironment{tcode}
|
|
|
+ {
|
|
|
+ \lstset{basicstyle = \small\ttfamily,
|
|
|
+ language=TeX,
|
|
|
+ tabsize = 4,
|
|
|
+ frame = single,
|
|
|
+ escapechar = `,
|
|
|
+ breaklines = true,
|
|
|
+ breakatwhitespace = true,
|
|
|
+ frameround = tttt,
|
|
|
+ }
|
|
|
+ }
|
|
|
+ {}
|
|
|
+%%% crefformat settings
|
|
|
+\crefformat{figure}{#2图~#1#3}
|
|
|
+\crefrangeformat{figure}{图~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{figure}{图~(#2#1#3)}{和~(#2#1#3)}{,(#2#1#3)}{和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{table}{#2表#1#3}
|
|
|
+\crefrangeformat{table}{表(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{table}{表~(#2#1#3)}{和~(#2#1#3)}{,(#2#1#3)}{和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{equation}{#2~(#1#3)}
|
|
|
+\crefrangeformat{equation}{~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{equation}{~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{definition}{#2\mcm@cap@definition~#1#3}
|
|
|
+\crefrangeformat{definition}{\mcm@cap@definition~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{definition}{\mcm@cap@definition~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{theorem}{#2\mcm@cap@theorem~#1#3}
|
|
|
+\crefrangeformat{theorem}{\mcm@cap@theorem~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{theorem}{\mcm@cap@theorem~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{lemma}{#2\mcm@cap@lemma~#1#3}
|
|
|
+\crefrangeformat{lemma}{\mcm@cap@lemma~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{lemma}{\mcm@cap@lemma~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{corollary}{#2\mcm@cap@corollary~#1#3}
|
|
|
+\crefrangeformat{corollary}{\mcm@cap@corollary~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{corollary}{\mcm@cap@corollary~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{assumption}{#2\mcm@cap@assumption~#1#3}
|
|
|
+\crefrangeformat{assumption}{\mcm@cap@assumption~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{assumption}{\mcm@cap@assumption~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{conjecture}{#2\mcm@cap@conjecture~#1#3}
|
|
|
+\crefrangeformat{conjecture}{\mcm@cap@conjecture~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{conjecture}{\mcm@cap@conjecture~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{axiom}{#2\mcm@cap@axiom~#1#3}
|
|
|
+\crefrangeformat{axiom}{\mcm@cap@axiom~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{axiom}{\mcm@cap@axiom~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{principle}{#2\mcm@cap@principle~#1#3}
|
|
|
+\crefrangeformat{principle}{\mcm@cap@principle~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{principle}{\mcm@cap@principle~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{problem}{#2\mcm@cap@problem~#1#3}
|
|
|
+\crefrangeformat{problem}{\mcm@cap@problem~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{problem}{\mcm@cap@problem~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{example}{#2\mcm@cap@example~#1#3}
|
|
|
+\crefrangeformat{example}{\mcm@cap@example~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{example}{\mcm@cap@example~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{proof}{#2\mcm@cap@proof~#1#3}
|
|
|
+\crefrangeformat{proof}{\mcm@cap@proof~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{proof}{\mcm@cap@proof~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+
|
|
|
+\crefformat{solution}{#2\mcm@cap@solution~#1#3}
|
|
|
+\crefrangeformat{solution}{\mcm@cap@solution~(#3#1#4)\;\~{}\;(#5#2#6)}
|
|
|
+\crefmultiformat{solution}{\mcm@cap@solution~(#2#1#3)}{ 和~(#2#1#3)}{,(#2#1#3)}{ 和~(#2#1#3)}
|
|
|
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
+
|
|
|
+%% Document Markup
|
|
|
+
|
|
|
+% 生成封面, 使用\maketitle
|
|
|
+\renewcommand{\maketitle}{\par
|
|
|
+ \begingroup
|
|
|
+ \newpage
|
|
|
+ \global\@topnum\z@ % Prevents figures from going at top of page.
|
|
|
+ \@maketitle
|
|
|
+ \endgroup
|
|
|
+ \global\let\thanks\relax
|
|
|
+ \global\let\maketitle\relax
|
|
|
+ \global\let\@maketitle\relax
|
|
|
+ \global\let\@thanks\@empty
|
|
|
+ \global\let\@author\@empty
|
|
|
+ \global\let\@date\@empty
|
|
|
+ \global\let\@title\@empty
|
|
|
+ \global\let\title\relax
|
|
|
+ \global\let\author\relax
|
|
|
+ \global\let\date\relax
|
|
|
+ \global\let\and\relax
|
|
|
+}
|
|
|
+\def\@maketitle{%
|
|
|
+ \newpage
|
|
|
+ \if@mcm@preface
|
|
|
+ \null
|
|
|
+ % 承诺书
|
|
|
+ \vskip2ex
|
|
|
+ \thispagestyle{empty}
|
|
|
+ {\zihao{4}\noindent\mcm@commit@string@headname\\[-8pt]
|
|
|
+ \noindent\rule[5pt]{\textwidth-1.34em}{.5pt}\par}
|
|
|
+ \begin{center}%
|
|
|
+ {\zihao{-3}\bfseries\heiti \mcm@commit@string@titlea \par}%
|
|
|
+ {\vskip1ex\zihao{3}\bfseries\songti \mcm@commit@string@titleb \par}
|
|
|
+ \end{center}
|
|
|
+ {\zihao{-4} \mcm@commit@string@contents \par}
|
|
|
+ {\vskip1ex\zihao{-4}
|
|
|
+ \renewcommand{\ULthickness}{0.4pt}\setlength{\ULdepth}{2pt}
|
|
|
+ \hspace*{2em}\mcm@commit@string@problemnum\uline{\mbox{\kern1em}\mcm@tokens@tihao\hfill}\makebox[0.66em]{}\par
|
|
|
+ \mcm@commit@string@signupnum\uline{\mbox{\kern1em}\mcm@tokens@baominghao\hfill}\makebox[0.66em]{}\par
|
|
|
+ \mcm@commit@string@schoolname\uline{\hfill\mcm@tokens@schoolname\hfill}\makebox[0.66em]{}\par
|
|
|
+ \newlength{\mcm@lenB}
|
|
|
+ \settowidth{\mcm@lenB}{\mcm@commit@string@membername\mbox{\hspace{1em}}1.}
|
|
|
+ \setlength{\mcm@lenB}{\textwidth-\mcm@lenB}
|
|
|
+ % 不这样做右边难以对齐!
|
|
|
+ \mcm@commit@string@membername
|
|
|
+ \begin{minipage}[t]{\mcm@lenB}
|
|
|
+ 1.\uline{\mbox{\kern1em}\mcm@tokens@membera\hfill} \makebox[0.46em]{}\par
|
|
|
+ 2.\uline{\mbox{\kern1em}\mcm@tokens@memberb\hfill} \makebox[0.46em]{}\par
|
|
|
+ 3.\uline{\mbox{\kern1em}\mcm@tokens@memberc\hfill} \makebox[0.46em]{}\par
|
|
|
+ \end{minipage}\par\vskip1ex
|
|
|
+ \mcm@commit@string@supervisorname\uline{\mbox{\hspace{1em}}\mcm@tokens@supervisor\hfill}\makebox[0.66em]{}\par
|
|
|
+ \hspace{0.1cm} ({\kaishu 指导教师签名意味着对参赛队的行为和论文的真实性负责})
|
|
|
+ %{\kaishu\mcm@commit@string@inform\par}
|
|
|
+ \vskip2ex
|
|
|
+ \newlength{\mcm@lenA}
|
|
|
+ \settowidth{\mcm@lenA}{请仔细核对,提交后将不再允许做任何修改。如}% 虽然"日期"刚好在"错误"下面, 但注意"日期"还会缩进, 所以要省去"填写""两字
|
|
|
+ \hspace*{\mcm@lenA}\mcm@commit@string@date\hspace{0.5em}\uline{\hfill\mbox{\kern1em}\mcm@tokens@yearinput\mbox{\kern1em}\hfill}%
|
|
|
+ \mcm@commit@string@year\uline{\hfill\mcm@tokens@monthinput\hfill}\mcm@commit@string@month%
|
|
|
+ \uline{\hfill\mcm@tokens@dayinput\hfill}\mcm@commit@string@day\makebox[1em]{}\par}
|
|
|
+ \vskip1ex
|
|
|
+ {\kaishu\bfseries\mcm@commit@string@inform\par}
|
|
|
+ \vfill
|
|
|
+ \null
|
|
|
+% 编号专用页
|
|
|
+ \else
|
|
|
+ \fi
|
|
|
+ \makeothertitle
|
|
|
+ }
|
|
|
+
|
|
|
+%% 定义 编号专用页
|
|
|
+\def\makeothertitle{%
|
|
|
+ \if@mcm@preface
|
|
|
+ \par
|
|
|
+\newpage
|
|
|
+\null
|
|
|
+\thispagestyle{empty}
|
|
|
+{\zihao{4}\noindent\begin{tabularx}{\textwidth}{cXcX@{}}
|
|
|
+\mcm@numberpage@string@headname & & \mcm@numberpage@string@allcountrynum&\\[-5pt]
|
|
|
+\mcm@numberpage@string@headnameb & &\mcm@numberpage@string@allcountrynumb&\\
|
|
|
+\cline{2-2}\cline{4-4}
|
|
|
+\end{tabularx}
|
|
|
+
|
|
|
+\vspace*{1.2em}
|
|
|
+
|
|
|
+\noindent\rule{\textwidth}{1pt}\par}
|
|
|
+\begin{center}
|
|
|
+{\zihao{4}\bfseries\heiti \mcm@numberpage@string@titlea\par}
|
|
|
+{\vskip1ex\zihao{3}\songti \bfseries\mcm@numberpage@string@titleb\par}
|
|
|
+\end{center}\par
|
|
|
+{%
|
|
|
+\zihao{4}
|
|
|
+\vskip3em
|
|
|
+\hspace*{2em}\mcm@numberpage@string@appraiselog
|
|
|
+\par
|
|
|
+\newlength{\mcm@lenC}
|
|
|
+\setlength{\mcm@lenC}{\textwidth-8.72em}
|
|
|
+\setlength{\mcm@lenC}{\mcm@lenC/6}
|
|
|
+\newlength{\mcm@lenD}
|
|
|
+\settoheight{\mcm@lenD}{\mcm@numberpage@string@reviewer}
|
|
|
+\setlength{\mcm@lenD}{\mcm@lenD+2em}
|
|
|
+\newlength{\mcm@lenF}
|
|
|
+\settoheight{\mcm@lenF}{\mcm@numberpage@string@remarks}
|
|
|
+\setlength{\mcm@lenF}{\mcm@lenF+2em}
|
|
|
+\newcolumntype{P}{@{}p{\mcm@lenC}@{}}
|
|
|
+\hspace*{1.5em}\begin{tabular}{|!{\hspace{4pt}}c!{\hspace{4pt}}|*{6}{P|}}
|
|
|
+ \hline
|
|
|
+ \rule{0pt}{\mcm@lenD}\raisebox{0.6em}[0pt][0pt]{\mcm@numberpage@string@reviewer} & & & & & & \\\cline{1-7}
|
|
|
+ \rule{0pt}{\mcm@lenF}\raisebox{0.6em}[0pt][0pt]{\mcm@numberpage@string@remarks} & & & & & & \\
|
|
|
+ \hline
|
|
|
+\end{tabular}\par
|
|
|
+\vskip5em
|
|
|
+\hspace*{2em}\mcm@numberpage@string@countrynum}
|
|
|
+
|
|
|
+\vfill
|
|
|
+{\zihao{-4}\kaishu\bfseries\mcm@numberpage@string@inform\par}
|
|
|
+
|
|
|
+\null
|
|
|
+\newpage
|
|
|
+\null
|
|
|
+\setcounter{page}{1}
|
|
|
+{\centering \zihao{3}\bfseries \@title\par}
|
|
|
+\vskip1ex
|
|
|
+\else
|
|
|
+\setcounter{page}{1}
|
|
|
+{\centering \zihao{3}\bfseries \@title\par}
|
|
|
+\vskip1ex
|
|
|
+\fi
|
|
|
+}
|
|
|
+
|
|
|
+% 中文标题名称设置
|
|
|
+\renewcommand\contentsname{\mcm@cap@contentsname}
|
|
|
+\renewcommand\listfigurename{\mcm@cap@listfigurename}
|
|
|
+\renewcommand\listtablename{\mcm@cap@listtablename}
|
|
|
+\renewcommand\refname{\mcm@cap@refname}
|
|
|
+\renewcommand\indexname{\mcm@cap@indexname}
|
|
|
+\renewcommand\figurename{\mcm@cap@figurename}
|
|
|
+\renewcommand\tablename{\mcm@cap@tablename}
|
|
|
+\renewcommand\appendixname{\mcm@cap@appendixname}
|
|
|
+\renewcommand\abstractname{\mcm@cap@abstractname}
|
|
|
+
|
|
|
+% 中文标题格式设置
|
|
|
+% 目录深度
|
|
|
+\setcounter{secnumdepth}{3}
|
|
|
+% 节标题格式, 居中, 使用\chinese命令修改计数器
|
|
|
+\def\@seccntformat#1{\csname the#1\endcsname\ }
|
|
|
+\renewcommand\thesection{\chinese{section}、}
|
|
|
+\renewcommand\thesubsection{\arabic{section}\thinspace.\thinspace\arabic{subsection}}
|
|
|
+\renewcommand\thesubsubsection{\thesubsection\thinspace.\thinspace\arabic{subsubsection}}
|
|
|
+\renewcommand\section{\@startsection{section}{1}{\z@}%
|
|
|
+ {-3.5ex \@plus -1ex \@minus -.2ex}%
|
|
|
+ {2.3ex \@plus.2ex}%
|
|
|
+ {\centering\normalfont\Large\bfseries}}
|
|
|
+\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
|
|
|
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
|
|
|
+ {1.5ex \@plus .2ex}%
|
|
|
+ {\normalfont\large\bfseries}}
|
|
|
+\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
|
|
|
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
|
|
|
+ {1.5ex \@plus .2ex}%
|
|
|
+ {\normalfont\normalsize\bfseries}}
|
|
|
+\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
|
|
|
+ {3.25ex \@plus1ex \@minus.2ex}%
|
|
|
+ {-1em}%
|
|
|
+ {\normalfont\normalsize\bfseries}}
|
|
|
+\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
|
|
|
+ {3.25ex \@plus1ex \@minus .2ex}%
|
|
|
+ {-1em}%
|
|
|
+ {\normalfont\normalsize\bfseries}}
|
|
|
+
|
|
|
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
+%% Define new environment and command
|
|
|
+%% 摘要两个字设置为 4 号.
|
|
|
+%% 定义摘要环境
|
|
|
+\renewenvironment{abstract}{%
|
|
|
+\if@twocolumn
|
|
|
+ \section*{\abstractname}%
|
|
|
+ \else
|
|
|
+ \begin{center}%
|
|
|
+ {\zihao{4}\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}%
|
|
|
+ \end{center}%
|
|
|
+ \quotation
|
|
|
+ \fi}
|
|
|
+ {\if@twocolumn\else\endquotation\newpage\null\fi}
|
|
|
+\renewenvironment{quotation}
|
|
|
+ {\list{}{\listparindent 2em%
|
|
|
+ \itemindent \listparindent
|
|
|
+ \rightmargin\z@
|
|
|
+ \leftmargin\z@
|
|
|
+ \parsep \z@ \@plus\p@}%
|
|
|
+ \item\relax}
|
|
|
+ {\endlist}
|
|
|
+
|
|
|
+\newcommand\keywords[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@keywords}{#1}
|
|
|
+ \par
|
|
|
+ \vskip1ex
|
|
|
+ {\noindent\zihao{-4}\heiti\mcm@cap@keywordsname:}~{\mcm@tokens@keywords}
|
|
|
+ }
|
|
|
+% 定义附录
|
|
|
+
|
|
|
+% \renewcommand{\setthesection}{\appendixname\Alph{section}}
|
|
|
+% \renewcommand\appendix{\par
|
|
|
+ % \setcounter{section}{0}%
|
|
|
+ % \setcounter{subsection}{0}%
|
|
|
+ % \gdef\thesection{\appendixname\@Alph\c@section}}
|
|
|
+% 重定义参考文献环境
|
|
|
+\renewenvironment{thebibliography}[1]
|
|
|
+ {\section*{\refname}%
|
|
|
+ \@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}%
|
|
|
+ \list{\@biblabel{\@arabic\c@enumiv}}%
|
|
|
+ {\settowidth\labelwidth{\@biblabel{#1}}%
|
|
|
+ \leftmargin\labelwidth
|
|
|
+ \advance\leftmargin\labelsep
|
|
|
+ \@openbib@code
|
|
|
+ \usecounter{enumiv}%
|
|
|
+ \let\p@enumiv\@empty
|
|
|
+ \renewcommand\theenumiv{\@arabic\c@enumiv}}%
|
|
|
+ \sloppy
|
|
|
+ \clubpenalty4000
|
|
|
+ \@clubpenalty \clubpenalty
|
|
|
+ \widowpenalty4000%
|
|
|
+ \sfcode`\.\@m}
|
|
|
+ {\def\@noitemerr
|
|
|
+ {\@latex@warning{Empty `thebibliography' environment}}%
|
|
|
+ \endlist}
|
|
|
+
|
|
|
+\newcommand*\tihao[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@tihao}{#1}}
|
|
|
+\newcommand*\baominghao[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@baominghao}{#1}}
|
|
|
+\newcommand*\schoolname[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@schoolname}{#1}}
|
|
|
+\newcommand*\membera[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@membera}{#1}}
|
|
|
+\newcommand*\memberb[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@memberb}{#1}}
|
|
|
+\newcommand*\memberc[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@memberc}{#1}}
|
|
|
+\newcommand*\supervisor[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@supervisor}{#1}}
|
|
|
+\newcommand*\yearinput[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@yearinput}{#1}}
|
|
|
+\newcommand*\monthinput[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@monthinput}{#1}}
|
|
|
+\newcommand*\dayinput[1]{%
|
|
|
+ \renewcommand{\mcm@tokens@dayinput}{#1}}
|
|
|
+
|
|
|
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
+
|
|
|
+%% Initialization
|
|
|
+ %%%数学定理相关的常量
|
|
|
+\newcommand*{\mcm@cap@definition}{定义}
|
|
|
+\newcommand*{\mcm@cap@theorem}{定理}
|
|
|
+\newcommand*{\mcm@cap@lemma}{引理}
|
|
|
+\newcommand*{\mcm@cap@corollary}{推论}
|
|
|
+\newcommand*{\mcm@cap@assumption}{假设}
|
|
|
+\newcommand*{\mcm@cap@conjecture}{猜想}
|
|
|
+\newcommand*{\mcm@cap@axiom}{公理}
|
|
|
+\newcommand*{\mcm@cap@principle}{定律}
|
|
|
+\newcommand*{\mcm@cap@problem}{问题}
|
|
|
+\newcommand*{\mcm@cap@example}{例}
|
|
|
+\newcommand*{\mcm@cap@proof}{证明}
|
|
|
+\newcommand*{\mcm@cap@solution}{解}
|
|
|
+ %%% 中文标题名称
|
|
|
+\newcommand*{\mcm@cap@contentsname}{目录}
|
|
|
+\newcommand*{\mcm@cap@listfigurename}{插图清单}
|
|
|
+\newcommand*{\mcm@cap@listtablename}{附表清单}
|
|
|
+\newcommand*{\mcm@cap@refname}{参考文献}
|
|
|
+\newcommand*{\mcm@cap@indexname}{索引}
|
|
|
+\newcommand*{\mcm@cap@figurename}{图}
|
|
|
+\newcommand*{\mcm@cap@tablename}{表}
|
|
|
+\newcommand*{\mcm@cap@appendixname}{附录}
|
|
|
+\newcommand*{\mcm@cap@abstractname}{摘要}
|
|
|
+ %%% 中文关键字
|
|
|
+\newcommand*{\mcm@cap@keywordsname}{关键字}
|
|
|
+
|
|
|
+ %%% 承诺书中的常量
|
|
|
+\newcommand*\mcm@commit@string@headname{赛区评阅编号(由赛区组委会填写):}
|
|
|
+\newcommand*\mcm@commit@string@titlea{\the\year 高教社杯全国大学生数学建模竞赛}
|
|
|
+\newcommand*\mcm@commit@string@titleb{承\hspace{1em}诺\hspace{1em}书}
|
|
|
+\newcommand\mcm@commit@string@contents{\quotation
|
|
|
+我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称 “竞赛章程和参赛规则”,可从http://www.mcm.edu.cn下载)。
|
|
|
+
|
|
|
+我们完全清楚,在竞赛开始后参赛队员不能以任何方式,包括电话、电子邮件、“贴吧”、QQ群、微信群等,与队外的任何人(包括指导教师)交流、讨论与赛题有关的问题;无论主动参与讨论还是被动接收讨论信息都是严重违反竞赛纪律的行为。
|
|
|
+
|
|
|
+我们完全清楚,在竞赛中必须合法合规地使用文献资料和软件工具,不能有任何侵犯知识产权的行为。否则我们将失去评奖资格,并可能受到严肃处理。
|
|
|
+
|
|
|
+{\bfseries\song 我们以中国大学生名誉和诚信郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。}
|
|
|
+
|
|
|
+我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
|
|
|
+\endquotation
|
|
|
+}
|
|
|
+\newcommand*\mcm@commit@string@problemnum{我们参赛选择的题号(从A/B/C/D/E中选择一项填写):}
|
|
|
+\newcommand*\mcm@commit@string@signupnum{我们的报名参赛队号(12位数字全国统一编号):}
|
|
|
+\newcommand*\mcm@commit@string@schoolname{参赛学校(完整的学校全称,不含院系名):}
|
|
|
+\newcommand*\mcm@commit@string@membername{参赛队员 (打印并签名) :}
|
|
|
+\newcommand*\mcm@commit@string@supervisorname{指导教师或指导教师组负责人 (打印并签名):}
|
|
|
+\newcommand\mcm@commit@string@inform{\quotation
|
|
|
+\noindent{(\bfseries\kai 请勿改动此页内容和格式。此承诺书打印签名后作为纸质论文的封面,注意电子版论文中不得出现此页。%
|
|
|
+以上内容请仔细核对,如填写错误,论文可能被取消评奖资格。)}
|
|
|
+\endquotation
|
|
|
+}
|
|
|
+\newcommand*\mcm@commit@string@date{日期:}
|
|
|
+\newcommand*\mcm@commit@string@year{年}
|
|
|
+\newcommand*\mcm@commit@string@month{月}
|
|
|
+\newcommand*\mcm@commit@string@day{日}
|
|
|
+\newcommand*\mcm@commit@string@appraisenum{赛区评阅编号(由赛区组委会评阅前进行编号):}
|
|
|
+
|
|
|
+ %%% 编号专用页中的常量
|
|
|
+\newcommand*\mcm@numberpage@string@headname{赛区评阅编号:}
|
|
|
+\newcommand*\mcm@numberpage@string@headnameb{(由赛区填写)}
|
|
|
+\newcommand*\mcm@numberpage@string@allcountrynum{全国评阅编号:}
|
|
|
+\newcommand*\mcm@numberpage@string@allcountrynumb{(全国组委会填写)}
|
|
|
+\newcommand*\mcm@numberpage@string@titlea{\the\year 高教社杯全国大学生数学建模竞赛}
|
|
|
+\newcommand*\mcm@numberpage@string@titleb{编\hspace{.5em}号\hspace{.5em}专\hspace{.5em}用\hspace{.5em}页}
|
|
|
+\newcommand*\mcm@numberpage@string@appraiselog{赛区评阅记录(可供赛区评阅时使用):}
|
|
|
+\newcommand\mcm@numberpage@string@reviewer{\shortstack{评\\ 阅\\ 人}}
|
|
|
+\newcommand\mcm@numberpage@string@remarks{\shortstack{备\\ 注}}
|
|
|
+
|
|
|
+
|
|
|
+\newcommand*\mcm@numberpage@string@countrynum{送全国评阅统一编号:\par \hspace*{2em}(赛区组委会填写)}
|
|
|
+\newcommand\mcm@numberpage@string@inform{\quotation
|
|
|
+\noindent({\bfseries\kai 请勿改动此页内容和格式。此编号专用页仅供赛区和全国评阅使用,参赛队打印后装订到纸质论文的第二页上。
|
|
|
+注意电子版论文中不得出现此页。})
|
|
|
+\endquotation
|
|
|
+}
|
|
|
+%设置目录格式
|
|
|
+% 节的目录格式
|
|
|
+% \titlecontents{section}[0pt]{\vspace{2mm}\bfseries}
|
|
|
+% {\thecontentslabel\hskip.5em}{}{\titlerule*[0.5pc]{.}\contentspage}
|
|
|
+% % 小节的目录格式
|
|
|
+% \titlecontents{subsection}[30pt]{\songti}
|
|
|
+% {\thecontentslabel\hskip.5em}{}{\titlerule*[0.5pc]{.}\contentspage}
|
|
|
+% \titlecontents{subsubsection}[55pt]{\songti}
|
|
|
+% {\thecontentslabel\hskip.5em}{}{\titlerule*[0.5pc]{.}\contentspage}
|
|
|
+
|
|
|
+% 上标文献
|
|
|
+\newcommand{\upcite}[1]{$^{\mbox{\scriptsize \cite{#1}}}$}
|
|
|
+\newcommand{\supercite}[1]{\textsuperscript{\textsuperscript{\cite{#1}}}}
|
|
|
+\endinput
|