一、软件下载与环境配置
1、下载texlive
下载用于启动和运行Tex文件:Index of /CTAN/systems/texlive/Images/ (cqu.edu.cn)
2、安装texlive
教程参考Visual Studio Code (vscode)配置LaTeX - 知乎 (zhihu.com)
3、修改系统环境变量
注意:一定要配置环境,否则在visual studio code中编译时会失败报错latexmk: The Perl interpreter could not be found.
4、Visual Studio Code相关设置
Visual studio code 的中文汉化、LaTeX workshop安装等也参考教程:Visual Studio Code (vscode)配置LaTeX - 知乎 (zhihu.com)。注意更改setting.json文件!
二、Latex常用语法以及问题解决
1、模板
模板中,用于PDF显示的内容使用了{}括起来,需要输入自己文本内容的部分使用<>括起来,删除<>后在{}内输入即可。
2、常用语法
- latex语言中,%,%%是注释的意思,如果文本内容中想要显示“%”的话,需要输入“\%”
- 章节层次:\section{<>} \subsection{<>} \subsubsection{<>}
- 字母倾斜:\emph{<>}
- 上角标:A$^{B}$表示,多位角标用{}括起来
- 下角标:$A_{B,C}$表示
- 上下角标:A_{B}^C=
- 段落换行:段落之间多空一行即可达到
- 报错Underfull \hbox:文本内容溢出边界,可对指定段落文字使用\begin{sloppypar} \end{sloppypar}进行强制两端对齐处理即可。
- Latex中行文中的公式需要使用$公式$括起来;行文中显示波浪线:$\sim$;行文中显示正负号:A $\pm{B}$=A±B;乘法:A\times{B} = A×B;集合于实数R:\in\mathbb{R} =
- 公式左对齐:在需要对齐的地方加上&即可
- Tex文件格式reformat方法:(66条消息) Win 下 VSCode 配置 LaTeX format 自动格式化_Anadem的博客-CSDN博客。然后右键格式化文档即可
- 报错:Size substitutions with differences (Font) up to 0.5pt have occurred.解决方法:添加宏包 \usepackage{lmodern}
- 多行快速注释:ctrl+?
- 调用bibtex参考文献:首先使用zotero导出完整的参考文献列表为better bibtex文件形式得到.bib文件,更改命名references.bib,与manuscript.tex文件放于同一个文件夹下;
%% Loading bibliography style file
%\bibliographystyle{model1-num-names}
\bibliographystyle{cas-model2-names} % 加载参考文献格式模型
% Loading bibliography database
\bibliography{references} %导入references.bib参考文献包
注意以上代码会自动生成Reference大标题,因此该段代码放置的位置应该位于文末最后一个章节,reference列表该出现的地方。
在文中引用参考文献的代码格式为:\cite{<参考文献标识符>},查看获取参考文献标识符的方法是:使用记事本打开references.bib文件
逗号前第一个字符串即为该文献的标识符,该标识符的命名规则在zotero的扩展better bibtex中可以设置,此处为第一作者名+文章简写+期刊+简写。
16. 报错:Package natbib: Bibliography not compatible with author-year citations. (natbib) Press <return> to continue in numerical citation style。解决方法:在.tex文件最前面加上:
\usepackage{natbib}
\setcitestyle{numbers,square}
17. 参考文献按照文中出现的顺序排序:下载unsrt.bst文件,将bibliographystyle设置为unsrt即可。
18. Latex中插入图片:第一步得到.eps格式的图片(visio绘制的图像需要先导出为pdf形式,然后使用Adobe Acrobat Pro DC软件查看PDF文件,选中一个图像->文件->导出到->内嵌式postscript->即可将PDF中每一页的一个图像(对应一个.vsdx文件中的一页)转换为一个单独的.eps文件。注意:eps文件插入到tex中图像白边的问题,解决方法有两个,一个是在visio文件中就将每一页的画布调整至图像大小再导出PDF,一个是使用Adobe acrobat Pro编辑PDF文件,裁剪->双击所选图像区域->勾选删除白边->确认,导出为postscript即可。
19. 图像问题:图像标题爱思唯尔模板显示非罗马字体的解决方法:解决图像表格标题字体不为新罗马字体的问题,将.sty文件中的sffamily全部换为rmfamily。图像标题label显示为Figure.改为Fig.的方法:在\begin{document}后面加上\captionsetup[figure]{labelfont={bf},labelformat={default},labelsep=period,name={Fig.}}语句,同时注意需要导入caption包\usepackage{caption}。图像标题说明中Fig.1:图例说明改为Fig.1.的方法:
20. 双栏文档跨栏显示图像:\begin{figure*},得是figure*。关于文中图片引用和显示问题:\ref{<figure label>}显示的是单独的图像序号超链接;\cref{<figure label>}显示的是Fig.图像序号超链接,注意此处需要导入宏包\usepackage[capitalise]{cleveref};\Cref{<figure label>}显示的是Figure.图像序号超链接。\cref与\label一起使用可以生成超链接,用于图像、公式、表格编号跳转,且会生成对应的Section、Eq.、Fig.等标号。
21. 复杂表格代码便捷生成方法:tex文件中导入\usepackage{bigstrut,multirow,rotating,booktabs} 表格插件,下载Excel2LaTeX.xla,双击Excel打开,启用宏,选中需要转为latex代码形式的表格内容,点击加载项,选择convert table to latex,取消option勾选的booktabs package,即可复制表格latex代码。表格大致成型(合并多行多列单元格等),具体的内容细节可再修改
22. 设置表格与文档文本内容同宽:将\begin{tabular}换为:\begin{tabular*}{\hsize}{@{}@{\extracolsep{\fill}}lllllllllllll@{}}即可,注意此时表格不能再设置单元格的列宽了,会自适应调整填充满。
23. 表格合并多行多列:\multicolumn{num}{col}{text}。其中num:指跨越的列数;num:指跨越的列数;num:指跨越的列数。
24. 关于表格换行,一般而言tabularx可以实现自动换行,但是仅限于没有multicolumn和multirow的情况,当制作表格有行列合并,且需要与文档文本同宽时,要对multicolumn的某个单元格进行换行,方法是:
\usepackage{makecell}
\multicolumn{合并列数}{对齐方式}{\makecell[对齐方式]{文本A \\文本B}}。
其中对齐方式有c/l/r三种,可实现将文本A和B换行左对齐。
子图插入与调用:插入包\usepackage{subcaption} \usepackage{cleveref}
使用\begin{subfigure}{0.325\linewidth} \end{subfigure}即可,在子图caption后使用\label{fig:sub1}即可使用\cref{fig:sub1}形式链接子图。
25. \section{}带序号;\section*{}不带序号,可用于文末利益冲突声明、伦理等信息章节
26. 解决公式后段落意外缩进的情况:
在公式后、段落前加上一个%即可
27. Latex中不能随意导入宏包,比如默认情况下表格标题位置位于表格上方左对齐,但是导入floatrow包后,就会置于表格下方居中了。
28. 运行一个完整的Latex文件需要以下文件内容:.tex、参考文献风格.bst、参考文献列表.bib、图片文件.eps,latex格式样式文件.cls和.sty文件。注意编译链的选择很重要,如果编译生成的PDF中参考文献显示?,则很可能是编译链的选择错误,应当使用xelatex->bibtex->xelatex*2
29. -无法显示报错:latex中字符U+2013“-”可能会与U+002d“-”混淆,解决方法:输入--
语法体验总结:Latex编译和python不太一样,python是自上而下,中间一个地方错了就会停止,但是latex背后的嵌套关系有些复杂,并非直接从上到下的,因此遇到编译显示PDF有问题的,先不用急,先把文档所有该有的部分填写完整后(特别是参考文献、作者信息之类的),所有的错误解决了再看问题。