cls编写常用内容
参考:
【LaTex】cls文件编写和使用入门
LaTeX中自定义命令renewcommand、newcommand 与providecommand的区别和使用方法
简单学习
- 重要的文件格式:
.tex
是写文档内容的文件,.bib
是bibligraphy方式导入参考文献时写参考文献的文档,.bbl
是前者编译后的文件,.sty
是用\usepackage
导入的包文件,.cls
是通过\documentclass
导入的类文件 - 常见的article类,可以通过
\usepackage[a4paper, 12pt]{article}
导入,文档尺寸A4,默认字体12pt - 定义command处理一些固定的内容:
语法:\newcommand{\<name>}[<num>]{<defination>}
,name是定义的命令名称,definition是命令的具体定义,参数num是可选的。在defination里用#1
,#2
等表示多个参数里的某个参数
比如,定义
\newcommand{\name}[1]{
\huge {\textbf{#1}}
}
用法就是\name{Zhang San}
多个参数就连用多个{}来传入参数
-
setcounter
设置页码:\setcounter{page}{2}
设置当前页码从2开始
设置目录深度:\setcounter{secnumdepth}{3}
设置目录显示深度
根据github上的信息边看边记录:
- 去除页码:
\pagestyle{empty}
从下一页开始到所有都不要页码,\thispagestyle{empty}
当前页不要页码 - 另起空白的新的一页:
\clearpage
- 字体,字体加粗
- 网上说的可能常用的格式包:
fancyhdr, titlesec
等宏包即可。或者可能ctexart
等
报错:
\underfull \hbox(badness 10000) detected at line
。用\makebox[7em][s]
的时候一直报错,后来发现这个报错的意思是排版太稀疏了= =。
坑点:
- 中文\textbf{}一直失败,搜了下发现是因为全局字体设置
\setCJKmainfont[AutoFakeBold=4 , AutoFakeSlant=0.167]{SimSun}
。注释掉就好了。 - xelatex编码中文,直接
\setCJKmainfont[AutoFakeBold=4 , AutoFakeSlant=0.167]{SimSun}
。用\textbf{}
就可以加粗。但是注意用字体的时候要用花括号包住,不然后面的代码加粗会失效。正确做法如{\songti\textbf{测试}}