MCPcopy Index your code
hub / github.com/clips/pattern / get_textboxes

Method get_textboxes

pattern/web/pdf/layout.py:528–552  ·  view source on GitHub ↗
(self, laparams, lines)

Source from the content-addressed store, hash-verified

526 return
527
528 def get_textboxes(self, laparams, lines):
529 plane = Plane(lines)
530 boxes = {}
531 for line in lines:
532 neighbors = line.find_neighbors(plane, laparams.line_margin)
533 assert line in neighbors, line
534 members = []
535 for obj1 in neighbors:
536 members.append(obj1)
537 if obj1 in boxes:
538 members.extend(boxes.pop(obj1))
539 if isinstance(line, LTTextLineHorizontal):
540 box = LTTextBoxHorizontal()
541 else:
542 box = LTTextBoxVertical()
543 for obj in uniq(members):
544 box.add(obj)
545 boxes[obj] = box
546 done = set()
547 for line in lines:
548 box = boxes[line]
549 if box in done: continue
550 done.add(box)
551 yield box
552 return
553
554 def group_textboxes(self, laparams, boxes):
555 def dist(obj1, obj2):

Callers 1

analyzeMethod · 0.95

Calls 9

PlaneClass · 0.90
uniqFunction · 0.90
LTTextBoxHorizontalClass · 0.85
LTTextBoxVerticalClass · 0.85
find_neighborsMethod · 0.45
appendMethod · 0.45
extendMethod · 0.45
popMethod · 0.45
addMethod · 0.45

Tested by

no test coverage detected