1

I have a table that I would like to make it fit automatically into the margins of my document. Currently I am doing this with the \resizebox command, but it changes the font size too. So, the question is if there is a way to make the table fit into margins and at the same time keeping the font size in accordance with the rest of the test. It is ok for me if after that the text is breaken into several lines.

Find below a MWE:

\documentclass[11pt, twoside]{article}  % Always compile at least twice.

\usepackage{graphicx}
\usepackage[table,xcdraw]{xcolor}

\begin{document}

\begin{table}[h]
\centering
\resizebox{\textwidth}{!}{%
\begin{tabular}{| >{\columncolor[HTML]{FFCC67}} c| l|l|}
\cellcolor[HTML]{CD9934}{\color[HTML]{000000} \textbf{Sector}} & \cellcolor[HTML]{CD9934}{\color[HTML]{000000} \textbf{Función principal}}                                                                   & \cellcolor[HTML]{CD9934}{\color[HTML]{000000} \textbf{Recursos principales}} \\ \hline \hline 
\textbf{Empresas no financieras}                               & Producir bienes y servicios no financieros destinados a la venta                                                                            & Contraprestación de bienes y servicios en base a un precio                   \\
\textbf{Empresas financieras}                                  & Financiar (Captar, transformar y distribuir disponibilidades financieras)                                                                   & Contraspréstación de depósitos y créditos en base al tipo de interes         \\
\textbf{Empresas de seguros}                                   & Asegurar (garantizar un gasto en caso de siniestro)                                                                                         & Seguros en base a las primas                                                 \\
\textbf{Administraciones públicas}                             & \begin{tabular}[c]{@{}l@{}}Producir bienes y servicios que no se destinan a la venta\\ Redistribución de la renta y la riqueza\end{tabular} & Proveedor de servicios públicos financiados con ingresos coactivos           \\
\textbf{Instituciones privadas sin animo de lucro}             & Producir servicios no destinados a la venta para consumo individual                                                                         & Proveedores de servicios privados a través de aportaciones voluntarias       \\
\textbf{Hogares}                                               & Consumir bienes y servicios                                                                                                                 & Retribución a los factores productivos                                       \\
\textbf{Resto del mundo}                                       & \multicolumn{2}{l}{No se caracteriza por su función o por su fuente de ingresos sino que   se refiere a todas aquellas unidades que tienen relaciones con las anteriores   pero no son residentes}                        
\end{tabular}%
}
    \caption{Caption}
    \label{tab:my_label}
\end{table}

\end{document}
1
  • 2
    Never use adjustbox for tables! It yields inconsistent and possible unreadable font sizes. – Bernard Nov 17 '20 at 10:27
1

Here a possible realization based on tabularx; there is surely room for improvement. I have removed the declarations of black text which were quite useless.

\documentclass[11pt, twoside]{article}

\usepackage{graphicx}
\usepackage[table,xcdraw]{xcolor}
\usepackage{tabularx}

\begin{document}

\begin{table}
\centering
\renewcommand*{\arraystretch}{1.5}
\begin{tabularx}{\linewidth}
   {
    >{\columncolor[HTML]{FFCC67}\bfseries\raggedright}p{3.4cm}
    *{2}{>{\raggedright\arraybackslash}X}
   }
\rowcolor[HTML]{CD9934} Sector
& \textbf{Función principal}  
& \textbf{Recursos principales}
\\
\hline \hline
Empresas no financieras
& Producir bienes y servicios no financieros destinados a la venta
& Contraprestación de bienes y servicios en base a un precio
\\
Empresas financieras
& Financiar (Captar, transformar y distribuir disponibilidades financieras)
& Contraspréstación de depósitos y créditos en base al tipo de interes
\\
Empresas de seguros
& Asegurar (garantizar un gasto en caso de siniestro)
& Seguros en base a las primas
\\
Administraciones públicas
& Producir bienes y servicios que no se destinan a la venta\newline
  Redistribución de la renta y la riqueza
& Proveedor de servicios públicos financiados con ingresos coactivos
\\
Instituciones privadas sin animo de lucro
& Producir servicios no destinados a la venta para consumo individual
& Proveedores de servicios privados a través de aportaciones voluntarias
\\
Hogares
& Consumir bienes y servicios
& Retribución a los factores productivos
\\
Resto del mundo
& \multicolumn{2}{>{\hsize=\dimexpr2\hsize+2\tabcolsep+\arrayrulewidth\relax}X}{No se caracteriza por su función o por su fuente de ingresos sino que   se refiere a todas aquellas unidades que tienen relaciones con las anteriores   pero no son residentes}   
\end{tabularx}
\caption{Caption}
\label{tab:my_label}
\end{table}

\end{document}

enter image description here

The trickiest bit is the last \multicolumn spanning two Xcolumns. The bit

\hsize=\dimexpr2\hsize+2\tabcolsep+\arrayrulewidth\relax

tells that the \multicolumn must keep the column separation and the rule thickness (vanishing in this case) into account. I also increased \arraystretch to make the separation between the different blocks more clear.

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.