文章目錄
- LaTeX-設置表格大小
- 1.創建表格
- 2.設置表格的寬度
- 2.1控制表格每一列的寬度
- 2.2控制整個表格的寬度
- 3.設置表格的外觀
- 4.LaTeX繪制三線表
LaTeX-設置表格大小
本文介紹了LaTeX如何設置表格的大小、改變表格的外觀以及如何繪制三線表。
1.創建表格
在LaTeX中創建表很耗時,因此建議使用TablesGenerator.com在線工具為表導出LaTeX代碼。
下面是用LaTeX代碼創建一個表的示例:
\begin{center}
\begin{tabular}{ c c c }cell1 & cell2 & cell3 \\ cell4 & cell5 & cell6 \\ cell7 & cell8 & cell9
\end{tabular}
\end{center}
tabular
環境是LaTeX中創建表格的默認方法。您必須為這個環境指定一個參數;在這里我們使用{c c c}
,這告訴LaTeX有三列,并且每一列中的文本都必須居中對齊。
tabular
環境提供了額外的靈活性;例如,可以在每列之間放置分隔線。您可以通過在列參數中加入|
符號來實現這一點,比如{c|c|c}
表示有三列,每列之間都有垂直分隔線。如果想在表格頂部和底部添加水平分隔線,可以在tabular
環境的開始和結束處使用\hline
命令。
\begin{center}
\begin{tabular}{ |c|c|c| } \hlinecell1 & cell2 & cell3 \\ cell4 & cell5 & cell6 \\ cell7 & cell8 & cell9 \\ \hline
\end{tabular}
\end{center}
這里是上述示例中使用的構造的描述:
{ |c|c|c| }
:這聲明了一個表格將使用三列,每列之間由一條垂直線分隔。每個c
表示列中的內容將被居中對齊。您也可以使用r
來使文本右對齊,使用l
來使文本左對齊。\hline
:這將在表格頂部和底部插入一條水平線。您可以多次使用\hline
,沒有限制。cell1 & cell2 & cell3 \\
:每個&
是一個單元格分隔符,雙反斜杠\\
設置了此行的結束。
2.設置表格的寬度
2.1控制表格每一列的寬度
當格式化表格時,可能需要為每列或整個表格設置固定寬度。下面的例子在文檔導言區添加了array
包:\usepackage{array}
并使用它來設置固定的列寬度。
在這種情況下,可以使用像p{width}
這樣的列類型來定義固定寬度的列,其中width
是你希望該列具有的寬度。例如,如果您希望有三列,每列寬度分別為2cm、3cm和4cm,您可以在tabular
環境中這樣指定列格式:
\begin{tabular}{|p{2cm}|p{3cm}|p{4cm}|}
...
\end{tabular}
這樣,每列就會有指定的固定寬度,文本如果超過列寬會自動換行。這對于創建需要精確對齊的復雜表格特別有用。
\documentclass{article}
\usepackage{array}
\begin{document}
\begin{center}
\begin{tabular}{ | m{5em} | m{1cm}| m{1cm} | } \hlinecell1 dummy text dummy text dummy text& cell2 & cell3 \\ [1ex]\hlinecell1 dummy text dummy text dummy text & cell5 & cell6 \\\hlinecell7 & cell8 & cell9 \\ [3cm]\hline
\end{tabular}
\end{center}
\end{document}
在tabular
環境中,參數m{5em}
為第一列設置了5em的寬度(其他兩列為1cm),并將文本居中于單元格中間。對齊選項有m
代表中間,p
代表頂部,b
代表底部。使用這些參數時,文本會自動格式化以適應每個單元格內部。
[3cm]
為單元格增加了額外的空間。
2.2控制整個表格的寬度
如果不需要控制每個單元格的寬度,而是需要控制整個表格的寬度,并且然后均勻分配內部空間,那么使用tabularx
包。
\documentclass{article}
\usepackage{tabularx}
\begin{document}
\begin{tabularx}{0.8\textwidth} { | >{\raggedright\arraybackslash}X | >{\centering\arraybackslash}X | >{\raggedleft\arraybackslash}X | }\hlineitem 11 & item 12 & item 13 \\\hlineitem 21 & item 22 & item 23 \\
\hline
\end{tabularx}
\end{document}
tabularx
環境類似于tabular
,但更加靈活。要使用它,請在文檔導言區添加行\usepackage{tabularx}
。注意,環境開頭聲明是不同的,在示例中表格寬度被設置為0.8\textwidth
,即文檔文本寬度的80%。可以使用任何LaTeX單位來設置該值。
大括號內的前綴| >{\raggedright\arraybackslash}X | >{\centering\arraybackslash}X | >{\raggedleft\arraybackslash}X |
設置了每列的對齊方式:第一列向左對齊,第二列居中對齊,第三列向右對齊。
3.設置表格的外觀
有時可以通過增加列間距和行長度來提高表的美觀性。
\documentclass{article}
\setlength{\arrayrulewidth}{0.5mm}
\setlength{\tabcolsep}{18pt}
\renewcommand{\arraystretch}{1.5}
\begin{document}
\begin{tabular}{ p{3cm} p{3cm} p{3cm} }
\hline
\multicolumn{3}{c}{Country List} \\
\hline
Country Name or Area Name& ISO ALPHA 2 Code &ISO ALPHA 3 \\Afghanistan & AF &AFG \\
Aland Islands & AX & ALA \\
Albania &AL & ALB \\
Algeria &DZ & DZA \\
American Samoa & AS & ASM \\
Andorra & AD & AND \\
Angola & AO & AGO \\
\hline
\end{tabular}
\end{document}
以下是對命令的描述:
\setlength{\arrayrulewidth}{0.5mm}
:這設置了表格邊框的厚度為0.5mm。\setlength{\tabcolsep}{18pt}
:此命令設置了文本與其包含單元格的左/右邊框之間的空間為18pt。\renewcommand{\arraystretch}{1.5}
:每行的高度被設置為其默認高度的1.5倍。
縮寫 | 值 | 描述 |
---|---|---|
pt | 點 | 約等于1/72.27英寸,大約0.0138英寸或0.3515毫米。精確定義為美國打印師腳的1/864,即英尺的249/250。 |
mm | 毫米 | 一毫米。 |
cm | 厘米 | 一厘米。 |
in | 英寸 | 一英寸。 |
ex | 大致等于當前字體中小寫x 的高度(取決于使用的字體)。 | |
em | 大致等于當前字體中大寫M 的寬度(取決于使用的字體)。 | |
mu | 數學單位 | 等于1/18 em,其中em是從數學符號族中取得。 |
sp | 特殊點 | 一種低級測量單位,其中65536sp=1pt。 |
在overleaf中打開查看示例程序
4.LaTeX繪制三線表
% !TeX program = xelatex
\documentclass{article}
\usepackage{booktabs} % 引入booktabs包以使用增強的表格線命令
\usepackage{ctex} % 引入ctex宏包才可以顯示中文,以及代碼中的第一行\begin{document}\begin{table}[htbp]
\centering % 表格居中
\caption{示例三線表} % 表格標題
\label{tab:example} % 表格引用標簽
\begin{tabular}{ccc} % 三列都居中對齊
\toprule % 頂部粗線
列標題1 & 列標題2 & 列標題3 \\
\midrule % 中間細線
數據1 & 數據2 & 數據3 \\
數據4 & 數據5 & 數據6 \\
\bottomrule % 底部粗線
\end{tabular}
\end{table}\end{document}
在這個示例中,\usepackage{booktabs}
引入了booktabs
包,它提供了\toprule
、\midrule
和\bottomrule
命令來分別繪制頂部、中間和底部的線條,使得表格具有更好的視覺效果和更清晰的層次結構。表格的標題使用\caption
命令設置,而\label
命令用于之后引用表格。表格環境開始于\begin{table}
,結束于\end{table}
,而實際的表格內容則位于\begin{tabular}
和\end{tabular}
之間。
😃😃😃