模板类型

这是一个中文 article 模板,是我日常用来做题用的,也可以用来做点笔记,至于为什么不制作成 book 模板,当然是因为技术力不够(哭)。同时模板不支持侧栏备注。

字体

模板内置中文字体为思源宋体与思源黑体,英文衬线字体为 HGB5X_CNKI ,英文等宽字体为 Fira Code,如果没有这些字体的话可以将模板文件中的这几行删去,如果要安装可以上网搜索,这些字体除 HGB5X_CNKIwin10自带以外都是开源字体,可以免费下载。(下载的ttf,otf文件一定要右键然后选择给全体用户安装)

1
2
3
\setCJKmainfont[BoldFont={NotoSansCJKsc-Medium.otf}]{NotoSerifCJKsc-Regular.otf}
\setmainfont{HGB5X_CNKI} %衬线字体
\setmonofont{Fira Code} %等宽字体,一般是打印机字体(中文都是等宽的)

模板的一些默认设置

1
2
3
\pagestyle{plain}
\everymath{\displaystyle} % 行内公式使用行间公式字体
\RequirePackage{mathpazo} % 数学字体,注释掉就是默认的 mtpro2

模板的数学环境设置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
% 数学环境, 定理等设置
\newtheorem{definition}{\gmcm@cap@definition}
\newtheorem{theorem}{\gmcm@cap@theorem}
\newtheorem{lemma}{\gmcm@cap@lemma}
\newtheorem{property}{\gmcm@cap@property}
\newtheorem{corollary}{\gmcm@cap@corollary}
\newtheorem{assumption}{\gmcm@cap@assumption}
\newtheorem{problem}{\gmcm@cap@problem}
\newtheorem{example}{\gmcm@cap@example}

%数学定理相关的常量
\newcommand*{\gmcm@cap@definition}{\color{f8766d}\makebox[-3pt][r]{$\clubsuit$}定义}
\newcommand*{\gmcm@cap@theorem}{\color{2a7ae2}\makebox[-3pt][r]{$\heartsuit$}定理}
\newcommand*{\gmcm@cap@lemma}{\color{1a9850}$ \Square $引理}
\newcommand*{\gmcm@cap@property}{\color{ffa725}$ \bigstar $性质}
\newcommand*{\gmcm@cap@corollary}{\color{1a9850}$ \Square $推论}
\newcommand*{\gmcm@cap@assumption}{\color{6a3d9a}$ \Square $猜想}
\newcommand*{\gmcm@cap@problem}{\color{53a9ab}\makebox[-3pt][r]{\PencilRightDown\quad}题}
\newcommand*{\gmcm@cap@example}{\color{53a9ab}$ \Square $例}

设置了一些环境的字体的颜色与前缀标签,如

预览

模板的代码环境

模板使用了两种代码环境

  • 通过 lstlisting 宏包
1
2
3
4
5
6
\begin{lstlisting}[language=C]
int main(int argc, char ** argv){
printf("Hello world!\n");
return 0;
}
\end{lstlisting}
预览

对大部分语言代码提供了高亮,且支持行内代码段,有兴趣可以自己查看 listings宏包的说明文档,查看方式为在 cmd 中输入 texdoc listings

  • 通过 tcolorbox 宏包定制的带盒子的代码块,同时提供了 mycode 环境可以在底下写注释,两个环境均支持中文。其具有更多的高亮,但是不支持行内模式。
1
2
3
4
5
6
\begin{code}{cpp}{test}
int main(int argc, char ** argv){
printf("Hello world!\n");
return 0;
}
\end{code}
预览

注意: 此环境需要构建minted 环境支持,即需要有 python 才能正常使用,否则会报错。若不愿构建支持,在 touko.cls 文件中注释 % 1.导入代码样式宏包 ,选择 minted 引擎 的部分,启用 %2.使用listings宏包,此处只使用其行内代码功能。 之后的被注释的内容即可。

minted 环境 搭建教程

参考文献环境

参考文献使用了 gbt7714 宏包,详情可以查看其说明文档(是中文哦),方法与 listings 相同

常规功能

插图,长公式自动断行,强制表格位置,长表格(跨页),三线表(可设计表头与表尾),多图并排放置,表格中跨行,下划线, \(\mathbb{R}\) ,超链接,首行缩进 等的相关宏包均有配置。

一些特殊功能/宏包

1
2
3
4
5
6
7
8
9
10
11
12
13
14
\newcommand{\md}[1]{{\color{purple}#1}} % 定义了一个将文字变成紫色的指令,使用方法为\md{你要染色的文字}

\usepackage{extarrows} % 定义了可加长箭头(可以在箭头上下写字),包括
%\xleftarrows,\xrightarrow,\xlongleftarrow,\xlongrightarrow,
%\xLongleftarrow,\xLongrightarrow,\xleftrightarrow,
%\xLeftrightarrow,\xlongleftrightarrow,\xLongleftrightarrow
%\xlongequal 这个是长等号

\usepackage{bbding} % 一些可爱的图标

% 关于图片宏包graphicx,如果图片没有指定后缀, 依次按下列顺序搜索
\DeclareGraphicsExtensions{.pdf,.eps,.jpg,.png}
% 设置图表搜索路径, 可以给图表文件夹取如下名字
\graphicspath{{figures/}{figure/}{pictures/}{picture/}{pic/}{pics/}{image/}{images/}}

结束

第一次制作 \(\LaTeX\) 模板,有很多地方处理不到位,注释写的还算详细,希望大家用的时候也依照自身需求修改吧。

下载链接

touko.cls

评论