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

如何在RMarkdown生成的PDF文档左侧添加折叠标记?

在RMarkdown中生成带左侧折叠标记的PDF方案

方案一:基于scrlttr2文档类实现

RMarkdown默认使用article类,要切换到scrlttr2,需在YAML头部指定文档类,同时通过header-includes引入必要LaTeX设置调整折叠标记样式:

修改后的完整RMarkdown代码

---
title: "带折叠标记的文档"
output: 
  pdf_document:
    keep_tex: true
documentclass: scrlttr2
date: "2023-01-17"
header-includes:
  - \usepackage{fancyhdr}
  - \usepackage{xcolor}
  - \KOMAoptions{foldmark=true,foldmark=blmtP} # 启用折叠标记并设置样式
  - \setplength{foldmarkwidth}{1mm} # 调整折叠标记宽度
  - \setplength{foldmarkdepth}{5mm} # 调整折叠标记深度
  - \setplength{foldmarkheight}{15mm} # 调整折叠标记高度
---

## R Markdown

这是一份R Markdown文档。Markdown是一种简单的格式化语法,用于编写HTML、PDF和MS Word文档。关于R Markdown的更多细节可参考官方文档。

点击**Knit**按钮后,会生成包含内容及嵌入R代码块输出的文档。你可以像这样嵌入R代码块:

```r
summary(cars)
### 关键配置说明
- `documentclass: scrlttr2`:强制使用KOMA-script的信函类,该类原生支持折叠标记
- `\KOMAoptions{foldmark=true,foldmark=blmtP}`:开启折叠标记,`blmtP`指定左侧垂直+顶部/底部水平的标记组合
- `\setplength`系列命令:自定义折叠标记的宽度、深度和高度,可根据需求调整数值

## 方案二:通用文档类(如`article`)添加折叠标记
若不想切换到`scrlttr2`,可借助`fancyhdr`、`everypage`和`tikz`包手动绘制折叠标记:

### 修改后的完整RMarkdown代码
```yaml
---
title: "Untitled"
output: pdf_document
date: "2023-01-17"
header-includes:
  - \usepackage{fancyhdr}
  - \usepackage{xcolor}
  - \usepackage{everypage}
  - \usepackage{tikz}
  - \AddEverypageHook{
      \begin{tikzpicture}[overlay,remember picture]
        % 顶部折叠标记
        \draw[black, thick] ($(current page.north west)+(1cm,-1cm)$) -- ++(0,-5mm) -- ++(5mm,0);
        % 底部折叠标记
        \draw[black, thick] ($(current page.south west)+(1cm,1cm)$) -- ++(0,5mm) -- ++(5mm,0);
        % 垂直中线折叠标记
        \draw[black, thick] ($(current page.west)+(1cm,0)$) -- ++(0,15mm);
      \end{tikzpicture}
    }
---

## R Markdown

这是一份R Markdown文档。Markdown是一种简单的格式化语法,用于编写HTML、PDF和MS Word文档。关于R Markdown的更多细节可参考官方文档。

点击**Knit**按钮后,会生成包含内容及嵌入R代码块输出的文档。你可以像这样嵌入R代码块:

```r
summary(cars)
### 关键配置说明
- `\usepackage{everypage}`:用于在每一页执行自定义绘图命令
- `\usepackage{tikz}`:提供绘图功能,通过坐标定位绘制折叠标记线条
- `\AddEverypageHook`:将绘图逻辑绑定到每一页,`current page`用于定位页面边缘,可调整坐标修改标记的位置和尺寸

内容的提问来源于stack exchange,提问作者TobKel
相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 09:25:28