当我编译以下代码时,出现错误 overfull hbox 并且我看不到表格的右端。有人知道如何修复它吗?
\begin{center}
\begin{tabular*}{\textwidth}{c @{\extracolsep{\fill}} ccc}
\multicolumn{4}{c}{\textbf{Tolérances d'ajustement}} \\
\hline
Alésage & Arbre &Appariement & Raisons\\
\hline
Manivelle&Axe&&\\
Roulements&Axes& M7 - js5&Charges faibles et variables, petit diamètrem bague exterieure ne coulisse pas, logement en une pièce\\
Cloches&Roulements&H7 - p6&Transmission de petits couples sans sécurité supplémentaire\\
Bielle&Coussinet&H7 - p6&\\
Coussinet&Axes bielle &IT7 - f7&\\
Palier & Tourillon&H7-p6&\\
Palier&Maneton&H7 - p6&\\
Plateau&pales & H8 - h7& Jeu pour colle\\
Pied helice&Fixation helice&H7 - js6& incertain\\
Opercule& Axe bielle& H7 - k6& incertain \\
Palier & Goupille &M6 - m6& serrage leger\\
Engrenages&Axes&H7 - p6&\\
\hline
\end{tabular*}
\end{center}
答案1
类型的列中的材料c
不会自动换行。因此,即使您已将其设置\textwidth
为环境的第一个参数tabular*
,也无法保证四列的总宽度实际上不会超过\textwidth
。这就是您的代码中发生的事情。
tabular*
我建议您不要使用环境,而是使用一个tabularx
环境,其总宽度为\textwidth
,最后一列的列类型为修改后的形式X
。下面代码中使用的特定修改将列材料排版为右侧不规则,同时仍允许连字符。
一些额外的建议:
使用包的宏
booktabs
——具体来说,,\toprule
和\midrule
——\bottomrule
代替基本\hline
指令。使用
l
而不是c
作为前三列的列类型。加载
caption
包并应用一些额外的标记来更清楚地区分表格的逻辑部分(标题与正文)。
\documentclass{article}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{tabularx,ragged2e,booktabs,caption}
\newcolumntype{L}{>{\RaggedRight\arraybackslash}X} % modified 'X' column type
\begin{document}
\begin{table}[ht!]
\captionsetup{font=bf,skip=0.5\baselineskip}
\caption*{Tolérances d'ajustement}
\begin{tabularx}{\textwidth}{@{}lllL@{}}
\toprule
Alésage & Arbre &Appariement & Raisons\\
\midrule
Manivelle&Axe&&\\
Roulements&Axes& M7 - js5&Charges faibles et variables, petit diamètrem bague extérieure ne coulisse pas, logement en une pièce\\
Cloches&Roulements&H7 - p6&Transmission de petits couples sans sécurité supplémentaire\\
Bielle&Coussinet&H7 - p6&\\
Coussinet&Axes bielle &IT7 - f7&\\
Palier & Tourillon&H7 - p6&\\
Palier&Maneton&H7 - p6&\\
Plateau&pales & H8 - h7& Jeu pour colle\\
Pied helice&Fixation helice&H7 - js6& incertain\\
Opercule& Axe bielle& H7 - k6& incertain \\
Palier & Goupille &M6 - m6& serrage léger\\
Engrenages&Axes&H7 - p6&\\
\bottomrule
\end{tabularx}
\end{table}
\end{document}
答案2
非常接近@Mico 的解决方案。如果您愿意,我保留了居中的前三列,在行之间添加了一些垂直填充\extrarowheight
,以区分多行单元格中的行和行,并更正了一些拼写错误/缺失的重音符号:
\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[showframe]{geometry}
\usepackage{ragged2e, array, tabularx, booktabs}
\renewcommand{\tabularxcolumn}[1]{>{\RaggedRight\arraybackslash}m{#1}}
\begin{document}
\begin{center}
\setlength\extrarowheight{3pt}
\begin{tabularx}{\linewidth}{ccc X}
\multicolumn{4}{c}{\textbf{Tolérances d'ajustement}} \\[1ex]
\toprule
Alésage & Arbre &Appariement & Raisons \\
\midrule
Manivelle & Axe & & \\
Roulements & Axes & M7-js5 & Charges faibles et variables, petit diamètre bague extérieure ne coulisse pas, logement en une pièce \\
Cloches & Roulements & H7-p6 & Transmission de petits couples sans sécurité supplémentaire\\
Bielle & Coussinet & H7-p6 & \\
Coussinet & Axes bielle & IT7-f7 & \\
Palier & Tourillon & H7-p6 & \\
Palier & Maneton & H7-p6 & \\
Plateau & Pales & H8-h7 & Jeu pour colle \\
Pied hélice & Fixation hélice & H7-js6 & incertain \\
Opercule & Axe bielle & H7-k6 & incertain \\
Palier & Goupille & M6-m6 & serrage léger \\
Engrenages & Axes & H7-p6\\
\bottomrule
\end{tabularx}
\end{center}
\end{document}
答案3
Latex 不会自动在表格中换行。由于最后一列包含非常长的文本元素,因此生成的表格非常宽。但是,您可以使用固定宽度的列来强制换行,例如p{4.2cm}
。
\documentclass{article}
\begin{document}
\begin{center}
\begin{tabular*}{\textwidth}{c @{\extracolsep{\fill}} ccp{4.2cm}}
\multicolumn{4}{c}{\textbf{Tolérances d'ajustement}} \\
\hline
Alésage & Arbre &Appariement & Raisons\\
\hline
Manivelle&Axe&&\\
Roulements&Axes& M7 - js5&Charges faibles et variables, petit diamètrem bague exterieure ne coulisse pas, logement en une pièce\\
Cloches&Roulements&H7 - p6&Transmission de petits couples sans sécurité supplémentaire\\
Bielle&Coussinet&H7 - p6&\\
Coussinet&Axes bielle &IT7 - f7&\\
Palier & Tourillon&H7-p6&\\
Palier&Maneton&H7 - p6&\\
Plateau&pales & H8 - h7& Jeu pour colle\\
Pied helice&Fixation helice&H7 - js6& incertain\\
Opercule& Axe bielle& H7 - k6& incertain \\
Palier & Goupille &M6 - m6& serrage leger\\
Engrenages&Axes&H7 - p6&\\
\hline
\end{tabular*}
\end{center}
\end{document}