示例一:
输出一个长表格的示例。
代码:
\documentclass[jou,apacite]{apa6}
\usepackage{multirow}
\usepackage{array}
\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}
\usepackage{longtable}
%\usepackage{showframe} % to visualize writing area and margins ...
\usepackage{blindtext} % to generate dummy text
\begin{document}
\Blindtext
\renewcommand{\arraystretch}{1.3}
\begin{longtable}{|p{2.8cm}|p{0.6cm}|p{1.6cm}|p{2.2cm}|P{0.8cm}|p{2.6cm}|p{2.5cm}|}
\caption{My data}
\label{tab:table3}\\
\hline
\textbf{Name} & \textbf{Year} & \textbf{ID} & \textbf{Address} & \textbf{Salary} & \textbf{Skills} & \textbf{Qualifications} \\
\hline
Some text & some text & some text & 5 & some text & Som text &\\
\hline
Some text & some text & some text & 5 & some text & Som text &\\
\hline
Some text & some text & some text & 5 & some text & Som text &\\
\hline
Some text & some text & some text & 5 & some text & Som text &\\
\hline
Some text & some text & some text & 5 & some text & Som text &\\
\hline
Some text & some text & some text & 5 & some text & Som text &\\
\hline
Some text & some text & some text & 5 & some text & Som text &\\
\hline
Some text & some text & some text & 5 & some text & Som text &\\
\hline
Some text & some text & some text & 5 & some text & Som text &\\
\hline
\end{longtable}
\blindtext
\end{document}
代码解释如下:
这段文本是一个使用APA6文档类的LaTeX代码示例。它包括一些用于排版表格的包和命令。
首先,代码声明了文档的类参数为"jou"和"apacite",这意味着文档将按照APA6规范进行排版,并使用apacite包来生成APA格式的引用和参考文献。
然后,代码导入了一些额外的包。"multirow"包用于在表格中创建合并的行,"array"包提供了一些额外的列类型定义,"longtable"包用于创建可以跨页的长表格。
接下来,代码使用了两个为表格定制的包。"showframe"包用于可视化写作区域和边距,"blindtext"包用于生成一个假文本段落,用于填充表格之间的空白。
在文档的正文部分,先使用"\Blindtext"命令生成一段假文本。
然后,使用"\renewcommand{\arraystretch}{1.3}"命令设置表格行高的倍数为1.3。
接着,开始定义长表格的结构。使用"longtable"环境,并指定列的格式。表格有7列,列的宽度分别是2.8cm、0.6cm、1.6cm、2.2cm、0.8cm、2.6cm和2.5cm。其中,"P{1.3cm}"是一个自定义的列格式,将文本在该列中居中显示。表格的边框使用"|"(垂直线)和"\hline"(水平线)进行定义。
在表格开始之前,使用"\caption"命令定义表格标题为"My data",并使用"\label"命令为表格添加一个标签,以便在文档其他地方引用该表格。
接下来,以"\hline"命令开始表格的头部,并使用"\textbf"命令设置列标题的文本为粗体。
然后,表格的内容使用"\hline"和"&"命令进行分割,并使用"\\"命令表示换行。
最后,使用"\blindtext"命令生成另一段假文本,并以"\end{document}"结束整个文档。
整个代码的目的是生成一个带有长表格的APA6格式文档,并展示了如何定义表格的结构和样式。代码中的具体数据均用"some text"和数字5代替,实际使用时需要根据实际情况进行修改。
输出结果为:
来源:tables - How to use longtable in latex? - TeX - LaTeX Stack Exchange
示例2:
代码:
\documentclass{article}
\usepackage[a6paper,vmargin=6cm,hmargin=5mm]{geometry}
\usepackage{array,longtable}
\renewcommand*{\arraystretch}{1.5}
\begin{document}
\begin{longtable}{|*3{p{2cm}|}}
\hline
{\bf First} & {\bf Second} & {\bf Third} \\ \hline
Text & Other Text & Other Text 2 \\
& Other Text 3 & \\
& Other Text 4 & \\ \hline
Text 5 & Other Text 6 & Other Text 7 \\
& Other Text 8 & \\
& Other Text 9 & \\ \hline
\end{longtable}
\end{document}
代码解释:
这段代码是一个使用LaTeX语言编写的文档,它创建了一个包含表格的长表格(longtable)。以下是对代码的解释:
- `\documentclass{article}`:定义文档类,这里使用的是article类,表示创建一篇文章。
- `\usepackage[a6paper,vmargin=6cm,hmargin=5mm]{geometry}`:导入geometry宏包,用于设置页面的尺寸和边距。
- `\usepackage{array,longtable}`:导入array和longtable宏包,用于创建和定制表格。
- `\renewcommand*{\arraystretch}{1.5}`:重新定义表格行的垂直间距,使得表格更易读。
接下来的代码是文档的内容:
- `\begin{document}`和`\end{document}`:这是文档的起始和结束标记。
- `\begin{longtable}{|*3{p{2cm}|}}`:开始创建一个长表格,使用`longtable`环境,并指定表格的列数为3。每个列都使用2cm的固定宽度,并设置为左对齐。
- `\hline`:添加一条水平线,用于表示表格的顶部。
- `{\bf First} & {\bf Second} & {\bf Third} \\ \hline`:表头行,使用粗体字显示标题内容,并使用`&`分隔每个单元格,`\\`表示结束该行,并添加一条水平线。
- `Text & Other Text & Other Text 2 \\`:第一行数据,每个单元格的文本内容通过`&`分隔。
- `& Other Text 3 & \\`:第二行数据,第一列为空,其他列有文本。
- `& Other Text 4 & \\ \hline`:第三行数据,第一列为空,其他列有文本。该行之后添加一条水平线。
- `Text 5 & Other Text 6 & Other Text 7 \\`:第四行数据,第一列有文本,其他列有文本。
- `& Other Text 8 & \\`:第五行数据,第一列为空,其他列有文本。
- `& Other Text 9 & \\ \hline`:第六行数据,第一列为空,其他列有文本。该行之后添加一条水平线。
这样就创建了一个长表格,包含两个标题行与两组数据行。每一列的宽度都被限制为2cm,并且通过添加水平线来划分不同的行和列。
运行结果:
来源:How to convert table to longtable being able to break across pages? - TeX - LaTeX Stack Exchange
示例三:
\documentclass{article}%
\usepackage[T1]{fontenc}%
\usepackage[utf8]{inputenc}%
\usepackage{lmodern}%
\usepackage{textcomp}%
\usepackage{lastpage}%
\usepackage[landscape=True,margin=0.5in,headheight=20pt,headsep=10pt,includeheadfoot=True]{geometry}%
\usepackage{longtable}%
\usepackage{tabu}%
%
%
%
\begin{document}%
\normalsize%
\begin{longtabu}{X[r] X[r] X[r] X[r] X[r] X[r]}%
\textbf{Prov}&\textbf{Num}&\textbf{CurBal}&\textbf{IntPay}&\textbf{Total}&\textbf{IntR}\\%
\hline%
&&&&&\\%
\endhead%
Prov&Num&CurBal&IntPay&Total&IntR\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
\end{longtabu}%
\textbf{Grand Total:}%
\hfill%
\textbf{Total}%
\end{document}
代码解释:
这段代码是用LaTeX编写的,用于生成一个包含长表格的文档。以下是代码的解释:
- \documentclass{article}:指定文档的类别为article,表示生成一篇文章。
- \usepackage{T1}{fontenc}:加载字体编码包,用于支持T1字体编码。
- \usepackage[utf8]{inputenc}:加载输入编码包,用于支持UTF-8编码。
- \usepackage{lmodern}:加载字体包,使用lmodern字体。
- \usepackage{textcomp}:加载文本符号包,用于支持文本符号。
- \usepackage{lastpage}:加载页面包,用于获取总页数。
- \usepackage[landscape=True,margin=0.5in,headheight=20pt,headsep=10pt,includeheadfoot=True]{geometry}:加载页面布局包,用于设置页面的布局参数,包括纸张方向、边距、页眉高度等。
- \usepackage{longtable}:加载长表格包,用于生成跨页的表格。
- \usepackage{tabu}:加载表格包,用于生成表格。
- \begin{document}:文档的开始。
- \normalsize:设置正文字体大小为正常大小。
- \begin{longtabu}{X[r] X[r] X[r] X[r] X[r] X[r]}:开始一个长表格环境,其中X[r]表示每列的对齐方式为右对齐。【r即right,l即left,如果表格中右对齐或者左对齐没有印象,可以打开电脑中的Excel,输入数据后,看下右对齐、左对齐后的效果。】
- \textbf{Prov}&\textbf{Num}&\textbf{CurBal}&\textbf{IntPay}&\textbf{Total}&\textbf{IntR}:表格的表头。
- \hline:表格的横线。
- &&&&&:表格中的空行。
- \endhead:表格的结束。
- Prov&Num&CurBal&IntPay&Total&IntR:表格的表头。
- PA&9&\$100&\%10&\$1000&Test:表格的内容。
- \textbf{Grand Total:}\hfill\textbf{Total}:文档中的一行文字,左侧为“Grand Total:”,右侧为“Total”。
- \end{document}:文档的结束。
代码结果:
来源:
Longtabu example — PyLaTeX 1.3.2 documentation
总结:
上面给出了三个关于表格分段的例子,其中第三个例子激发我们灵感,可以使用第三个例子中的- \begin{longtabu}{X[r] X[r] X[r] X[r] X[r] X[r]}:开始一个长表格环境,其中X[r]表示每列的对齐方式为右对齐。来让表格平铺在纸上,达到一个非常好的效果,不然表格可能是占页面的一部分。自己用代码跑一下就可以看到结果了。上面的三个代码段都是独立的代码段,可以直接放在tex中运行,无需添加任何新的代码。