ai_platform_report/linux_thesis.cls

215 lines
7.5 KiB
OpenEdge ABL
Raw Normal View History

2022-08-01 09:50:09 +08:00
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{linux_thesis}[]
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexbook}}
\ProcessOptions
%Minimum xeCJK version:3.2.10, date:2014/03/01
\PassOptionsToPackage{CJKchecksingle}{xeCJK}
%5
\LoadClass[c5size,a4paper,fancyhdr,fntef]{ctexbook}
%Chinese font size
\newcommand{\chuhao} {\fontsize{42pt} {\baselineskip}\selectfont}
\newcommand{\xiaochu} {\fontsize{36pt} {\baselineskip}\selectfont}
\newcommand{\xiaochuhao}{\fontsize{36pt} {\baselineskip}\selectfont}
\newcommand{\yihao} {\fontsize{28pt} {\baselineskip}\selectfont}
\newcommand{\erhao} {\fontsize{21pt} {\baselineskip}\selectfont}
\newcommand{\xiaoer} {\fontsize{18pt} {\baselineskip}\selectfont}
\newcommand{\xiaoerhao} {\fontsize{18pt} {\baselineskip}\selectfont}
\newcommand{\sanhao} {\fontsize{15.75pt}{\baselineskip}\selectfont}
\newcommand{\xiaosan} {\fontsize{15pt} {\baselineskip}\selectfont}
\newcommand{\xiaosanhao}{\fontsize{15pt} {\baselineskip}\selectfont}
\newcommand{\sihao} {\fontsize{14pt} {\baselineskip}\selectfont}
\newcommand{\xiaosi} {\fontsize{12pt} {\baselineskip}\selectfont}
\newcommand{\xiaosihao} {\fontsize{12pt} {\baselineskip}\selectfont}
\newcommand{\wuhao} {\fontsize{10.5pt} {\baselineskip}\selectfont}
\newcommand{\xiaowu} {\fontsize{9pt} {\baselineskip}\selectfont}
\newcommand{\xiaowuhao} {\fontsize{9pt} {\baselineskip}\selectfont}
\newcommand{\liuhao} {\fontsize{7.875pt}{\baselineskip}\selectfont}
\newcommand{\qihao} {\fontsize{5.25pt} {\baselineskip}\selectfont}
%===================================================================
%
%===================================================================
\RequirePackage{geometry} %
\geometry{left=25.4mm, right=25.4mm, top=25.4mm, bottom=25.4mm}
%
%\setlength{\parskip}{1.5ex plus0.5ex minus 0.5ex}
\setlength{\parskip}{0ex}
%
\pagestyle{fancy}
\fancyhf{}
\fancyhead[EL,OR]{\thepage}
\fancyhead[OC]{\nouppercase{\fangsong\rightmark}}
\fancyhead[EC]{\nouppercase{\fangsong\leftmark}}
%===================================================================
%===================================================================
%(ps:ctex使)
%===================================================================
\RequirePackage{titletoc}
\RequirePackage{titlesec}
\CTEXsetup[number={\arabic{chapter}}]{chapter}
\titleformat{\chapter}[display]
{\bfseries\Large}
{\filleft \Huge {\thechapter} }
{4ex}
{\titlerule
\vspace{2ex}%
\filright}
[\vspace{2ex}%
\titlerule]
\CTEXsetup[name={\S\,,}]{section}
\CTEXsetup[name={\S\,,}]{subsection}% \S
%\CTEXsetup[name={\S\,,}]{subsubsection}% \S
\CTEXsetup[format={\large\bfseries\flushleft}]{section}
\CTEXsetup[format={\bfseries\flushleft}]{subsection}
%===================================================================
%===================================================================
%
%===================================================================
\CTEXoptions[contentsname={\hfill \rule{\ccwd}{0pt} \hfill}] %
\titlecontents{chapter}[0em]
{\vspace{6bp}\sihao\bfseries}%14pt\bfseries
{\thecontentslabel\hspace*{0.5em}}
{}
{\titlerule*[0.5pc]{$\cdot$}\contentspage}
\titlecontents{section}[1.1\ccwd]
{\vspace{1bp} \xiaosi}
{\thecontentslabel\hspace*{0.5em}}
{}
{\titlerule*[0.5pc]{$\cdot$}\contentspage}
\titlecontents{subsection}[2.5\ccwd]%2.3
{\vspace{1bp} \wuhao}%10.5pt
{\thecontentslabel\hspace*{0.5em}}
{}
{\titlerule*[0.5pc]{$\cdot$}\contentspage}
%================================================================
%
\RequirePackage[oneline]{caption2}
\renewcommand{\captionlabeldelim}{\rule{\ccwd}{0pt}} %, :
\captionsetup{labelfont+={bf}} %
%\DeclareCaptionFont{cs4size}{\xiaosi}
%\captionsetup{labelfont={cs4size,bf}}
%\captionsetup{textfont=cs4size}
\makeatletter
\renewcommand{\thefigure}{\thesection-\@arabic\c@figure}
\renewcommand{\thetable}{\thesection-\@arabic\c@table}
\makeatother
\RequirePackage{enumitem} %
\setitemize{topsep=0pt} % itemize
\RequirePackage{mdwlist} %
%===================================================================
%
%===================================================================
\RequirePackage{longtable} %
%\setlength{\LTpre}{0pt} % longtable
%\setlength{\LTpost}{0pt} % longtable
\renewcommand{\arraystretch}{1.3} % longtable
\RequirePackage{booktabs} %线
%===================================================================
%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
\RequirePackage{fancyvrb}
\fvset{listparameters=\setlength\topsep{0pt}}
%===================================================================
%
%===================================================================
\RequirePackage{fancybox}
\RequirePackage{framed}
\usepackage{color}
% Redefine these colors to your liking in the preamble.
\definecolor{TitleColor}{rgb}{0.126,0.263,0.361}
\definecolor{InnerLinkColor}{rgb}{0.208,0.374,0.486}
\definecolor{OuterLinkColor}{rgb}{0.216,0.439,0.388}
% Redefine these colors to something if you want to have colored
% background and border for code examples.
\definecolor{VerbatimColor}{rgb}{0.933,0.933,0.933}
\definecolor{VerbatimBorderColor}{rgb}{1,1,1}
% Redefine the Verbatim environment to allow border and background colors.
% The original environment is still used for verbatims within tables.
\let\OriginalVerbatim=\Verbatim
\let\endOriginalVerbatim=\endVerbatim
\makeatletter
% Play with vspace to be able to keep the indentation.
\newlength\distancetoright
\def\mycolorbox#1{%
\setlength\distancetoright{\linewidth}%
\advance\distancetoright -\@totalleftmargin %
\fcolorbox{VerbatimBorderColor}{VerbatimColor}{%
\begin{minipage}{\distancetoright}%
#1
\end{minipage}%
}%
}
\def\FrameCommand{\mycolorbox}
\makeatother
\renewcommand{\Verbatim}[1][1]{%
\vspace{-1ex} %
% list starts new par, but we don't want it to be set apart vertically
\bgroup\parskip=0pt%
%\smallskip%
% The list environement is needed to control perfectly the vertical
% space.
\list{}{%
\setlength\parskip{0pt}%
\setlength\itemsep{0ex}%
\setlength\topsep{0ex}%
\setlength\partopsep{0pt}%
\setlength\leftmargin{0pt}%
}%
\item\MakeFramed {\FrameRestore}%
\small%
\OriginalVerbatim[#1]%
}
\renewcommand{\endVerbatim}{%
\endOriginalVerbatim%
\endMakeFramed%
\endlist%
% close group to restore \parskip
\egroup%
}
%===================================================================
\RequirePackage{wrapfig}
\RequirePackage{makecell}
%
\newcommand\mgape[1]{\gape{$\vcenter{\hbox{#1}}$}}
%
%\tabincell{c}{haha// heihei//zeze}
%\newcommand{\tabincell}[2]{\begin{tabular}{@{}#1@{}}#2\end{tabular}}
%\makecell[c]{haha \\ hehe}
\renewcommand\cellalign{tc}
%
\RequirePackage{titlepage/ManyTitlePage}
\RequirePackage{metalogo}
\endinput