R Markdown四级标题导出PDF时无法与下文换行分隔如何解决
问题原因
R Markdown导出PDF时依赖LaTeX完成编译,默认配置下:前三级Markdown标题对应LaTeX的\section、\subsection、\subsubsection命令,属于块级标题,会自动换行并和后续正文分隔;而四级及以下标题对应LaTeX的\paragraph命令,默认是行内标题样式,所以会和后续正文直接显示在同一行,这个是默认设计的特性,和你尝试的加空格、加空行操作无关。
解决方案
- 方法1:全局修改四级标题样式(一劳永逸)
在R Markdown文档的YAML头部添加LaTeX配置,重定义\paragraph的样式为块级标题,示例配置如下:--- title: "你的文档标题" output: pdf_document header-includes: - \makeatletter - \renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}% {-3.25ex \@plus -1ex \@minus -0.2ex}% {1.5ex \@plus 0.2ex}% {\normalfont\normalsize\bfseries}} - \makeatother --- 配置中的第二个间距参数设为正值,就会让标题和正文之间换行分隔,你也可以自行调整数值大小修改上下间距,调整完成后重新编译PDF即可生效,所有四级标题都会自动换行。 - 方法2:临时调整单个四级标题
如果不需要修改全局样式,只需要让某一个四级标题换行,直接在该标题末尾添加\par命令即可,示例写法:#### Head4\par 后续的正文内容
额外提示
标准Markdown语法要求#和标题文本之间需要保留空格,建议把你原来的#Head1、##Head2写法调整为# Head1、## Head2,避免部分场景下出现解析异常。
内容的提问来源于stack exchange,提问作者Hannah
相关产品推荐
相关产品推荐

