RMarkdown输出PDF混合横竖页且页眉保持横向无空白首页求助
RMarkdown+LaTeX导出混合横竖页PDF的可行解决方案
以下是完整可运行的修改后MWE,可直接解决你提到的所有问题:
--- output: pdf_document: latex_engine: xelatex keep_tex: false header-includes: - \usepackage{lipsum} - \usepackage{pdflscape} - \usepackage{fancyhdr} # 全局页眉页脚配置 - \pagestyle{fancy} - \fancyhf{} - \fancyhead[L]{你需要的统一页眉内容} - \fancyfoot[R]{\thepage} - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0pt} # 横页专属页眉页脚样式,强制不旋转 - \fancypagestyle{lscape}{ \fancyhf{} \fancyhead[L]{\rotatebox{0}{你需要的统一页眉内容}} \fancyfoot[R]{\rotatebox{0}{\thepage}} } # 取消标题页,无兼容冲突 - \AtBeginDocument{\let\maketitle\relax} ---
library(ggplot2)
% 开启第一页横向 \begin{landscape} \thispagestyle{lscape}
#| echo: false #| fig.width: 24 #| fig.height: 16 # 尺寸匹配A4横页可打印区域,自动适配页宽 ggplot(iris, aes(Sepal.Length, Sepal.Width, color = Species)) + geom_point(size = 2) + labs(title = "鸢尾花数据集散点图") + theme(plot.title = element_text(hjust = 0.5))
\end{landscape}
#| echo: false # 后续纵向内容 lipsum(8)
关键配置说明
- 空白首页问题:
pdflscape包的landscape环境本身不会插入额外空白页,上述\AtBeginDocument的写法已修复兼容冲突,不会生成空白首页 - 横页页眉旋转问题:通过自定义
lscape页面样式,强制横页页眉页脚保持0度旋转,和阅读方向一致,不会变为侧边竖条 - 图表适配问题:直接在ggplot代码块设置
fig.width、fig.height匹配横页物理尺寸,无需调用\typearea或\KOMAoptions,不会出现宽度适配异常 - 统一样式:全局和横页的页眉内容需同步修改,保证所有页面页眉在阅读方向顶部、页码在右下角
内容的提问来源于stack exchange,提问作者Rusty Shackleford
相关产品推荐
相关产品推荐

