Latex长表格

示例一:

输出一个长表格的示例。

代码:

\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中运行,无需添加任何新的代码。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值