如何使自定义浮动环境对标题使用相同的编号。

如何使自定义浮动环境对标题使用相同的编号。

我使用自定义浮动环境,该环境基本上用作提供额外格式的表格环境。我希望此环境使用与常规表格浮动相同的编号。有办法吗?我已经使用 floatname 命令将 floatname 更改为与 Table 匹配。这是我的初始化代码:

\newfloat{newtable}{tbp}{lop}[chapter]
\floatname{newtable}{Table}

常规表格编号也跨越章节...您有什么想法吗?

答案1

如果你这样做只是为了获得具有不同格式的第二个表格环境,为什么不简单地根据现有的来定义它呢table?例如

\newenvironment{newtable}{\table[opts]\formatting\stuff}{\endtable}

答案2

一个较黑客的解决方案 - 可能会产生不利影响 - 是在环境table之后增加计数器newtable,反之亦然。

\documentclass{book}

\usepackage{float}
\newfloat{newtable}{tbp}{lop}[chapter]
\floatname{newtable}{Table}

\makeatletter
\g@addto@macro\endnewtable{\refstepcounter{table}}
\g@addto@macro\endtable{\refstepcounter{newtable}}
\makeatother

\begin{document}

\chapter{A chapter}

\begin{table}[!ht]
\caption{A table}
\end{table}

\begin{newtable}[!ht]
\caption{A newtable}
\end{newtable}

\begin{table}[!ht]
\caption{Another table}
\end{table}

\end{document}

相关内容