Create project in app
西北大学学年论文 Typst 模板。本模板基于 Typst 开发,旨在为西北大学学子提供一个初步的、符合规范的学年论文排版环境。
⚠️ 声明:本模板为个人自发维护的第三方开源项目,非西北大学官方发布。使用前请务必与学院要求的最终格式进行核对。
快速上手
1. 导入模板
在你的 .typ 文件顶部,通过预览包(@preview)的方式引入本模板:
#import "@preview/nwu-academic-year-paper:0.1.0": template
#show: template.with(
meta-title: [基于 Typst 的西北大学学年论文排版系统设计],
meta-stu-name: [张三],
meta-stu-number: "2026000001",
meta-tch-name: [李四 教授],
meta-department: [计算机科学与技术学院],
meta-major: [软件工程],
meta-grade: "2026级",
// 摘要内容
meta-zh-abstract: [这里是中文摘要内容...],
meta-zh-keywords: ([Typst], [西北大学], [学年论文]),
meta-en-abstract: [Here is the English abstract...],
meta-en-keywords: ([Typst], [NWU], [Academic Year Paper]),
)
// === 正文从这里开始 ===
= 引言
这是你的第一章引言内容。
== 研究背景
这是二级标题。
2. 编译渲染
在终端中运行以下命令即可编译为 PDF,推荐配合 VS Code 的 Tinymist 插件使用实时预览:
typst compile example.typ
将 example.typ 替换为你的 .typ 文件路径
核心参数说明
本模板提供丰富的自定义参数,均带有默认值,可根据需求在 template.with() 中覆盖:
文档控制组件
| 参数名 | 类型 | 默认值 | 说明 |
|---|---|---|---|
doc-show-cover |
bool |
true |
是否渲染论文封面页 |
doc-show-zh-abstract |
bool |
true |
是否渲染中文摘要页 |
doc-show-en-abstract |
bool |
true |
是否渲染英文摘要页 |
doc-show-outline |
bool |
false |
是否生成大目录 |
文档元数据(Meta)
| 参数名 | 类型 | 说明 |
|---|---|---|
meta-title |
content |
论文题目 |
meta-stu-name |
content |
学生姓名 |
meta-stu-number |
content/string |
学号 |
meta-tch-name |
content |
指导老师姓名及职称 |
meta-department |
content |
学院名称 |
meta-major |
content |
专业名称 |
meta-grade |
content/string |
年级(如:[2026级]) |
meta-zh-keywords |
array |
中文关键词元组,如 ([键1], [键2]) |
meta-en-keywords |
array |
英文关键词元组 |
meta-bib-path |
string/none |
参考文献 .bib 文件的路径 |
💡 提示:如果需要调整具体字号或字体族(如修改
font-serif或标题字号),可参考源码template.typ中的字体细粒度映射参数。
默认字体族
本模板采用如下默认字体设置:
| 用途 | 字体优先级序列 | 适用场景 |
|---|---|---|
| 正文 (衬线) | "Times New Roman", "Source Han Serif", "SimSun", "STSong" |
正文、摘要、参考文献、页眉页脚 |
| 标题 (无衬线) | "Arial", "Source Han Sans", "Microsoft YaHei", "SimHei" |
封面、各级标题、表格标题 |
💡 提示:模板不自带字体文件,直接调用系统内置字体,若需完整功能请先安装字体,或传入参数以使用其他字体。
目录结构
.
├── assets/ # 校徽 LOGO 等静态资源
├── src/ # 模板核心源码
│ ├── renderer/ # 各页面排版渲染器 (封面、摘要、目录等)
│ ├── show-rules/ # 原子化拦截规则 (标题、公式、图表等)
│ ├── pipeline.typ # 主排版流水线核心逻辑
│ ├── renderer.typ # 渲染器统一入口
│ └── show-rules.typ # 规则集统一入口
├── template/
│ ├── paper.typ # 开箱即用的骨架
│ └── ref.bib # 预设参考文献数据库
├── lib.typ # 暴露的顶层接口
├── typst.toml
├── LICENSE
└── README.md
本地开发与贡献
如果你对本模板有任何改进建议或样式修复,欢迎提出 Issue 或直接提交 Pull Request:
- 克隆本仓库到本地。
- 参照各操作系统下 Typst 的本地包管理规范,将其放置于对应的 packages 路径下进行本地测试。
- 修改 renderer/ 或 show-rules/ 下的具体页面逻辑或调整 pipeline.typ 样式流。
开源协议
本模板基于 MIT 协议开源。
⚠️ 声明:本模板中所包含的西北大学校徽等视觉素材,其版权与商标权均归属于西北大学。模板中素材仅供西北大学师生个人在学术论文排版中合理使用,请勿用于商业用途。