早期关注过我的朋友,不知道你们还记不记得,曾经我写过一篇关于Matlab读取PDF文件的帖子“别让低质量的忙碌制造一个努力的幻想”。现在回过头来看这篇帖子觉得,思路还好,不过其中借助了vbs语言。
今天我主要是想来聊聊,如果仅仅只靠Matlab,是否能够实现PDF文件的读取,先来看一下整体效果。
下面这幅图所展示的是一个PDF文件,整体的需求是,将PDF文件中的数据,录入到Excel表格中。如之前所说,这个PDF的格式有些奇怪,一共有44页,每次全选,每次全选都只能选中当前页面的数据,整个文件大概有1600行数据,手工录入的话,需要复制粘贴将近4000次。
如果仅仅只是复制粘贴到Excel表格的话,在这里,我介绍一个最快速的办法,打开Word,通过Word打开PDF文件,然后直接复制整个表格到Excel中,最后对格式稍作修改,整个需求就满足了。
不过,如果需要对文本内容进行加工,那么可以通过脚本的形式,读取PDF中的文本,进行正则处理,动图效果如下
最终获取到的字符串如下所示,至于字符串正则处理,在这里就不再过多说明,如果有兴趣,以后可以专门开一贴来讲解。
接下来从代码逻辑层面上聊一聊,Matlab读取PDF文本数据是如何实现的。
整体思路上,是非常简单的,正如我刚才介绍过的,最主要是通过Word的形式打开PDF文件,然后读取Word文件中的文本数据。所以