自定义R包vitae模板报错:fontspec需XeLaTeX/LuaTeX引擎
问题描述
自定义vitae R包模板时,完成以下操作后出现编译错误:
- 编译awesomecv模板并将其.tex文件复制到工作目录,修改颜色为
awesome-emerald - 修改Rmd文件的YAML输出配置为:
output: vitae::cv_document: template: awesome-cv_mod.tex
其余内容与原仓库一致,但编译时触发fontspec错误:
! Fatal Package fontspec Error: The fontspec package requires either XeTeX or (fontspec) LuaTeX. (fontspec) (fontspec) You must change your typesetting engine to, (fontspec) e.g., "xelatex" or "lualatex" instead of (fontspec) "latex" or "pdflatex".
已在Rproj文件中设置引擎为XeLaTeX,但错误仍未消除,原模板可正常运行,使用系统为Ubuntu 22。
可能原因及解决思路
- Rproj配置未被当前会话加载
重启RStudio或重新打开项目,确保当前R会话识别到Rproj的引擎设置。 - vitae包未继承Rproj的引擎设置
vitae::cv_document可能默认使用pdflatex,需在YAML中显式指定引擎:output: vitae::cv_document: template: awesome-cv_mod.tex latex_engine: xelatex - Ubuntu系统缺少XeLaTeX依赖
检查是否安装了texlive-xetex包,执行以下命令安装:
安装完成后重新编译。sudo apt-get install texlive-xetex - 自定义模板的fontspec配置被误改
检查awesome-cv_mod.tex,确保保留了原模板的\usepackage{fontspec}配置,未添加强制使用pdflatex的代码。 - RStudio全局编译引擎覆盖项目设置
打开RStudio的「Tools -> Global Options -> Sweave」,确认默认编译引擎为XeLaTeX;或编译时手动选择「Compile PDF -> XeLaTeX」。
内容的提问来源于stack exchange,提问作者setophaga
相关产品推荐
相关产品推荐

