From d6128e69375a7c3506624cb2d6ac04c8ae5b2833 Mon Sep 17 00:00:00 2001 From: "James R. Barlow" Date: Sun, 26 Jul 2020 21:51:25 -0700 Subject: [PATCH] Fix support for older versions of pdfminer.six (boxes_flow error) --- src/ocrmypdf/pdfinfo/layout.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/ocrmypdf/pdfinfo/layout.py b/src/ocrmypdf/pdfinfo/layout.py index 98bd82e0..7cd0b57e 100644 --- a/src/ocrmypdf/pdfinfo/layout.py +++ b/src/ocrmypdf/pdfinfo/layout.py @@ -220,8 +220,16 @@ class TextPositionTracker(PDFLayoutAnalyzer): def get_page_analysis(infile, pageno, pscript5_mode): rman = pdfminer.pdfinterp.PDFResourceManager(caching=True) + if pdfminer.__version__ < '20200402': + # Workaround for https://github.com/pdfminer/pdfminer.six/issues/395 + disable_boxes_flow = 2 + else: + disable_boxes_flow = None dev = TextPositionTracker( - rman, laparams=LAParams(all_texts=True, detect_vertical=True, boxes_flow=None) + rman, + laparams=LAParams( + all_texts=True, detect_vertical=True, boxes_flow=disable_boxes_flow + ), ) interp = pdfminer.pdfinterp.PDFPageInterpreter(rman, dev)