在 Pandoc 创建的文档中全局用 figure* 替换 figure

在 Pandoc 创建的文档中全局用 figure* 替换 figure

我使用 Pandoc 创建 TeX 文件作为章节模板,然后将其反馈到 Pandoc 中以创建最终的 PDF。这设置了一些限制,因为 Pandoc 编写 TeX 的一些方式是硬编码的。

我遇到的一个问题是文档中的数字two-column。我希望数字横跨两列。我知道这可以通过使用figure*而不是figure实现,但由于 Pandoc 编写了图形代码,所以我只能在文档的任何地方使用图形。我可以全局定义figure,被替换为figure*吗?我尝试过各种方法来重新定义该命令,但都无法使它们发挥作用。

我发现有人使用以下代码更改了 Pandoc 创建的文档中图形浮动的默认设置:

% Overwrite \begin{figure}[htbp] with \begin{figure}[H]
\usepackage{float}
\let\origfigure=\figure
\let\endorigfigure=\endfigure
\renewenvironment{figure}[1][]{%
  \origfigure[H]
}{%
  \endorigfigure
}

我尝试将其更改为

\usepackage{float}
\let\origfigure=\figure
\let\endorigfigure=\endfigure
\renewenvironment{figure}[1][]{%
  \origfigure*
}{%
  \endorigfigure*
}

\renewenvironment似乎只改变了参数,而不是命令本身。有更好的解决方案吗?我只是使用了错误的语法吗?

答案1

正确的解决方案是

\usepackage{float}
\let\origfigure=\figure
\let\endorigfigure=\endfigure
\renewenvironment{figure}[1][]{%
  \begin{figure*}
}{%
  \end{figure*}
}

相关内容