You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R Markdown中使用LaTeX包?引入fancyhdr报错如何解决

问题原因

该报错属于YAML头解析错误,和你preamble.tex中的fancyhdr配置完全无关。报错发生在R Markdown编译的最早期阶段,还未调用LaTeX环境编译文档,问题根源是.Rmd文件的YAML头缩进、空行不符合YAML语法规范:解析器在处理output字段的块映射时,误将后续层级不对的字段识别为output的子键,找不到对应的合法键名,因此抛出该错误。

解决步骤
  • 统一YAML头的缩进规范:所有缩进必须使用空格,禁止使用TAB键,每一级缩进固定为2个空格;title、author、output、urlcolor、params等顶级键必须顶格书写,不能有前置空格,修正后的YAML头参考如下:
---
title: "Title"
author: ""
output: 
  pdf_document:
    keep_tex: true
    includes:
      in_header: preamble.tex
urlcolor: rubblue
params:
  plotSAMP: "NULL"
  plotApps: "NULL"
# mainfont: SourceSansPro
---
  • 删掉YAML头里不必要的连续空行,比如params字段和子参数之间、子参数和后续注释之间的多余空行,避免解析器识别异常
  • 确认.Rmd文件的编码为UTF-8,可通过RStudio的「文件→另存为→编码选择UTF-8」完成设置
  • 可选优化:在preamble.tex开头显式添加\usepackage{graphicx}语句,避免插入Logo时出现依赖缺失报错;如果需要文档首页也显示页眉,可在Rmd正文的最开头添加\thispagestyle{fancy}语句。

内容的提问来源于stack exchange,提问作者Ninke

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 18:57:01