如何适应我的桌子尺寸?

如何适应我的桌子尺寸?

我的问题出在表格的第三列。它太大了,我无法调整它的宽度。它占据了我文档中的其他内容。 在此处输入图片描述

\documentclass{article}
\begin{document}
\begin{table}
\begin{tabularx}{\textwidth}{@{}c|l|X@{}}
  \toprule
  Security Level & Security Mode & Protection \\
  \midrule
  0 & No Security     & Data is not encrypted \newline Data authenticity is not validated   \\\hline 
  1 & AES-CBC-MAC-32  & Data is not encrypted \newline Data authenticity using a 32-bit MIC \\\hline   
  2 & AES-CBC-MAC-64  & Data is not encrypted \newline Data authenticity using 64-bit MIC   \\\hline   
  3 & AES-CBC-MAC-128 & Data is not encrypted \newline Data authenticity using 128-bit MIC  \\\hline   
  4 & AES-CTR         & Data is encrypted \newline Data authenticity is not validated       \\\hline   
  5 & AES-CCM-32      & Data is encrypted \newline Data authenticity using a 32-bit MIC     \\\hline   
  6 & AES-CCM-64      & Data is nencrypted \newline Data authenticity using a 64-bit MIC     \\\hline   
  7 & AES-CCM-128     & Data is encrypted \newline Data authenticity using a 128-bit MIC    \\\hline
  \bottomrule
\end{tabularx}
\caption{\label{tab:tab1} {Security modes in the IEEE802.15.4e Standard. \cite{19}}}
\end{table}
\end{document}

答案1

一些建议:

1)不要使用垂直线,尽量减少水平线。

2)tabulary可能是一个更好的选择,以tabularx适应具有不同宽度的列和带有换行符的对齐的表格。

3) 重新设计是让表格更小、更清晰、更美观的最重要的一点。遗憾的是,没有可以为您重新设计表格的软件包,而且这是一项依赖于内容/上下文且非常主观的任务。因此,无论您是否喜欢本例中提议的重新设计,请相信我:简化意味着改进。

\documentclass{article}
\usepackage{tabulary,booktabs}
\begin{document}
\begin{table}
\centering
\begin{tabulary}{\textwidth}{CLCL}
\toprule
\multicolumn{2}{c}{Security} & 
\multicolumn{2}{c}{Data protection} \\\cmidrule(rl){1-2}\cmidrule(rl){3-4}
Level & \hfil Mode & Encryption & \hfil Authenticity\\
%\midrule
\cmidrule(rl){1-1}\cmidrule(rl){2-2}\cmidrule(rl){3-3}\cmidrule(rl){4-4}
  0 & No Security     & No  &  Not validated   \\
  1 & AES-CBC-MAC-32  & No  &  32-bit MIC \\   
  2 & AES-CBC-MAC-64  & No  &  64-bit MIC   \\   
  3 & AES-CBC-MAC-128 & No  &  128-bit MIC  \\   
  4 & AES-CTR         & Yes &  Not validated       \\   
  5 & AES-CCM-32      & Yes &  32-bit MIC     \\   
  6 & AES-CCM-64      & Yes &  64-bit MIC     \\   
  7 & AES-CCM-128     & Yes &  128-bit MIC    \\
  \bottomrule
\end{tabulary}
\caption{\label{tab:tab1} {Security modes in the IEEE802.15.4e Standard. \cite{19}}}
\end{table}
\end{document}

姆韦

答案2

Data not encrypted \newline authenticity uses 32-bit MIC正如我最近在回答另一个与表格相关的问题时所说:要简洁。您已经不会使用完整的句子了,所以使用etc并没有什么问题。

您还可以通过使用另一行作为列标题的公共部分(如我在这里所做的那样)或作为Security \newline Level & Security \newline Mode & Protection标题行,使第一列变得更窄。

\documentclass{article}
\usepackage{tabularx}
\usepackage{booktabs}
\begin{document}
\begin{table}
\begin{tabularx}{\textwidth}{@{}c l X@{}}

  \toprule
  \multicolumn{2}{l}{Security}\\
   Level &  Mode & Protection \\
  \midrule
  0 & No Security     & Data not encrypted \newline Authenticity not validated   \\\hline 
  1 & AES-CBC-MAC-32  & Data not encrypted \newline Authenticity uses 32-bit MIC \\\hline   
  2 & AES-CBC-MAC-64  & Data not encrypted \newline Authenticity using 64-bit MIC   \\\hline   
  3 & AES-CBC-MAC-128 & Data not encrypted \newline Authenticity using 128-bit MIC  \\\hline   
  4 & AES-CTR         & Data encrypted \newline Authenticity not validated       \\\hline   
  5 & AES-CCM-32      & Data encrypted \newline Authenticity uses 32-bit MIC     \\\hline   
  6 & AES-CCM-64      & Data encrypted \newline Authenticity uses 64-bit MIC     \\\hline   
  7 & AES-CCM-128     & Data encrypted \newline Authenticity uses 128-bit MIC    \\\hline
  \bottomrule
\end{tabularx}
\caption{\label{tab:tab1} {Security modes in the IEEE802.15.4e Standard. \cite{19}}}
\end{table}
\end{document}

在此处输入图片描述

请注意另外几件事:

  • 如果您要使用booktabs,请阅读手册并删除垂直线。如果您坚持使用垂直线,请不要将其用于booktabs水平线。
  • \label{tab:tab1}违背了正确使用交叉引用的目的。要符合语义,这样当您插入较早的表格时就不会感到困惑(例如:)\label{tab:SecurityModes}

相关内容