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

如何让R Markdown生成的PDF从第3页开始显示页眉?

解决方案

你可以通过调整LaTeX命令的执行时机,让页眉从第3页(正文起始页)开始显示,具体修改后的YAML配置如下:

---
output: 
  pdf_document:
      latex_engine: xelatex
      toc: true
date: "`r format(Sys.time(), '%d %B, %Y')` \clearpage"
header-includes:
  - \usepackage{fancyhdr}
  - \usepackage{etoolbox}
  - \fancyhead[LE,RO]{left header}
  - \fancyhead[RE,LO]{right header}
  # 默认所有页面先使用无页眉页脚的empty样式
  - \AfterEndPreamble{\pagestyle{empty}}
  # 强制目录页保持empty样式
  - \AtBeginDocument{\addtocontents{toc}{\protect\thispagestyle{empty}}}
  # 目录结束后切换为fancy页眉样式
  - \AtBeginDocument{\apptocmd{\tableofcontents}{\clearpage\pagestyle{fancy}}{}{}}
---

关键修改说明:

  1. 引入etoolbox宏包:用于修改\tableofcontents命令的行为,实现目录结束后自动切换页眉样式。
  2. 默认设置empty样式:通过\AfterEndPreamble{\pagestyle{empty}}让所有页面初始都不显示页眉页脚,覆盖原配置中直接启用fancy的设置。
  3. 锁定目录页样式:用\addtocontents{toc}{\protect\thispagestyle{empty}}确保目录页(第2页)保持无页眉状态。
  4. 目录后切换样式:借助\apptocmd给\tableofcontents命令追加动作——目录生成完成后执行\clearpage(确保目录单独一页),再切换到fancy样式,这样从第3页(正文页)开始就会显示自定义页眉。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 22:10:16