Skip to content
Snippets Groups Projects
Commit 3c8e3a4d authored by Yu Xiong's avatar Yu Xiong :confounded:
Browse files

feature: 实现多行标题的手动选择功能

parent 2898095e
No related branches found
No related tags found
No related merge requests found
......@@ -15,13 +15,16 @@
% 输入配置文件
\input{profile/profile.cls}
\DeclareStringOption[1]{TitleLength}
\DeclareStringOption[thesis]{Type}
\DeclareStringOption{Department}
\DeclareStringOption{Department_EN}
\DeclareStringOption{Major}
\DeclareStringOption{Major_EN}
\DeclareStringOption{Title}
\DeclareStringOption{TitleOne}
\DeclareStringOption{TitleTwo}
\DeclareStringOption{TitleThree}
\DeclareStringOption{Title_EN}
\DeclareStringOption{Grade}
\DeclareStringOption{StudentID}
......@@ -34,6 +37,8 @@
\DeclareStringOption{SubmitDate}
\DeclareStringOption[本科]{Degree}
% \Title定义需要latex3,暂存于cover.tex
\ProcessKeyvalOptions*
\ifthenelse{\equal{\Type}{thesis}}
......
\documentclass[
Title = 曲率引擎的研究, %标题
TitleLength = 1,% 选择标题行数,范围是1~3
TitleOne = 曲率引擎的研究,% 第一行标题
TitleTwo =,% 第二行标题
TitleThree =,% 第三行标题
Title_EN = Curvature engine research,
Grade = 17,
StudentID = 17184xxx,
......@@ -14,8 +17,8 @@
MentorTitle = 教授,
MentorTitle_EN = Professor,
SubmitDate = 2077年12月31日,
Degree = 本科, %学位
Type = thesis % thesis:毕业论文,design:毕业设计
Degree = 本科,% 学位
Type = thesis% thesis:毕业论文,design:毕业设计
]{njuthesis}
\addbibresource{njuthesis.bib}
......
% 封面下划线
\cs_new:Npn \cover_underline:nn #1 #2 {
\uline{\makebox[#1]{#2}}
\uline{\makebox[#1]{#2}}
}
% 封面表格边框
\cs_new:Npn \coverbox:n #1 {
\makebox[4.2em][s]{#1}
}
% 将三行标题拼接为一行
\tl_new:N \Title
\tl_set:Nn \Title {\TitleOne\TitleTwo\TitleThree}
% 封面标题
\tl_new:N \cover_oneline_title
\tl_set:Nn \cover_oneline_title {
\begin{tabular}{p{4.2em}c}
\makebox[4.2em][s]{院系}
\coverbox:n {院系}
& \cover_underline:nn {250pt}{\songti\Department}\\
\makebox[4.2em][s]{专业}
\coverbox:n {专业}
& \cover_underline:nn {250pt}{\songti\Major}\\
\makebox[4.2em][s]{题目}
& \cover_underline:nn {250pt}{\textbf{\songti\Title}}
\coverbox:n {题目}
& \cover_underline:nn {250pt}{\textbf{\songti\TitleOne}} \\
\ifnum\TitleLength=2 % 标题行数选择
\coverbox:n {}
& \cover_underline:nn {250pt}{\textbf{\songti\TitleTwo}} \\
\fi
\ifnum\TitleLength=3
\coverbox:n {}
& \cover_underline:nn {250pt}{\textbf{\songti\TitleTwo}} \\
\coverbox:n {}
& \cover_underline:nn {250pt}{\textbf{\songti\TitleThree}} \\
\fi
\end{tabular} \\
\begin{tabular}{p{4.2em}cp{4.2em}c}
\makebox[4.2em][s]{年级}
\coverbox:n {年级}
& \cover_underline:nn {90pt}{\Grade}
& \makebox[4.2em][s]{学号}
& \coverbox:n {学号}
& \cover_underline:nn {90pt}{\songti\StudentID}\\
\end{tabular}\\
\begin{tabular}{p{4.2em}c}
\makebox[4.2em][s]{学生姓名}
\coverbox:n {学生姓名}
& \cover_underline:nn {250pt}{\StudentName}
\end{tabular}\\
\begin{tabular}{p{4.2em}cp{4.2em}c}
\makebox[4.2em][s]{导师}
\coverbox:n {导师}
& \cover_underline:nn {90pt}{\Mentor}
& \makebox[4.2em][s]{职称}
& \coverbox:n {职称}
& \cover_underline:nn {90pt}{\MentorTitle}\\
\end{tabular}\\
% % 第二导师
% \ifnjut@title@twosupervisors
% \begin{tabular}{p{4.2em}cp{4.2em}c}
% \makebox[4.2em][s]{\njut@cap@cover@secondsupervisor}
% \coverbox:n {\njut@cap@cover@secondsupervisor}
% & \njutunderline[90pt]{\songti\njut@value@secondsupervisor}
% & \makebox[4.2em][s]{\njut@cap@cover@secondsupervisortitle}
% & \coverbox:n {\njut@cap@cover@secondsupervisortitle}
% & \njutunderline[90pt]{\songti\njut@value@secondsupervisortitle}\\
% \end{tabular}
% \fi
\begin{tabular}{p{4.2em}c}
\makebox[4.2em][s]{提交日期}
\coverbox:n {提交日期}
& \cover_underline:nn {250pt}{\SubmitDate}\\
\end{tabular}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment