brilliant-CV 多语言简历实战:同一份代码快速生成中、法、德、意四版求职简历
【免费下载链接】brilliant-CV💼 another CV template for your job application, yet powered by Typst and more项目地址: https://gitcode.com/gh_mirrors/br/brilliant-CV
brilliant-CV 是一个基于Typst的现代简历模板,最大的亮点就是多语言简历支持:一套代码、四个profile目录,就能快速生成中文、法语、德语、意大利语四个版本的专业求职简历。每个语言版本都是独立自包含的配置,改哪个语言就改哪个目录,互不干扰,非常适合需要向不同国家投简历的求职者 🌍
四种语言的同一套模板,效果如何?
先看成品。下面的四份简历全部来自同一份 Typst 源码,只是编译时切换了profile参数,版式、配色、字体细节都随语言自动适配了当地惯例:
| 中文简历 | 法语简历 |
|---|---|
| 德语简历 | 意大利语简历 |
注意细节差异:中文版的章节标题整词高亮、姓名使用整体显示;法语版多了一行 "Permis B"(驾照)——这是法国简历的惯例;德语版页脚是 "Lebenslauf"。这些全部由各自的profile_<语言>/metadata.toml控制。
快速上手:3 步初始化多语言简历项目
第 1 步:用 Typst 官方命令生成项目骨架
typst init @preview/brilliant-cv cd brilliant-cv或者从仓库克隆一份研究:git clone https://gitcode.com/gh_mirrors/br/brilliant-CV
第 2 步:安装依赖字体
简历要正确渲染,需要安装 Roboto、Source Sans 3 和 Font Awesome 7 桌面版字体;写中文简历还要准备中文字体(如 macOS 自带的 Heiti SC,或跨平台的 Noto Sans CJK SC)。缺字体时联系人图标会变成"方框",这是新手最常踩的坑。
第 3 步:编辑内容并编译
项目自带的目录结构如下(以英文档为例,其余语言目录结构完全相同):
template/cv.typ:入口文件,负责按顺序拼装各个模块template/profile_en/metadata.toml:完整的简历配置(姓名、联系方式、配色、字体、版式)template/profile_en/*.typ:教育、职业经历、项目、证书、论文、技能等六大内容模块template/assets/:头像、公司 Logo、签名图片
模板自带profile_en、profile_fr、profile_de、profile_it、profile_zh五个官方示例档,把示例内容替换成你自己的经历即可。
编译时切换语言:一条命令生成任意版本
brilliant-CV 的多语言机制非常干净:语言不写死在源码里,而是编译时通过参数选择:
typst compile cv.typ # 默认英文版 typst compile cv.typ --input profile=zh # 中文版 typst compile cv.typ --input profile=fr # 法语版 typst compile cv.typ --input profile=de # 德语版profile参数决定加载哪个profile_<name>/目录,cv.typ会自动读取该目录下的metadata.toml和全部内容模块。要新增一个版本(比如西班牙语),只需把profile_en/复制一份改名,修改差异字段即可,不需要动任何模板源码。
语言差异在哪里调?metadata.toml 的四个关键字段
各语言档的差异全部集中在自己的metadata.toml里,对比 英文版配置 和 中文版配置,最值得学习的有四处:
1. 中文字体:用字体回退链而不是"语言开关"
v4 版本没有隐藏的language模式,中文渲染靠显式字体配置:
[layout.fonts] regular_fonts = ["Source Sans 3", "Noto Sans CJK SC"] # 西文在前,中文回退在后 header_font = "Noto Sans CJK SC"Typst 按字符自动从字体链中挑选:拉丁字母用 Source Sans 3,中文字符落到 Noto Sans CJK SC,混排一行也毫无问题。
2. 姓名显示:display_name 覆盖默认的"名+姓"拆分
[personal] display_name = "王道尔" # 中文名不再按 first/last 拆两半3. 日期列宽度:按语言习惯微调
[layout] date_width = "4.7cm" # 中文"2017年7月"需要更宽的日期列(法语档约 3.4cm)4. 章节标题高亮:非拉丁文字用整词高亮
[layout.section] title_highlight = "full" # 整词高亮,而不是按"前 N 个字母"拆分(拉丁语惯例)法语档则展示了"按国家习俗定制"的玩法——在personal.info里加了一条custom-car(Permis B 驾照),这是法国简历的加分项,其他语言档没有。
新手避坑清单
- 图标变成方框:Font Awesome 7 字体没装上,安装后重新编译即可
- 中文字体显示成方框:换用可自由分发的 Noto Sans CJK SC(Heiti SC 仅 macOS 自带,跨平台会静默换字体)
- 改了配置文件没效果:TOML 键名写错(如
headerAlign)会被静默忽略,正确写法是header_align;配置文件支持 JSON Schema 校验,编辑器里写错会直接提示 - 真实头像别提交到公开仓库:
assets/里的照片、签名属于敏感信息,建议用私有仓库或提交占位图
更多字段说明可查阅仓库内的 getting-started 文档 和 recipes 配方。
总结
brilliant-CV 的多语言简历方案可以概括为一句话:一个 profile 目录 = 一个完整的语言版本,编译时一条命令切换。中文、法文、德文、意大利文四个官方示例档就是现成的"教材",照着改就能产出符合各地求职惯例的专业简历。维护多份简历最怕的就是内容不同步,而在这里,同一份模块代码 + 差异化的 metadata,就能让你四份简历始终保持一致。
【免费下载链接】brilliant-CV💼 another CV template for your job application, yet powered by Typst and more项目地址: https://gitcode.com/gh_mirrors/br/brilliant-CV
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考