如何强制pdfminer从左到右蚂蚁从上到下分析布局?

问题描述

我使用 pdfminer 将 pdf 转换为文本的通用代码,如下所示:

def convert_pdf_to_txt(path):
    rsrcmgr = PDFResourceManager()
    retstr = BytesIO()
    codec = 'utf-8'
    laparams = LAParams()
    device = TextConverter(rsrcmgr,retstr,codec=codec,laparams=laparams)
    interpreter = PDFPageInterpreter(rsrcmgr,device)
    password = ""
    maxpages = 0
    caching = True
    pagenos = set()
    with open(path,'rb') as fp:
        for page in PDFPage.get_pages(fp,pagenos,maxpages=maxpages,password=password,caching=caching,check_extractable=True):
            interpreter.process_page(page)

    text = retstr.getvalue()

这是一个很好的库,可以很好地处理许多文件,但有时它会显示愚蠢的布局分析。例如在如下所示的两列 pdf 中,它首先显示第二列的文本。

enter image description here

我猜在所有或大多数英文文章中,文本都是从上到下,从左到右。那么,为什么 pdfminer 不遵循这个简单的规则呢?无论如何,我怎样才能强迫它服从这个处理?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)