diff --git a/layoutparser-service/layoutparser-service-processor/src/main/java/com/knecon/fforesight/service/layoutparser/processor/services/factory/SearchTextWithTextPositionFactory.java b/layoutparser-service/layoutparser-service-processor/src/main/java/com/knecon/fforesight/service/layoutparser/processor/services/factory/SearchTextWithTextPositionFactory.java index 34cea76..a847e1b 100644 --- a/layoutparser-service/layoutparser-service-processor/src/main/java/com/knecon/fforesight/service/layoutparser/processor/services/factory/SearchTextWithTextPositionFactory.java +++ b/layoutparser-service/layoutparser-service-processor/src/main/java/com/knecon/fforesight/service/layoutparser/processor/services/factory/SearchTextWithTextPositionFactory.java @@ -2,6 +2,7 @@ package com.knecon.fforesight.service.layoutparser.processor.services.factory; import java.awt.geom.AffineTransform; import java.awt.geom.Rectangle2D; +import java.util.Collection; import java.util.Collections; import java.util.LinkedList; import java.util.List; @@ -66,12 +67,16 @@ public class SearchTextWithTextPositionFactory { ++context.stringIdx; } - assert context.stringBuilder.length() == context.stringIdxToPositionIdx.size(); List positions = sequences.stream() - .map(TextPositionSequence::getBoundingBox) + .map(TextPositionSequence::getTextPositions) + .flatMap(Collection::stream) + .map(RedTextPosition::getInitialUserSpacePosition) .toList(); + assert context.stringBuilder.length() == context.stringIdxToPositionIdx.size(); + assert positions.size() == context.stringIdxToPositionIdx.size(); + return SearchTextWithTextPositionDto.builder() .searchText(context.stringBuilder.toString()) .lineBreaks(context.lineBreaksStringIdx)