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

如何在RMarkdown中用\input命令缩放LaTeX表格?解决「Not in outer par mode」错误

解决RMarkdown中LaTeX表格缩放报错的问题

报错原因

你用\resizebox包裹\input{sample_table2.tex}时出错,核心原因是外部tex文件包含table浮动环境——LaTeX不允许将浮动环境嵌套在\resizebox这类盒子命令中,这直接触发了「Not in outer par mode」错误。

两种可行解决方案

方案1:修改外部tex文件,剥离浮动环境

把外部tex文件里的\begin{table}[htbp]和\end{table}删除,只保留表格核心内容,示例如下:

\centering
\def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}
\begin{tabular}{l*{4}{c}}
% 表格具体内容
\end{tabular}

之后在RMarkdown里手动添加浮动环境并包裹缩放命令:

\begin{table}[htbp]
\resizebox{0.75\textwidth}{!}{\input{sample_table2.tex}}
\end{table}

方案2:使用adjustbox包兼容原tex文件

如果不想修改外部tex文件,可借助adjustbox包处理浮动环境与缩放命令的冲突:

  1. 先在RMarkdown的YAML头部加载该包:
---
title: "你的文档标题"
output: pdf_document
header-includes:
  - \usepackage{adjustbox}
---
  1. 用adjustbox环境包裹\input命令,指定缩放宽度:
\begin{adjustbox}{width=0.75\textwidth}
\input{sample_table2.tex}
\end{adjustbox}

补充说明

adjustbox包会自动处理浮动环境与盒子命令的兼容性,无需修改原有tex文件;方案1则更贴合LaTeX原生排版逻辑,避免引入额外依赖包,可根据需求选择。

内容的提问来源于stack exchange,提问作者rokman54

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 07:05:00