表格中的 fbox 会抛出缺少的 endgroup

表格中的 fbox 会抛出缺少的 endgroup

我需要在表格周围画一个边框,所以我使用\fbox{}(有更好的方法吗?)。使用时可以工作threeparttable,但使用普通tabular乳胶会抛出错误,指出

Missing \endgroup inserted

我已经关闭了花括号。我遗漏了什么?我找到了帖子书页标签和微小的水平空间看起来它起作用了。参见下面的代码:

\begin{table}[h]
\fbox{
\centering\caption{\textbf{blabla 1}}
\begin{tabular*}{0.9\columnwidth}{@{\extracolsep{\fill}}lc}
\toprule 
\textbf{SF-36 Parameter} & \textbf{Mittelwert (SD)}\tabularnewline
\midrule
\midrule 
Körperliche Funktionsfähigkeit & 56,5 (33,6)\tabularnewline
\midrule 
Psychisches Wohlbefinden & 70,7 (17,8)\tabularnewline
\bottomrule
\end{tabular*}
}
\end{table}

答案1

您可以使用包裹mdframed在桌子周围画一个框:

在此处输入图片描述

\documentclass{article}
\usepackage{booktabs}
\usepackage[framemethod=tikz,xcolor=true]{mdframed}

\begin{document}
\begin{table}[h]
\begin{mdframed}[
    tikzsetting={align=center,draw=red,ultra thick,align=center},
    innerrightmargin=5pt,innerleftmargin=5pt,innerbottommargin=5pt
    ]
\begin{center}
\caption{\textbf{blabla 1}}
\begin{tabular*}{0.9\columnwidth}{@{\extracolsep{\fill}}lc}
\toprule 
\textbf{SF-36 Parameter} & \textbf{Mittelwert (SD)}\tabularnewline
\midrule
\midrule 
Körperliche Funktionsfähigkeit & 56,5 (33,6)\tabularnewline
\midrule 
Psychisches Wohlbefinden & 70,7 (17,8)\tabularnewline
\bottomrule
\end{tabular*}
\end{center}
\end{mdframed}
\end{table}
\end{document}

答案2

\fbox{..}强制执行受限水平模式在其内容上,即您不能在其中包含段落,除非您自己添加\parboxminipage。您需要使用允许在其中使用垂直模式的框架环境。

除上述内容外,如果与和选项一起使用mdframed,还有来自adjustbox同名包的环境。minipagefbox

您还应该反转上面和下面的跳过,\caption因为默认情况下它被设计为在事物之下,所以\belowcaptionskip通常是空的。

\documentclass{article}
\usepackage{booktabs}
\usepackage{adjustbox}

\begin{document}
\begin{table}[h]
\begin{adjustbox}{minipage=\linewidth-2\fboxsep-2\fboxrule,fbox}
\centering
\belowcaptionskip\abovecaptionskip
\abovecaptionskip=0pt
\caption{\textbf{blabla 1}}
\begin{tabular*}{0.9\columnwidth}{@{\extracolsep{\fill}}lc}
\toprule 
\textbf{SF-36 Parameter} & \textbf{Mittelwert (SD)}\tabularnewline
\midrule
\midrule 
Körperliche Funktionsfähigkeit & 56,5 (33,6)\tabularnewline
\midrule 
Psychisches Wohlbefinden & 70,7 (17,8)\tabularnewline
\bottomrule
\end{tabular*}
\end{adjustbox}
\end{table}
\end{document}

答案3

也许您可以为您的框架表定义一个新环境,如下所示(使用fancybox):

\documentclass{article}

\usepackage{booktabs} % http://www.ctan.org/pkg/booktabs
\usepackage{caption}  % http://www.ctan.org/pkg/caption
\usepackage{fancybox} % http://www.ctan.org/pkg/fancybox

\newlength{\mylength}%
\setlength{\mylength}{\textwidth}%
\addtolength{\mylength}{-2\fboxsep}%
\addtolength{\mylength}{-2\fboxrule}%

\newenvironment{FramedTable}%
  {\begin{table}[h]%
     \begin{Sbox}%
       \begin{minipage}{\mylength}%
         \centering}%
  {    \end{minipage}%
     \end{Sbox}\fbox{\TheSbox}%
   \end{table}}%

\begin{document}

\section*{Framed Tables!}

\begin{FramedTable}
  \caption{Hello World}%
  \begin{tabular}{@{}lll@{}}
    \toprule
    Apple & Banana & Cherry\\
    \midrule
    One & Two & Three\\
    \bottomrule
  \end{tabular}
\end{FramedTable}

\end{document}

此代码产生:

MWE 针对 OP 问题的解决方案

相关内容