def addLineToTextColumn(self, currentTextElementsList, textColumnsWidth): """ Creates a TextElement object and adds it to a line """ for xmlTextElement in currentTextElementsList: currentTxtColumn = None currentTextElement = self.createTextElement(xmlTextElement) self.__rightColumn = abs(currentTextElement.getLeft()/textColumnsWidth) if (int(self.__rightColumn) < len(self.__textColumnsList)): currentTxtColumn = self.__textColumnsList[int(self.__rightColumn)] if (len(currentTxtColumn.getLinesList())) > 0: line = currentTxtColumn.getLine(-1) #returns the value in the last position if self.inTheLine(currentTextElement, line) == True: # exactly in the boundaries of the line line.addText(currentTextElement) self.updateLineValues(currentTextElement, line) else: newLine = Line() newLine.addText(currentTextElement) self.setNewLineValues(currentTextElement, newLine) currentTxtColumn.addLine(newLine) self.__distance += int(newLine.getFirstTop()) - int(line.getLastTop()) else: newLine = Line() newLine.addText(currentTextElement) self.setNewLineValues(currentTextElement, newLine) currentTxtColumn.addLine(newLine)
def addLineToTextColumn(self, currentTextElementsList, textColumnsWidth): """ Creates a TextElement object and adds it to a line """ for xmlTextElement in currentTextElementsList: currentTxtColumn = None currentTextElement = self.createTextElement(xmlTextElement) self.__rightColumn = abs(currentTextElement.getLeft() / textColumnsWidth) if (int(self.__rightColumn) < len(self.__textColumnsList)): currentTxtColumn = self.__textColumnsList[int( self.__rightColumn)] if (len(currentTxtColumn.getLinesList())) > 0: line = currentTxtColumn.getLine( -1) #returns the value in the last position if self.inTheLine(currentTextElement, line) == True: # exactly in the boundaries of the line line.addText(currentTextElement) self.updateLineValues(currentTextElement, line) else: newLine = Line() newLine.addText(currentTextElement) self.setNewLineValues(currentTextElement, newLine) currentTxtColumn.addLine(newLine) self.__distance += int(newLine.getFirstTop()) - int( line.getLastTop()) else: newLine = Line() newLine.addText(currentTextElement) self.setNewLineValues(currentTextElement, newLine) currentTxtColumn.addLine(newLine)