TheNetAdmin/zjuthesis · 上手攻略

  • 仓库:TheNetAdmin/zjuthesis
  • 链接:https://github.com/TheNetAdmin/zjuthesis
  • 分类:academic-writing
  • 作者:Tom
  • 更新:2026-08-13

是什么

zjuthesis 是浙江大学学位论文的 LaTeX 模板,完整覆盖本科生、硕士生、博士生三种学位类型(含英文硕博模板),并提供开题报告、最终论文/设计等多种编译模式。用户只需填写个人信息、选定模板参数,即可在本地或 Overleaf 上生成符合浙大官方格式规范的 PDF 论文。

模板涵盖:封面、中英文摘要、目录、章节标题格式、参考文献、图表标注、页眉页脚、盲审模式等全套论文排版要素,并配套 VS Code + LaTeX Workshop 开发容器模板,真正实现"Clone 后即写论文"。


解决什么问题

  1. 格式合规压力:浙大每年会更新论文格式规范,手动调 LaTeX 样式既繁琐又容易出错。zjuthesis 每年随 TeX Live 更新同步修格式,用户只需关注内容。
  2. 跨平台编译:Overleaf / 本地 XeLaTeX / Dev Container 三种方式各适合不同用户(Overleaf 免安装、Dev Container 解决字体依赖)。
  3. 盲审支持:一键切换 BlindReview=true,自动隐藏姓名、学号、导师信息,生成盲审 PDF。
  4. 多学位一套模板:本科生论文 / 硕士论文 / 博士论文 / 英文硕博——通过参数切换,无需找不同模板。

快速安装

方式一:Overleaf(免安装,推荐新手)

  1. Releases 页面 下载 zjuthesis-v*.*.*-overleaf.zip
  2. 在 Overleaf 创建新项目,上传该 .zip 文件
  3. 点击左上角 MenuCompilerXeLaTeXTeX Live version2019 或更新
  4. 参照 Overleaf 项目中 fonts/README.md 说明下载所需字体,上传到 fonts/ 文件夹
  5. 编译

方式二:本地编译(推荐有能力的同学)

  1. 安装 TeX Live(建议使用 浙大校内镜像 加速)
  2. Releases 下载最新 zjuthesis-v*.*.*.zip,每个专业模板目录里有预览 PDF
  3. 解压后编辑 zjuthesis.tex 中的 \documentclass[]{zjuthesis} 部分(见下一节)
  4. body/ 目录编写正文,在 pages/ 目录填写审核评语等必要内容
  5. 图片放 figure/ 目录,文献条目写入 body/ref.bib
  6. 根目录执行:
latexmk                          # 默认输出到 out/ 目录
latexmk -xelatex -outdir=out zjuthesis   # 显式指定 XeLaTeX
latexmk -pdflua -outdir=out             # 如需 LuaTeX 编译

⚠️ 务必使用 latexmk 命令编译,直接 xelatex 可能导致参考文献无法显示。

方式三:Dev Container(配置完整的 Docker 环境)

  1. 安装 VS Code + Dev Containers 插件
  2. Clone 仓库后,执行 "Dev Containers: Reopen in Container"
  3. 等待镜像构建完成(约 10 分钟,视网络情况)
  4. 构建后即拥有 TeX Live + VS Code + LaTeX Workshop 开箱即用环境

方式四:GitHub Codespace(云端浏览器内 VS Code)

  1. Fork 或 Clone 仓库
  2. 在项目主页点 CodeCodespacesNew codespace
  3. 等待容器构建(约 10 分钟)
  4. 在浏览器内 VS Code 中按本地方式使用

⚠️ Codespace 适合性能较弱的设备(如低功耗笔记本);本地性能强的机器建议用本地编译或 Dev Container。


核心配置参数

zjuthesis.tex\documentclass[]{zjuthesis} 中填写,核心字段说明:

本科生(Degree = undergraduate)

\documentclass[
  degree=undergraduate,
  type=thesis,        % thesis: 论文类;design: 设计类
  period=final,       % proposal: 开题报告;final: 最终论文(含开题报告);paper: 最终论文(无开题报告)
  blindReview=true,   % true: 生成盲审 PDF;false: 提交用
  majorFormat=general % general: 默认模板;或 config/format/major/ 下对应目录名
]{zjuthesis}

硕士/博士(Degree = graduate)

\documentclass[
  degree=graduate,
  type=thesis,        % thesis: 学术论文;design: 专业学术论文
  blindReview=true,   % true: 盲审;false: 提交
  majorFormat=general,
  gradLevel=master    % master: 硕士;doctor: 博士
]{zjuthesis}

其他可选设置

参数 说明
PrintFilePath=true 在每页侧边打印对应 TeX 文件路径,方便定位
TwoSide=true 章节末偶数页留白,保证下章节标题位于奇数页(打印版常用)
TrueBlankPage=true 空白页无页眉页脚页号;false 则正常显示

典型适用场景

  • 本科毕业设计 / 论文:直接用 type=thesis, degree=undergraduate 编译,配套开题报告模式。
  • 硕士/博士论文:填 gradLevel=master/doctor,支持盲审切换。
  • 英文硕博论文:参考 docs/english.md 使用英文模板。
  • 计算机专业:使用 majorFormat=computer(计算机专业模板与通用模板格式有差异)。
  • 答辩 PPT:作者另提供 v2.1.1-slide PowerPoint 模板,可用浙大官方标志。

坑与注意

  1. 每年三月底四月初 TeX Live 版本升级后务必检查更新:模板会随 TeX Live 更新做兼容性修改,提交最终版前查看 Releases 是否有更新。

  2. Mac OS 10.15+ 的字体问题:如果 Tex Live 中 ctex 包版本低于 2.5,会出现宋体判断问题导致 PDF 字体误差。解决方案:将 ctex 升级到 2.5 以上,或在 ctex 选项中加 fontset=macnew。详见 Issue #79

  3. TeX Live 2018 及之前版本有伪粗体乱码问题:建议使用最新版本 TeX Live(至少 2021 以上)。

  4. 请用 latexmk 编译:直接 xelatex zjuthesis 可能导致参考文献无法解析;只有 latexmk 能正确处理多次编译链。

  5. Issue 只处理 latexmk 编译产生的问题:不处理 TeXStudio、Overleaf 以外编辑器的问题,使用其他工具出问题时请先自行检索。

  6. Codespace 编译慢:Codespace 是为了解决低功耗设备问题,不适合本地性能强的机器——用本地编译或 Dev Container 更快。

  7. 字体需要手动上传到 Overleaffonts/README.md 说明了字体下载方式,Overleaf 不自带这些字体,必须手动上传。

  8. Docker 构建的 GFW 代理Dockerfile 中用了 gh-proxy 加速;国内用户若下载异常,可尝试修改 GITHUB_DOMAIN 为其他 GitHub 代理或自行配置 docker-buildx 代理。


与同类对比

模板 适用学校 覆盖学位 维护状态 Dev Container 特点
zjuthesis 浙江大学 本科+硕士+博士+英文硕博 活跃(MIT) 官方格式同步、盲审支持、Codespace
thuthesis 清华大学 本科+硕士+博士 活跃 清华大学官方模板
SJTUThesis 上海交通大学 全学位 活跃 交大官方模板
BUPTThesis 北京邮电大学 全学位 活跃 北邮官方模板

核心差异zjuthesis 是浙大社区维护(MIT 协议),与学校官方 zjuthesis-std(规范文件仓库)配套使用,格式更新紧随学校每年的格式修订通知,且提供完整的云端开发环境(Codespace + Dev Container),对跨平台用户更友好。


字数统计

# 1. 先用 latexmk 编译一遍
latexmk -xelatex -outdir=out zjuthesis

# 2. 再运行字数统计脚本(依赖 texcount,TeX Live 自带,无需额外安装)
bash script/utils/word_count.sh

脚本调用 texcount 工具,输出正文字数统计。


一句话推荐结论

浙大在校生写毕业论文,选 zjuthesis——Clone → 填参数 → 写内容 → latexmk 编译,比从头调 LaTeX 格式省大量时间,还能一键生成盲审 PDF。


来源

  • GitHub:https://github.com/TheNetAdmin/zjuthesis
  • 官方文档站:https://thenetadmin.github.io/zjuthesis(?)
  • 使用手册:https://github.com/TheNetAdmin/zjuthesis/blob/master/docs/usage.md
  • FAQ:https://github.com/TheNetAdmin/zjuthesis/blob/master/docs/FAQ.md
  • 开发手册:https://github.com/TheNetAdmin/zjuthesis/blob/master/docs/develop.md
  • 英文模板说明:https://github.com/TheNetAdmin/zjuthesis/blob/master/docs/english.md
  • 浙大镜像(TeX Live):https://mirrors.zju.edu.cn/docs/CTAN
  • 规范文件(zjuthesis-std):https://github.com/thenetadmin/zjuthesis-std

⚠️ 文档站链接(thenetadmin.github.io/zjuthesis)在 GitHub README 中提供,但未经独立 fetch 验证;使用手册与 FAQ 链接为 GitHub 相对路径拼接,仅供定位参考。