RMarkdown导出PDF时修改代码输出字体以节省排版空间的咨询
RMarkdown PDF输出修改代码块字体大小的解决方案
以下是两种常用的实现方案,可直接在你的Rmd文档中配置使用:
方案1:全局修改所有代码块字体大小
先在文档的YAML头部配置PDF输出参数,示例如下:
--- title: "你的文档标题" output: pdf_document: latex_engine: xelatex highlight: tango ---
接着在文档开头的全局设置代码块中添加字体大小参数:
knitr::opts_chunk$set(size = "footnotesize")
你可以根据需求替换"footnotesize"为更小的可选值,按字体从大到小排序可选:
smallfootnotesizescriptsizetiny
其中scriptsize和tiny的占位压缩效果最明显,同时基本不影响代码可读性。
方案2:单独调整指定代码块的字体大小
如果不需要全局修改,仅要给个别长代码块设置更小字体,直接在对应代码块的头部参数中添加size属性即可:
# 代码块示例 ```{r, size="tiny"} # 你的长代码/输出内容
## 额外压缩排版空间的优化方案 如果希望进一步缩减代码块的上下边距,可以通过自定义LaTeX前置配置实现: 1. 在YAML头部添加前置文件引入配置: ```yaml output: pdf_document: includes: in_header: preamble.tex
- 在Rmd文档同目录下新建名为
preamble.tex的文件,写入以下内容:
\usepackage{framed} \renewenvironment{Shaded}{\begin{snugshade}\scriptsize}{\end{snugshade}} \setlength{\FrameSep}{2pt}
以上配置全部调整后,代码块总占用高度最多可缩减40%~50%,可以充分利用页面宽度,满足你缩减篇幅的需求。
内容的提问来源于stack exchange,提问作者armandfavrot
相关产品推荐
相关产品推荐

