使用Pandoc/Eisvogel模板时,图目录章节间出现异常空白求助
Pandoc + Eisvogel模板图目录章节间异常空白问题
问题描述
我使用Pandoc结合LaTeX、Markdown和Eisvogel模板生成PDF时,发现图目录(List of Figures)中部分章节标题之间出现了异常空白。朋友使用同款模板却未出现该问题,我已尝试官方指南及各类技术平台的多种解决方案,但均无效。
问题截图
图目录中可见部分章节标题之间存在明显的空白区域,与正常紧凑的目录排版不符,空白长度远超常规段落间距。
相关代码片段
模板中控制图目录生成的代码:
$if(lof)$ \listoffigures $endif$
可复现示例(已翻译为中文)
--- title: "测试文档" author: "测试作者" date: "2024-05-20" documentclass: report output: pdf_document: template: eisvogel.latex toc: true toc_depth: 2 lof: true --- # 第一章 Lorem ipsum dolor sit amet, consectetur adipiscing elit. (注:此处为占位文本,不影响问题复现) {#fig:first-figure} # 第二章 Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. {#fig:second-figure} # 第三章 Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. {#fig:third-figure} # 第四章 Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. {#fig:fourth-figure}
解决方案
- 更新LaTeX依赖包:Eisvogel模板依赖
tocloft包生成目录,执行tlmgr update tocloft更新到最新版本,再重新生成PDF,版本差异是常见诱因。 - 修改模板图目录配置:在模板的
\listoffigures前后添加段落间距控制命令,强制消除异常空白:$if(lof)$ \begingroup \setlength{\parskip}{0pt} \listoffigures \endgroup $endif$ - 规范Markdown章节格式:检查所有章节标题(
#开头)前后是否存在多余空行或特殊字符,这类内容可能被Pandoc解析为LaTeX段落,导致目录出现空白。 - 更换文档类测试:将YAML配置中的
documentclass: report改为article,若空白消失,说明report类默认目录格式与模板冲突,可在模板中添加\usepackage{tocbasic}覆盖默认配置。
内容的提问来源于stack exchange,提问作者Shenladen
相关产品推荐
相关产品推荐

