@@ -72,7 +72,7 @@ def __init__(self,
72
72
char_margin : float = 2.0 ,
73
73
line_margin : float = 0.5 ,
74
74
word_margin : float = 0.1 ,
75
- boxes_flow : float = 0.5 ,
75
+ boxes_flow : Optional [ float ] = 0.5 ,
76
76
detect_vertical : bool = False ,
77
77
all_texts : bool = False ):
78
78
self .line_overlap = line_overlap
@@ -614,20 +614,24 @@ def __init__(self, objs: Iterable[TextGroupElement]):
614
614
class LTTextGroupLRTB (LTTextGroup ):
615
615
def analyze (self , laparams : LAParams ) -> None :
616
616
super ().analyze (laparams )
617
+ assert laparams .boxes_flow is not None
618
+ boxes_flow = laparams .boxes_flow
617
619
# reorder the objects from top-left to bottom-right.
618
620
self ._objs .sort (
619
- key = lambda obj : (1 - laparams . boxes_flow ) * obj .x0
620
- - (1 + laparams . boxes_flow ) * (obj .y0 + obj .y1 ))
621
+ key = lambda obj : (1 - boxes_flow ) * obj .x0
622
+ - (1 + boxes_flow ) * (obj .y0 + obj .y1 ))
621
623
return
622
624
623
625
624
626
class LTTextGroupTBRL (LTTextGroup ):
625
627
def analyze (self , laparams : LAParams ) -> None :
626
628
super ().analyze (laparams )
629
+ assert laparams .boxes_flow is not None
630
+ boxes_flow = laparams .boxes_flow
627
631
# reorder the objects from top-right to bottom-left.
628
632
self ._objs .sort (
629
- key = lambda obj : - (1 + laparams . boxes_flow ) * (obj .x0 + obj .x1 )
630
- - (1 - laparams . boxes_flow ) * obj .y1 )
633
+ key = lambda obj : - (1 + boxes_flow ) * (obj .x0 + obj .x1 )
634
+ - (1 - boxes_flow ) * obj .y1 )
631
635
return
632
636
633
637
0 commit comments