在我的文档中,我有一个相当大的表格。我想将此表格放在没有标题和页码的页面上。如何将此表格放在 上\thispagestyle{empty}
?在表格或表格环境中使用它会使定义浮动的页面变为空白,并将标题留在表格上。
如果有关系的话,我会使用fancyhdr
。
答案1
fancyhdr
提供\iffloatpage
可用于定制仅包含浮点数的页面的页眉和页脚的宏。
\documentclass{book}
\usepackage{fancyhdr}
\fancyhead{}
\fancyhead[LE,RO]{\iffloatpage{}{\slshape\rightmark}}
\fancyhead[LO,RE]{\iffloatpage{}{\slshape\leftmark}}
\fancyfoot{}
\fancyfoot[C]{\iffloatpage{}{\thepage}}
\renewcommand{\headrulewidth}{\iffloatpage{0pt}{0.4pt}}
\pagestyle{fancy}
\usepackage[english]{babel}
\usepackage{blindtext}
\begin{document}
\blinddocument
\begin{table}[p]
\centering
(Table contents)
\caption{A table on a separate page}
\end{table}
\end{document}
编辑:对于那些想要使用\iffloatpage
KOMA-scriptscrpage2
包中的宏而不是 with 的人fancyhdr
,请将以下内容添加到您的序言中(感谢 Stefan Kottwitz 提供的提示):
\makeatletter
\newcommand*{\iffloatpage}[2]{\if@fcolmade #1\else #2\fi}
\makeatother
(这盲文包仅用于向示例添加一些虚拟文本。)
答案2
使用时回忆录文档类命令mergepagefloatstyle
可用于区分常规页面和仅包含浮动元素的页面样式,类似于@lockstep 的解决方案。例如
\mergepagefloatstyle{floatcomp}{ruled}{empty}
定义一个新样式floatcomp
,该样式将使用页面样式ruled
来处理常规页面和empty
仅浮动页面。
一位 MWE 表示:
\documentclass{memoir}
\usepackage{kantlipsum}
% Define new style floatcomp that usees 'ruled' style for regular
% pages, and 'empty' for float-only pages.
\mergepagefloatstyle{floatcomp}{ruled}{empty}
% Use previously defined floatcomp style
\pagestyle{floatcomp}
\begin{document}
\kant[1-5]
\begin{table}[p]
\centering
(Table contents)
\caption{A table on a separate page}
\end{table}
\clearpage
\kant[10-13]
\end{document}
答案3
您可以简单地将表格放在其自己的页面上,而无需将其放在table
环境中。然后您可以在表格之前使用\thispagestyle{empty}
。要正确添加标题,请使用包\captionof
中的命令caption
。
答案4
因为这个问题目前还没有真正令人满意的答案,所以我想为艾伦的方法添加一种替代方法。
\clearpage
\thispagestyle{empty}
\begin{figure}
...
\end{figure}
\clearpage
这可以让你保持“浮动”,只是不再浮动了。这有点糟糕,但这至少让你有另一种毒药可供选择。