Class TextRange  |  Apps Script  |  Google for Developers (original) (raw)

Class TextRange

Stay organized with collections Save and categorize content based on your preferences.

TextRange

A segment of the text contents of a [Shape](/apps-script/reference/slides/shape) or a [TableCell](/apps-script/reference/slides/table-cell).

If you use methods that edit how the text fits within a shape, any autofit settings applied to the shape are deactivated.

Methods

Method Return type Brief description
appendParagraph(text) Paragraph Appends a paragraph at the end of the text range.
appendRange(textRange) TextRange Appends a copy of the provided text range to the end of the current text range.
appendRange(textRange, matchSourceFormatting) TextRange Appends a copy of the provided text range to the end of the current text range.
appendText(text) TextRange Appends text at the end of the text range.
asRenderedString() String Returns the rendered text bounded by this range of the associated shape or table cell in a format appropriate to display to end users.
asString() String Returns the raw text bounded by this range of the associated shape or table cell.
clear() void Clears the text bounded by this range.
clear(startOffset, endOffset) void Clears the text bounded by the start and end offsets in the range.
find(pattern) TextRange[] Returns all the ranges matching the search pattern in the current text range.
find(pattern, startOffset) TextRange[] Returns all the ranges matching the search pattern in the current text range starting from the start offset.
getAutoTexts() AutoText[] Returns the auto texts within the current text range.
getEndIndex() Integer Returns the exclusive, 0-based index for the last character in this range.
getLength() Integer Returns the number of characters in this range.
getLinks() TextRange[] Returns a collection of text ranges that correspond to all Links within the current text range or overlapping the current text range.
getListParagraphs() Paragraph[] Returns the paragraphs in lists that overlap the current text range.
getListStyle() ListStyle Returns the ListStyle of the current text range.
getParagraphStyle() ParagraphStyle Returns the ParagraphStyle of the current text range.
getParagraphs() Paragraph[] Returns the paragraphs that overlap the current text range.
getRange(startOffset, endOffset) TextRange Returns a new TextRange covering part of the range from which it is derived.
getRuns() TextRange[] Returns the text runs that overlap the current text range.
getStartIndex() Integer Returns the inclusive, 0-based index for the first character in this range.
getTextStyle() TextStyle Returns the text style of the range, or null if the range is empty.
insertParagraph(startOffset, text) Paragraph Inserts a paragraph at the start offset.
insertRange(startOffset, textRange) TextRange Inserts a copy of the provided text range at the start offset.
insertRange(startOffset, textRange, matchSourceFormatting) TextRange Inserts a copy of the provided text range at the start offset.
insertText(startOffset, text) TextRange Inserts text at the start offset.
isEmpty() Boolean Returns true if there are no characters in this range, and returns falseotherwise.
replaceAllText(findText, replaceText) Integer Replaces all instances of text matching find text with replace text.
replaceAllText(findText, replaceText, matchCase) Integer Replaces all instances of text matching find text with replace text.
select() void Selects only the TextRange in the active presentation and removes any previous selection.
setText(newText) TextRange Sets the text bounded by this range of the associated shape or table cell.

Detailed documentation

appendParagraph(text)

Appends a paragraph at the end of the text range. The paragraph maintains the styling of the end of the current text range.

The provided text string is appended as a paragraph by adding at least one surrounding newline character to the string.

When the provided text string contains newline characters (thus consisting of multiple paragraphs), the final paragraph added is returned.

Parameters

Name Type Description
text String The string to append as a paragraph.

Return

[Paragraph](/apps-script/reference/slides/paragraph) — the appended [Paragraph](/apps-script/reference/slides/paragraph).

Scripts that use this method require authorization with one or more of the following scopes:




appendText(text)

Appends text at the end of the text range. The text maintains the styling of the end of the existing text.

Parameters

Name Type Description
text String The string to append.

Return

[TextRange](#) — the text range representing the appended text.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


asRenderedString()

Returns the rendered text bounded by this range of the associated shape or table cell in a format appropriate to display to end users.

AutoText elements, such as generated slide numbers, are replaced with their rendered values. Any non-text elements in the range are omitted.

Return

String

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


asString()

Returns the raw text bounded by this range of the associated shape or table cell.

AutoText elements such as generated slide numbers and any non-text elements in the range are replaced with the Unicode character U+E907.

Return

String

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


clear()

Clears the text bounded by this range.

Since the entire text in a Shape or TableCell must end in a newline, the final newline in the text is not removed.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


clear(startOffset, endOffset)

Clears the text bounded by the start and end offsets in the range.

Since the text must end in a newline, the final newline in text is not removed even if it's covered by the given offsets.

Parameters

Name Type Description
startOffset Integer The number of characters past the start index of the current text range used to determine the inclusive start index of the range to clear. The start offset must be equal to or greater than 0 and less than or equal to endOffset. startOffset must also be less than the length of the current range.
endOffset Integer The number of characters past the start index of the current text range used to determine the exclusive end index of the range to clear. The endOffset must be equal to or greater than startOffset. endOffset must also be less than or equal to the length of the current range.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


find(pattern)

Returns all the ranges matching the search pattern in the current text range. The search is case sensitive.

Parameters

Name Type Description
pattern String The regular expression pattern to search; any backslashes in the pattern should be escaped.

Return

[TextRange[]](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


find(pattern, startOffset)

Returns all the ranges matching the search pattern in the current text range starting from the start offset. The search is case sensitive.

Parameters

Name Type Description
pattern String The regular expression pattern to search; any backslashes in the pattern should be escaped.
startOffset Integer The number of characters past the start index of the current text range used to determine the inclusive start index of the range to search. startOffset must also be less than the length of the current range.

Return

[TextRange[]](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getAutoTexts()

Returns the auto texts within the current text range.

Return

[AutoText[]](/apps-script/reference/slides/auto-text)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getEndIndex()

Returns the exclusive, 0-based index for the last character in this range. If the start and end indices are equal, the range is considered to be empty.

Return

Integer

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getLength()

Returns the number of characters in this range.

Return

Integer

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


Returns a collection of text ranges that correspond to all [Link](/apps-script/reference/slides/link)s within the current text range or overlapping the current text range.

Each returned range is guaranteed to span one link when it is created. Text modifications can cause it to no longer represent exactly one link.

Each [Link](/apps-script/reference/slides/link) on the returned ranges can be accessed via [TextStyle.getLink()](/apps-script/reference/slides/text-style#getLink%28%29).

// Accesses the first link on a TextRange object. const textRange = SlidesApp.getActivePresentation().getSlides()[0].getShapes()[0].getText(); const linkTextRange = textRange.getLinks()[0]; const textStyle = linkTextRange.getTextStyle(); Logger.log(textStyle.hasLink()); // logs 'true' const link = textStyle.getLink(); // Link object

Return

[TextRange[]](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getListParagraphs()

Returns the paragraphs in lists that overlap the current text range.

Return

[Paragraph[]](/apps-script/reference/slides/paragraph)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getListStyle()

Returns the [ListStyle](/apps-script/reference/slides/list-style) of the current text range.

Return

[ListStyle](/apps-script/reference/slides/list-style)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getParagraphStyle()

Returns the [ParagraphStyle](/apps-script/reference/slides/paragraph-style) of the current text range.

Return

[ParagraphStyle](/apps-script/reference/slides/paragraph-style)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getParagraphs()

Returns the paragraphs that overlap the current text range.

Return

[Paragraph[]](/apps-script/reference/slides/paragraph)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getRange(startOffset, endOffset)

Returns a new [TextRange](#) covering part of the range from which it is derived.

Parameters

Name Type Description
startOffset Integer The number of characters past the start index of the current text range used to determine the inclusive start index of the returned range. The start offset must be equal to or greater than 0 and less than or equal to endOffset. startOffset must also be less than the length of the current range.
endOffset Integer The number of characters past the start index of the current text range used to determine the exclusive end index of the returned range. The endOffset must be equal to or greater than startOffset. endOffset must also be less than or equal to the length of the current range.

Return

[TextRange](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getRuns()

Returns the text runs that overlap the current text range. A text run is a segment of text where all the characters have the same text style.

Each returned range is only guaranteed to span one run when it is created. Text or style modifications can cause it to no longer represent exactly one run.

Return

[TextRange[]](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getStartIndex()

Returns the inclusive, 0-based index for the first character in this range. If the start and end indices are equal, the range is considered to be empty.

Return

Integer

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getTextStyle()

Returns the text style of the range, or null if the range is empty.

Return

[TextStyle](/apps-script/reference/slides/text-style)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


insertParagraph(startOffset, text)

Inserts a paragraph at the start offset. The paragraph maintains the styling of the current text range at the start offset.

The provided text string is inserted as a paragraph by adding at least one surrounding newline character to the string.

When the provided text string contains newline characters (thus consisting of multiple paragraphs), the final paragraph added is returned.

Parameters

Name Type Description
startOffset Integer The number of characters past the start index of the current text range used to determine the inclusive start index of the text to insert.
text String The string to insert.

Return

[Paragraph](/apps-script/reference/slides/paragraph) — the inserted [Paragraph](/apps-script/reference/slides/paragraph).

Authorization

Scripts that use this method require authorization with one or more of the following scopes:




insertText(startOffset, text)

Inserts text at the start offset. The text maintains the styling of the existing text at the start offset.

Parameters

Name Type Description
startOffset Integer The number of characters past the start index of the current text range used to determine the inclusive start index of the text to insert.
text String The string to insert.

Return

[TextRange](#) — the text range representing the inserted text.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


isEmpty()

Returns true if there are no characters in this range, and returns falseotherwise.

Return

Boolean

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


replaceAllText(findText, replaceText)

Replaces all instances of text matching find text with replace text. The search is case insensitive.

Parameters

Name Type Description
findText String The text to find.
replaceText String The text to replace the matched text.

Return

Integer — the number of occurrences changed

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


replaceAllText(findText, replaceText, matchCase)

Replaces all instances of text matching find text with replace text.

Parameters

Name Type Description
findText String The text to find.
replaceText String The text to replace the matched text.
matchCase Boolean If true, the search is case sensitive; if false, the search is case insensitive.

Return

Integer — the number of occurrences changed

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


select()

Selects only the [TextRange](#) in the active presentation and removes any previous selection.

A script can only access the selection of the user who is running the script, and only if the script is bound to the presentation.

The parent [Page](/apps-script/reference/slides/page) of the corresponding [Shape](/apps-script/reference/slides/shape) or the [TableCell](/apps-script/reference/slides/table-cell) is set as the [current page selection](/apps-script/reference/slides/selection#getCurrentPage%28%29). The [Shape](/apps-script/reference/slides/shape) or the [TableCell](/apps-script/reference/slides/table-cell) is set as the [selected page element](/apps-script/reference/slides/selection#getPageElementRange%28%29).

The [Selection](/apps-script/reference/slides/selection) can be of two types:

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setText(newText)

Sets the text bounded by this range of the associated shape or table cell. The text maintains the styling of the start of the existing text.

Parameters

Name Type Description
newText String The string to set as the new text.

Return

[TextRange](#) — the text range representing the set text

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2024-12-02 UTC.