LaTeX 表格(table)解析 教程

表格基本模板

\begin{table}[]
    \centering
    \begin{tabular}{} 
    \end{tabular}
    \caption{Caption}
    \label{tab:my_label}
\end{table}

其中主体为tabular下文会讲解,\centering控制表格是否居中,\Caption控制表格的标题,\label全局唯一的id,用于文中引用。

基本用法

本小节单纯讲解tabular中的使用

基本表格

\begin{tabular}{cc} %% 有两个字母表示有两列,c 表示居中,还可以选择 l 或者 r
A&B\\ % \\ 表示换行,& 表示分割线
C&D\\
\end{tabular}

在这里插入图片描述
表格列数需要在参数中表明,行数不限制,使用\换行即可。

添加边框

如果要添加边框(边框由分割线组成),对列添加分割线需要在参数中相应位置添加”|” ,对行分割线则使用”\hline” 或”\cline”

\begin{tabular}{|cc||} % 因为右侧有两道线,所以相应位置显示两条分割线
A&B\\\hline
C&D\\\cline{0-1} % 数字代表列数,从零开始,表示从 a-b
E&F\\\cline{0-0}
G&H\\\cline{1-1} % 边框可以任意重叠,但横向边框显示多条并不好控制,因此不推荐使用多条分割线完成特殊需求
I&J\\\cline{0-0}\cline{1-1}
\end{tabular}

在这里插入图片描述

表格合并

合并多列

有时后,会遇到合并表格的需求,合并表格需要使用multirow这个库, 并使用到 \multicolumn 和 \multirow 这两个方法,

\usepackage{multirow}
\usepackage{multicolumn}

其中合并多列比较简单,在要合并的位置填入相应的命令,随后减少相 应的分隔符即可

\begin{tabular}{|c|c|c|c|c|}
\hline
1.0&2.0&3.0&4.0&5.0\\
\hline
6.0&\multicolumn{3}{c|}{合并三列}&7.0\\
\hline
8.0&9.0&10.0&11.0&12.0\\
\hline
\end{tabular}

注意中文显示不全的问题
在这里插入图片描述

合并多行

合并多行同理,不过在相同列的位置需要空出来,并在设置分割线的时 候将相应的列的位置空出来

\documentclass{ctexart}
\usepackage{multirow}
\begin{document}
\begin{tabular}{|c|c|c|}
\hline
1.0&2.0&3.0\\
\hline
4.0&\multirow{3}{*}{合并三行}&5.0\\
\cline{1-1}
\cline{3-3}
6.0&&7.0\\
\cline{1-1}
\cline{3-3}
8.0&&9.0\\
\hline
10.0&11.0&12.0\\
\hline
\end{tabular}
\end{document}

在这里插入图片描述

多行多列合并

如果要同时合并多行多列,则需要对两个命令嵌套使用:

\documentclass{ctexart}
\usepackage{multirow}
\begin{document}
\begin{tabular}{|c|c|c|c|}
\hline
1.0&2.0&3.0&4.0\\
\hline
5.0&\multicolumn{2}{c|}{\multirow{3}{*}{合并三行两列}}&6.0\\
\cline{1-1}
\cline{4-4}
7.0&\multicolumn{2}{c|}{}&8.0\\
\cline{1-1}
\cline{4-4}
9.0&\multicolumn{2}{c|}{}&10.0\\
\hline
11.0&12.0&13.0&14.0\\
\hline
\end{tabular}
\end{document}

在这里插入图片描述

三线表

用到的宏包主要是 booktabs ,即:在导言区加入:

\usepackage{booktabs}

下面是普通三线表的代码和效果:

\documentclass{ctexart}
\usepackage{booktabs}
\begin{document}
\begin{table}[htbp]
\centering
\caption{\label{tab:test}示例表格}
\begin{tabular}{lcl}
\toprule
。。 & 。。 & 。。 \\
\midrule
。。 & 。。 & 。。 \\
。。 & 。。 & 。。 \\
。。 & 。。 & 。。 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}

在这里插入图片描述
参考: LaTeX手册.

### LaTeX 表格识别工具与方法 对于LaTeX表格的识别,目前存在多种工具和方法可以帮助实现这一目标。一种高效的方式是利用PaddleOCR结合ERNIE模型来完成表格信息的提取并自动生成LaTeX代码[^3]。 #### 使用PaddleOCR与ERNIE进行表格识别 PaddleOCR是一个强大的光学字符识别库,支持多语言文字检测与识别。当与ERNIE相结合时,该组合不仅能够精准地读取图像中的文本内容,还能理解上下文关系,从而更准确地解析复杂结构化的表格数据。此过程涉及以下几个方面: - **图片预处理**:对含有表格的图片执行必要的裁剪、旋转校正等操作。 - **表格线检测**:通过算法分析图像中的线条特征,确定单元格边界位置。 - **文本区域定位**:标记出每一个可能包含有效信息的文字区块。 - **内容抽取转换**:运用自然语言处理技术将获取到的信息转化为标准格式,并最终生成对应的LaTeX源码。 这种方法显著降低了手动编写LaTeX命令的工作量,提高了效率的同时也减少了错误发生的可能性。 ```python from paddleocr import PaddleOCR, draw_ocr import cv2 # 初始化PaddleOCR实例 ocr = PaddleOCR(use_angle_cls=True) def recognize_table(image_path): result = ocr.ocr(image_path, cls=True) for line in result: print(line) image_path = 'path_to_your_image.png' recognize_table(image_path) ``` 此外,在线服务如TablesGenerator.com也为用户提供了一个便捷的方式来创建和编辑LaTeX表格,虽然它不是专门针对现有PDF或图片内的表格做逆向工程,但对于那些希望基于已有的视觉设计快速构建LaTeX版本的人来说非常有用[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值