Метод Position.getPreviousRange
Метод возвращает диапазон, который расположен перед текущим диапазоном. Размеры текущего и предыдущего диапазонов зависят от выбранной единицы текста. Если выбранная единица текста отлична от Paragraph, то работа метода Position.getPreviousRange ограничена текущим абзацем.
Вызов
Range getPreviousRange(textUnit)
Параметры
textUnit:единица текста, определяющая размеры диапазонов, тип TextUnit.
Возвращает
- предыдущий диапазон документа, тип Range.
Пример для текстового документа
sentenceBegin = document.getRange().getBegin().getNextRange(myOfficeSDK.TextUnit_Sentence).getBegin()
previousSentence = sentenceBegin.getPreviousRange(myOfficeSDK.TextUnit_Sentence)
previousWord = sentenceBegin.getPreviousRange(myOfficeSDK.TextUnit_Word)
while previousWord.getContentEnd().compare(previousWord.getBegin()) == 1:
previousWord = previousWord.getBegin().getPreviousRange(myOfficeSDK.TextUnit_Word)
previousCharacter = sentenceBegin.getPreviousRange(myOfficeSDK.TextUnit_Character)
previousCharacter = previousCharacter.getBegin().getPreviousRange(myOfficeSDK.TextUnit_Character)
previousCharacter = previousCharacter.getBegin().getPreviousRange(myOfficeSDK.TextUnit_Character)
print(previousSentence.extractText())
# Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
print(previousWord.extractText()) # aliqua
print(previousCharacter.extractText()) # a
Пример для табличного документа
sheet = document.getBlocks().getTable(0)
cell = sheet.getCell("B2")
cellEnd = cell.getRange().getContentEnd()
sentence = cellEnd.getPreviousRange(myOfficeSDK.TextUnit_Sentence)
print(sentence.extractText()) # Second sentence.