又到一年毕业季,广大准毕业生都忙着撰写学位论文,有用Word写的,也有用$LaTeX$排版的。相对来说,我更喜欢用$LaTeX$排版,因为它对整个论文各个方面提供更精准的控制和更优美的排版效果。当然,$LaTeX$排版系统不像“所见即所得”的Word,要从零开始完全自己排版整个论文还需要花点时间和不熟悉的命令、机制等做斗争,好在网上也有很多资料和网友分享的学位论文模板可以利用参考。前几年,中科院对学位论文的格式似乎并没有很具体的要求,实验室学生也一直使用吴凌云开发的中科院学位论文模板CASthesis,一届传一届,相安无事。今年,中科院整理发布了“中国科学院大学研究生学位论文撰写规范指导意见”,其中对学位论文的各个方面都做了细致的规定。原来的CASthesis已经不好再用了,一是该模板和最新的规定不一致了,二是随着CTeX宏集的不断更新,在其基础上编写的CASthesis模板也已经过时了。
事实上,得益于同样是吴凌云等人开发的CTeX宏集,撰写符合要求的学位论文并不难,直接用CTeX宏集中提供的ctexbook文档类已经能排版出一篇优美的论文。为了撰写符合“中国科学院大学研究生学位论文撰写规范指导意见”要求的学位论文,只需要微调不多的一些配置即可,下面简述一些简单的修改。
一、整体结构
documentclass[UTF8,zihao=-4,a4paper,linespread=1.5,AutoFakeBold=0.6]{ctexbook} % 主要字号、行间距等 usepackage{calc} usepackage[top=1in,bottom=1in,inner=1.5in,outer=1.25in,head=1in-1.5cm-headsep]{geometry} % 页面设置 %%%%%%%%%%%%%%%%%%%%% % 这里包括使用的宏包和命令配置等 setCJKmainfont{SimSun} % 论文主要中文字体 setmainfont{Times New Roman} % 主要英文字体 %%%%%%%%%%%%%%%%%%%%% egin{document} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 封面部分 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% pagestyle{empty} % 中文封面 maketitle cleardoublepage % 英文封面 makeenglishtitle cleardoublepage % 学位论文独创性声明和版权使用授权说明 pagestyle{empty} include{statement} cleardoublepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 前言部分 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% frontmatter % 摘要 include{chapters/abstract} % 目录 ableofcontents % 表格目录 % listoftables % 插图目录 % listoffigures %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 正文部分 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% mainmatter include{chapters/chap1} include{chapters/chap2} include{chapters/chap3} % 附录 % appendix %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 附件部分 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ackmatter % 参考文献 % 使用 BibTeX % ibliographystyle{plain} % ibliography{bib/ref} % ocite{*} % 发表文章目录 % include{chapters/pub} % 个人简历 include{chapters/resume} % 致谢 % include{chapters/thanks} end{document}
二、页眉、页脚设置
除了一些没有页眉页脚的页面,整个论文主要包括两种页眉页脚:从摘要页到目录页部分一种,正文部分一种,下面分别配置:
% 从摘要页到目录页页眉页脚配置 usepackage{fancyhdr} fancypagestyle{frontmatter}{%定义新的页面样式 fancyhf{}% fancyhead[CO]{zihao{-5} ouppercase{leftmark}}% fancyhead[CE]{zihao{-5} Title}% fancyfoot[C]{zihao{-5} hepage}% enewcommand{headrulewidth}{0.4pt}% enewcommand{footrulewidth}{0pt}% } ewcommand{abstract}[1]{chaptermark{#1}chapter*{#1}} % 目录只显示正文部分,因此中英文摘要不编号,而chapter*不会设置chaptermark标记,所以要手动设置 setlength{headheight}{11pt} % fixes headheight warning
% 放置于正文部分前 pagestyle{fancy} fancyhf{} fancyhead[CO]{zihao{-5} leftmark} fancyhead[CE]{zihao{-5} Title} fancyfoot[RO,LE]{zihao{-5} hepage}
有几个问题:
1. 摘要页部分页码要求使用大写罗马数字,通过在摘要页前放如下代码修改:
pagestyle{frontmatter} % 使用新定义的样式 pagenumbering{Roman} % 页码使用大写罗马数字
2. $LaTeX$默认book文档类中每章的第一页比较特殊,使用plain页面样式,即chapter命令内部隐含 hispagestyle{plain}。论文要求是和其他页一样,ctexbook提供了配置接口:
ctexset{chapter/pagestyle=fancy}
或者也可以通过修改默认的plain样式fancypagestyle{plain}{...}来达到目的。
三、封面设置
ewcommand{TEXTunderline}[2][299pt]{uline{makebox[#1]{hfill#2hfill}}} enewcommandULthickness{1pt} % thickness of uline in ulem.sty % 中文封面 enewcommandmaketitle{% hispagestyle{empty} egin{center} vskip stretch{2} includegraphics[width=0.8 extwidth]{figures/ucas_logo.png} vskip stretch{1} {fseriesheitizihao{1}博士/硕士学位论文} vskip stretch{1.5} {fseriesheitizihao{-3}TEXTunderline{论文题目}} vskip stretch{1.5} zihao{4} defarraystretch{1.5} egin{tabular}{>{fseries}l>{fseries}l} 作者姓名: & TEXTunderline{作者} \ 指导教师: & TEXTunderline{导师} \ & TEXTunderline{单位} \ 学位类别: & TEXTunderline{学位} \ 学科专业: & TEXTunderline{专业} \ 培养单位: & TEXTunderline{培养单位} end{tabular} vskip stretch{2} {fseries oday} end{center} }
% 英文封面 ewcommandmakeenglishtitle{% hispagestyle{empty} egin{center} fseries vspace*{20pt} zihao{-3} TEXTunderline[299pt]{Research on xxxxx} vskip stretch{2} zihao{4} A dissertation submitted to \ University of Chinese Academy of Sciences \ in partial fulfillment of the requirement \ for the degree of \ Doctor/Master of Philosophy \[6ex] By \ Author Name \ Supervisor: Professor XXX vskip stretch{2} Institute of xxxxxx \ Chinese Academy of Sciences vskip 3pt June 2018 end{center} }
四、目录设置
usepackage{tocloft} ocloftpagestyle{frontmatter} setlength{cftbeforetoctitleskip}{24pt} setlength{cftaftertoctitleskip}{18pt} enewcommand{cfttoctitlefont}{hfillheitizihao{4}fseries} enewcommand{cftaftertoctitle}{hfill} % 使“目录”居中 %目录章标题格式 enewcommand{cftchapfont}{heitizihao{4}} setlength{cftchapindent}{0pt} setlength{cftbeforechapskip}{6pt} enewcommand{cftchapdotsep}{cftsecdotsep} enewcommand{cftchapleader}{fseriescftdotfill{cftchapdotsep}} enewcommandcftchapafterpnum{vskip0pt} %目录节标题格式 enewcommand{cftsecfont}{heitizihao{-4}} setlength{cftsecindent}{ccwd} setlength{cftbeforesecskip}{6pt} enewcommandcftsecafterpnum{vskip0pt} enewcommand{cftsubsecfont}{heitizihao{-4}} setlength{cftsubsecindent}{2ccwd} setlength{cftbeforesubsecskip}{6pt} enewcommandcftsubsecafterpnum{vskip0pt}
五、正文配置
ctexbook提供了丰富的配置选项来配置标题、段落格式等,具体参考说明文件ctex.pdf,配置如下:
ctexset{ chapter={ format+=heitizihao{4}fseries, beforeskip=24pt, afterskip=18pt, numbering=true, number=arabic{chapter}, pagestyle=fancy,%标题所在页页面风格 }, section={ format=heitizihao{-4} aggedright, beforeskip=24pt, afterskip=6pt, }, subsection={ format=heitizihao{-4} aggedright, beforeskip=12pt, afterskip=6pt, }, contentsname={目hspace{ccwd}录}, } setlength{parskip}{0pt}
六、图/表中英文题注配置
usepackage{ccaption} % for bicaption usepackage[font=small]{caption} % 图的题注在图下面,使用icaption % 表的题注在表上面,新定义的命令 opbicaption,调整间距 ewcommand{ opbicaption}{%标题在表格上面使用 midbicaption{% addtolength{elowcaptionskip}{-0.5aselineskip}%中英文标题间距 setlength{abovecaptionskip}{0.5aselineskip}}%标题和表格间距 icaption}
% 插入图片示例 egin{figure}[htb] centering includegraphics[width=0.6 extwidth]{figures/ucas_logo.png} icaption[fig1]{中文题注简写,可不写}{中文题注}{Figure}{英文题注} end{figure} % 插入表格示例,推荐使用三线表格 egin{table}[htb] setlength{ abcolsep}{5pt} opbicaption[tb1]{中文题注简写}% {中文题注}% {Table}{英文题注} centering% egin{tabular}{cc} oprule% xxxxx & xxxxx \otoprule xxxx & xxxx \ xxxx & xxxx \ ottomrule end{tabular} end{table}
以上这些组合起来,差不多能排版一篇精美的、符合格式要求的学位论文。
最后祝大家毕业顺利!