如何調整'tabularx'的字體大小和寬度?

如何調整'tabularx'的字體大小和寬度?

這是我的程式碼,有些變數名稱很長:

\usepackage{tabularx}

\newcolumntype{b}{>{\hsize=0.9\hsize}X}
\newcolumntype{s}{>{\hsize=0.8\hsize}X}   

\begin{table}[htbp]
\begin{tabularx}{\linewidth}{|b|b|s|s|s|s|s|s|s|}
    \hline
     aaaa aaaaa aaaaa & djfh &  aaaaaaa aaaaaaaa aaaaaa & aaaaaaaaaa aaaaaaaaa & \multicolumn{5}{c|}{total}\\
    \hline
    - & - & - & - & kih & 1111 & 111 & 111 & 111 \\
    \hline
    aaaaaaa\_bbb & aaaaaaaaaaaaaa & 0 & 00 & - & - & - & - & - \\
    \hline
    aaaaaaaaaa & aaaaaaaaaa & 0 & 1111 & 0.000000 & 0.000000 & 0.000000 & 0.000000& 0.000000 \\
    \hline
    aaaaaaaa aa & aaaaaaaaaa & 0    & 1111 & 0.000000 & 0.000000 & 0.000000 & 0.000000& 0.000000 \\
     \hline
\end{tabularx}
 \end{table}

表格目前看起來像這樣: 表格的右側也有點奇怪,最後一行似乎有一些額外的長度,有什麼辦法可以解決這個問題嗎?非常感謝。 在此輸入影像描述

答案1

如果沒有換行,我也不會使用tabularx您也沒有提供範例文檔,因此我們不知道頁面大小,但在標準article文檔中,這需要適合\tiny,這只是可讀的。

在此輸入影像描述

\documentclass{article}

\newcommand\hd[2]{\multicolumn{1}{#1}{\begin{tabular}[t]{@{}c@{}}#2\end{tabular}}}

\usepackage{tabularx}
\begin{document}

\newcolumntype{b}{>{\hsize=0.9\hsize}X}
\newcolumntype{s}{>{\hsize=0.8\hsize}X}   

\begin{table}[htbp]
\begin{tabularx}{\linewidth}{|b|b|s|s|s|s|s|s|s|}
    \hline
     aaaa aaaaa aaaaa & djfh &  aaaaaaa aaaaaaaa aaaaaa & aaaaaaaaaa aaaaaaaaa & \multicolumn{5}{c|}{total}\\
    \hline
    - & - & - & - & kih & 1111 & 111 & 111 & 111 \\
    \hline
    aaaaaaa\_bbb & aaaaaaaaaaaaaa & 0 & 00 & - & - & - & - & - \\
    \hline
    aaaaaaaaaa & aaaaaaaaaa & 0 & 1111 & 0.000000 & 0.000000 & 0.000000 & 0.000000& 0.000000 \\
    \hline
    aaaaaaaa aa & aaaaaaaaaa & 0    & 1111 & 0.000000 & 0.000000 & 0.000000 & 0.000000& 0.000000 \\
     \hline
\end{tabularx}
 \end{table}

\noindent X\dotfill text text\dotfill X

\begin{table}[htbp]
\tiny
\centering
\setlength\tabcolsep{3.5pt}
\begin{tabular}{@{}|*{9}{l|}@{}}
    \hline
     \hd{|c|}{aaaa\\ aaaaa\\ aaaaa} & djfh & \hd{c|}{aaaaaaa\\ aaaaaaaa\\ aaaaaa} & \hd{c|}{aaaaaaaaaa\\ aaaaaaaaa} & \multicolumn{5}{c|}{total}\\
    \hline
    - & - & - & - & kih & 1111 & 111 & 111 & 111 \\
    \hline
    aaaaaaa\_bbb & aaaaaaaaaaaaaa & 0 & 00 & - & - & - & - & - \\
    \hline
    aaaaaaaaaa & aaaaaaaaaa & 0 & 1111 & 0.000000 & 0.000000 & 0.000000 & 0.000000& 0.000000 \\
    \hline
    aaaaaaaa aa & aaaaaaaaaa & 0    & 1111 & 0.000000 & 0.000000 & 0.000000 & 0.000000& 0.000000 \\
     \hline
\end{tabular}
 \end{table}

\end{document}

在實踐中,我會刪除所有水平和垂直線,這不會提高可讀性。

相關內容