sin tableambiente

sin tableambiente

Tengo un montón de mesas dispuestas así: ingrese la descripción de la imagen aquí

\documentclass{article}

\begin{document}
\begin{table}
\begin{minipage}[c][1\totalheight][t]{0.45\textwidth}%
\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|}
\hline 
a & b & c & d & e & f & g & h\\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
\hline 
a & b & c & d & e & f & g & h\\
\hline 
\end{tabular}
\par\end{center}
\caption{Table \#1}

\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|}
\hline 
a & b & c & d & e & f & g & h\\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
\hline 
a & b & c & d & e & f & g & h\\
\hline 
\end{tabular}%
\par\end{center}
\caption{Table \#2}
\end{minipage}\hfill{}%
\begin{minipage}[c][1\totalheight][t]{0.45\textwidth}%

\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|}
\hline 
a & b & c & d & e & f & g & h\\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
\hline 
a & b & c & d & e & f & g & h\\
\hline 
\end{tabular}
\par\end{center}
\caption{Table \#3}

\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|}
\hline 
a & b & c & d & e & f & g & h\\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
\hline 
a & b & c & d & e & f & g & h\\
\hline 
\end{tabular}%
\par\end{center}
\caption{Table \#4}
\end{minipage}
\end{table}

\end{document}

Y estoy tratando de hacer que las llaves abarquen varias tablas de esta manera:


ingrese la descripción de la imagen aquí


O:


ingrese la descripción de la imagen aquí


O:


ingrese la descripción de la imagen aquí


Aquí hay un ejemplode algo que probé que usa los márgenes de la página. Funciona muy bien para texto normal, pero parece que no con objetos como tablas:

\newcommand\BrText[2]{%
  \par\smallskip
   \noindent\makebox[\textwidth][r]{$\text{#1}\left\{
    \begin{minipage}{\textwidth}
    #2
    \end{minipage}
  \right.\nulldelimiterspace=0pt$}\par\smallskip
}    

Intenté solucionar el problema de otras maneras, pero no pensé en aferrarme al código que no funcionaba en ese momento. De todos modos, recuerdo haber leído en alguna parte que es posible, pero no estoy seguro de dónde. Cualquier idea de cómo hacer esto sería muy apreciada.

Respuesta1

ingrese la descripción de la imagen aquí

\documentclass{article}

\begin{document}
\begin{table}
$\left\{
\begin{minipage}[c]{0.45\textwidth}%
\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|}
\hline 
a & b & c & d & e & f & g & h\\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
\hline 
a & b & c & d & e & f & g & h\\
\hline 
\end{tabular}
\end{center}
\caption{Table \#1}

\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|}
\hline 
a & b & c & d & e & f & g & h\\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
\hline 
a & b & c & d & e & f & g & h\\
\hline 
\end{tabular}%
\end{center}
\caption{Table \#2}
\end{minipage}
\begin{minipage}[c]{0.45\textwidth}%

\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|}
\hline 
a & b & c & d & e & f & g & h\\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
\hline 
a & b & c & d & e & f & g & h\\
\hline 
\end{tabular}
\end{center}
\caption{Table \#3}

\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|}
\hline 
a & b & c & d & e & f & g & h\\ 
\hline 
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
\hline 
a & b & c & d & e & f & g & h\\
\hline 
\end{tabular}%
\end{center}
\caption{Table \#4}
\end{minipage}
\right\}$
\end{table}

\end{document}

Respuesta2

Proporciono dos ambientes, mybracelefty mybraceright, para sujetar convenientemente material horizontal. Ambos producen material horizontal (puedes usarlos en medio de un párrafo) del tamaño justo requerido.

Una propiedad notable de mi solución en comparación con la de David es que produce material horizontal que envuelve firmemente los tabularambientes, o cualquier cosa que decidas usar en su lugar (no tienes que adivinar la 0.45\textwidthlongitud). Si reduce el ancho de estos elementos, verá que mis llaves permanecen a la distancia personalizable \myhsepdel contenido entre llaves, lo cual no es el caso con la solución de David (tendrá una brecha mayor entre llaves y contenidos porque minipagetendrá más espacios en blanco en el interior, a la izquierda y a la derecha del material tabular).

Una parte complicada del trabajo con los requisitos que establecí es encontrar el ancho adecuado para centrar dos tabularentornos y dos títulos que van juntos. Para esto utilizo el eqparboxpaquete. Este paquete se basa en el uso adecuado de las etiquetas (para cada etiqueta, encuentra el ancho máximo y le permite usarlo como una longitud normal; este es un paquete extremadamente conveniente, ¡excelente!). Esté atento a las etiquetas en la fuente, van por tres (unopor un minipageque encierra herméticamentedos tabularentornos y sus subtítulos asociados). Este proceso requiere compilar el documento al menos dos veces.

sin tableambiente

En esta solución, tableno se utiliza el entorno, por lo tanto nada flota. Se trata principalmente de trabajo de boxeo. \captionofdel captionpaquete se utiliza para producir la apariencia habitual de los títulos de tabla estándar.

\documentclass{article}
\usepackage[hscale=0.65]{geometry} % enlarge margins a little bit for the example
\usepackage{eqparbox}
\usepackage{caption}

\makeatletter

\newsavebox{\mybox}
\newlength{\myhsep} % Horizontal separation between brace and contents
\setlength{\myhsep}{0.7em}

\newenvironment{mybraceleft}{%
  \begin{lrbox}{\mybox}
  }{%
  \end{lrbox}%
  $\m@th \left\{ \kern\myhsep \vcenter{\hbox{\usebox{\mybox}}} \right.$%
  \kern-\nulldelimiterspace
  \ignorespacesafterend
}

\newenvironment{mybraceright}{%
  \begin{lrbox}{\mybox}
  }{%
  \end{lrbox}%
  \leavevmode
  \kern-\nulldelimiterspace
  $\m@th \left. \vcenter{\hbox{\usebox{\mybox}}} \kern\myhsep \right\}$%
  \ignorespacesafterend
}

\makeatother

\begin{document}

\noindent
\begin{mybraceleft}
  \begin{minipage}{\eqboxwidth{tag1}}
    \centering
    \begin{eqminipage}[c]{tag1}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \captionof{table}{Table \#1}
    \bigskip

    \begin{eqminipage}[c]{tag1}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \captionof{table}{Table \#2}
  \end{minipage}
\end{mybraceleft}% spaces would be ignored here anyway because of the
                 % \ignorespacesafterend we used
\hfill
\begin{mybraceleft}
  \begin{minipage}{\eqboxwidth{tag2}}
    \centering
    \begin{eqminipage}[c]{tag2}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \captionof{table}{Table \#3}
    \bigskip

    \begin{eqminipage}[c]{tag2}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \captionof{table}{Table \#4}
  \end{minipage}
\end{mybraceleft}

\vspace{2cm}
\noindent
\begin{mybraceleft}
  \begin{minipage}{\eqboxwidth{tag3}}
    \centering
    \begin{eqminipage}[c]{tag3}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \captionof{table}{Table \#5}
    \bigskip

    \begin{eqminipage}[c]{tag3}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \captionof{table}{Table \#6}
  \end{minipage}
\end{mybraceleft}% spaces would be ignored here anyway because of the
                 % \ignorespacesafterend we used
\hfill
\begin{mybraceright}
  \begin{minipage}{\eqboxwidth{tag4}}
    \centering
    \begin{eqminipage}[c]{tag4}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \captionof{table}{Table \#7}
    \bigskip

    \begin{eqminipage}[c]{tag4}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \captionof{table}{Table \#8}
  \end{minipage}
\end{mybraceright}

\end{document}

captura de pantalla

Envolver material reforzado dentro de las mesas

Esto se acerca al ejemplo anterior, la única diferencia es que permitimos tabularque floten dos fragmentos grandes (cada uno con cuatro entornos). Por lo tanto, usamos el tableentorno y podemos usarlo \captionen lugar de \captionof. captionEn este caso no es necesario el paquete. Esto es similar a lo que hizo David, excepto por la sintaxis de entrada ( mybracelefty mybracerightaquí ) y el espaciado horizontal alrededor de los tirantes: mis tirantes permanecen a una distancia constante y personalizable del material apuntalado ( \myhsep).

Como ya se mencionó, esto requiere dos ejecuciones de compilación para permitir eqparboxrealizar su trabajo.

\documentclass{article}
\usepackage[hscale=0.65]{geometry} % enlarge margins a little bit for the example
\usepackage{eqparbox}

\makeatletter

\newsavebox{\mybox}
\newlength{\myhsep} % Horizontal separation between brace and contents
\setlength{\myhsep}{0.7em}

\newenvironment{mybraceleft}{%
  \begin{lrbox}{\mybox}
  }{%
  \end{lrbox}%
  $\m@th \left\{ \kern\myhsep \vcenter{\hbox{\usebox{\mybox}}} \right.$%
  \kern-\nulldelimiterspace
  \ignorespacesafterend
}

\newenvironment{mybraceright}{%
  \begin{lrbox}{\mybox}
  }{%
  \end{lrbox}%
  \leavevmode
  \kern-\nulldelimiterspace
  $\m@th \left. \vcenter{\hbox{\usebox{\mybox}}} \kern\myhsep \right\}$%
  \ignorespacesafterend
}

\makeatother

\begin{document}

\begin{table}
\centering
\begin{mybraceleft}
  \begin{minipage}{\eqboxwidth{tag1}}
    \centering
    \begin{eqminipage}[c]{tag1}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \caption{Table \#1}
    \bigskip

    \begin{eqminipage}[c]{tag1}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \caption{Table \#2}
  \end{minipage}
\end{mybraceleft}% spaces would be ignored here anyway because of the
                 % \ignorespacesafterend we used
\hfill
\begin{mybraceleft}
  \begin{minipage}{\eqboxwidth{tag2}}
    \centering
    \begin{eqminipage}[c]{tag2}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \caption{Table \#3}
    \bigskip

    \begin{eqminipage}[c]{tag2}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \caption{Table \#4}
  \end{minipage}
\end{mybraceleft}
\end{table}

\begin{table}
\centering
\begin{mybraceleft}
  \begin{minipage}{\eqboxwidth{tag3}}
    \centering
    \begin{eqminipage}[c]{tag3}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \caption{Table \#5}
    \bigskip

    \begin{eqminipage}[c]{tag3}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \caption{Table \#6}
  \end{minipage}
\end{mybraceleft}% spaces would be ignored here anyway because of the
                 % \ignorespacesafterend we used
\hfill
\begin{mybraceright}
  \begin{minipage}{\eqboxwidth{tag4}}
    \centering
    \begin{eqminipage}[c]{tag4}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \caption{Table \#7}
    \bigskip

    \begin{eqminipage}[c]{tag4}
    \begin{tabular}{@{}|c|c|c|c|c|c|c|c|@{}}
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
      1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
      \hline
      a & b & c & d & e & f & g & h\\
      \hline
    \end{tabular}
    \end{eqminipage}%
    \caption{Table \#8}
  \end{minipage}
\end{mybraceright}
\end{table}

\end{document}

captura de pantalla

información relacionada