Class TextRange

TextRange

一个 ShapeTableCell 文本内容的片段。

如果您使用的方法可修改文本在形状中的拟合度,则应用于形状的所有自动调整设置都会停用。

方法

方法返回类型简介
appendParagraph(text)Paragraph在文本范围的末尾附加段落。
appendRange(textRange)TextRange将提供的文本范围的副本附加到当前文本范围的末尾。
appendRange(textRange, matchSourceFormatting)TextRange将提供的文本范围的副本附加到当前文本范围的末尾。
appendText(text)TextRange在文本范围的末尾附加文本。
asRenderedString()String以适合向最终用户显示的格式,返回由关联形状或表格单元格范围限制的呈现文本。
asString()String用于返回以相关形状或表格单元格范围作为边界的原始文本。
clear()void清除由该范围界定的文本。
clear(startOffset, endOffset)void清除由范围中的起始和结束偏移值界定的文本。
find(pattern)TextRange[]返回与当前文本范围内搜索模式匹配的所有范围。
find(pattern, startOffset)TextRange[]返回从开始偏移量开始的当前文本范围中与搜索模式匹配的所有范围。
getAutoTexts()AutoText[]返回当前文本范围内的自动文本。
getEndIndex()Integer返回此范围内最后一个字符的专属索引(从 0 开始)。
getLength()Integer返回此范围内的字符数。
getLinks()TextRange[]返回与当前文本范围中的所有 Link 对应的文本范围或与当前文本范围重叠的文本范围集合。
getListParagraphs()Paragraph[]返回列表中与当前文本范围重叠的段落。
getListStyle()ListStyle返回当前文本范围的 ListStyle
getParagraphStyle()ParagraphStyle返回当前文本范围的 ParagraphStyle
getParagraphs()Paragraph[]返回与当前文本范围重叠的段落。
getRange(startOffset, endOffset)TextRange返回新的 TextRange,它涵盖了派生自该范围的一部分。
getRuns()TextRange[]返回与当前文本范围重叠的文本运行作业。
getStartIndex()Integer返回此范围中第一个字符的索引(从 0 开始),
getTextStyle()TextStyle返回范围的文本样式,如果范围为空,则返回 null
insertParagraph(startOffset, text)Paragraph在开头偏移量处插入段落。
insertRange(startOffset, textRange)TextRange在起始偏移量处插入所提供的文本范围的副本。
insertRange(startOffset, textRange, matchSourceFormatting)TextRange在起始偏移量处插入所提供的文本范围的副本。
insertText(startOffset, text)TextRange在起始偏移量处插入文本。
isEmpty()Boolean如果此范围内没有字符,则返回 true,否则返回 false
replaceAllText(findText, replaceText)Integer将文本匹配的所有查找文本替换为替换文本。
replaceAllText(findText, replaceText, matchCase)Integer将文本匹配的所有查找文本替换为替换文本。
select()void仅选择当前演示文稿中的 TextRange,并移除之前选择的所有内容。
setText(newText)TextRange设置由相关形状或表格单元格范围限定的文本。

详细文档

appendParagraph(text)

在文本范围的末尾附加段落。该段落将保持当前文本范围末尾的样式。

提供的文本字符串会附加为一个段落,方法是在该字符串中添加至少一个相关的换行符。

当提供的文本字符串包含换行符(因此由多个段落组成)时,将返回添加的最后一段。

参数

名称类型说明
textString要作为段落附加的字符串。

返回

Paragraph - 附加的 Paragraph

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

appendRange(textRange)

将提供的文本范围的副本附加到当前文本范围的末尾。

插入的文本的格式将与源文本的格式相匹配。

参数

名称类型说明
textRangeTextRange要附加的文本范围。

返回

TextRange - 表示附加文本的文本范围

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

appendRange(textRange, matchSourceFormatting)

将提供的文本范围的副本附加到当前文本范围的末尾。

如果将其设置为与目标文本的格式相匹配,则所提供的文本范围内的 AutoText 将替换为其渲染值。此外,提供的文本范围内的所有非文本元素都不会附加。

参数

名称类型说明
textRangeTextRange要附加的文本范围。
matchSourceFormattingBoolean如果为 true,则匹配源文本的格式;如果为 false,则与目标文本的格式匹配。

返回

TextRange - 表示附加文本的文本范围

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

appendText(text)

在文本范围的末尾附加文本。该文本将保持现有文本末尾的样式。

参数

名称类型说明
textString要附加的字符串。

返回

TextRange - 表示附加文本的文本范围。

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

asRenderedString()

以适合向最终用户显示的格式,以该关联形状或表格单元格范围界定的呈现文本。

AutoText 元素(例如生成的幻灯片编号)会替换为其呈现的值。 范围中的所有非文本元素都会被省略。

返回

String

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

asString()

返回以相关形状或表格单元格范围界定的原始文本。

自动生成的幻灯片编号和范围内任何非文本元素的 AutoText 元素都会替换为 Unicode 字符 U+E907。

返回

String

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

clear()

清除受此范围限制的文本。

由于 Shape 或 TableCell 中的整个文本都必须以换行符结尾,因此文本中的最后一行不会移除。

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

clear(startOffset, endOffset)

清除由范围中的起始和结束偏移值界定的文本。

由于文本必须以换行符结尾,因此即使文本的最后一个分隔符被指定的偏移值覆盖,文本中的最后一行也不会被移除。

参数

名称类型说明
startOffsetInteger当前文本范围的起始索引值之后的字符数,用于确定要清除的范围的起始值(含边界值)。起始偏移值必须等于或大于 0 且小于或等于 endOffsetstartOffset 也必须小于当前范围的长度。
endOffsetInteger超出当前文本范围起始索引的字符数,用于确定要清除的范围的专属结束索引。endOffset 必须等于或大于 startOffsetendOffset 还必须小于或等于当前范围的长度。

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

find(pattern)

返回与当前文本范围内搜索模式匹配的所有范围。搜索区分大小写。

参数

名称类型说明
patternString要搜索的正则表达式模式;格式中的任何反斜杠都应转义。

返回

TextRange[]

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

find(pattern, startOffset)

返回从开始偏移量开始的当前文本范围中与搜索模式匹配的所有范围。搜索内容区分大小写。

参数

名称类型说明
patternString要搜索的正则表达式模式;格式中的任何反斜杠都应转义。
startOffsetInteger当前文本范围起始索引值之后的字符数,用于确定要搜索的范围的起始值(包含边界值)。startOffset 还必须小于当前范围的长度。

返回

TextRange[]

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getAutoTexts()

返回当前文本范围内的自动文本。

返回

AutoText[]

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getEndIndex()

返回此范围内最后一个字符的专属索引(从 0 开始)。如果起始索引和结束索引相等,则系统会将该范围视为空。

返回

Integer

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getLength()

返回此范围内的字符数。

返回

Integer

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

返回与当前文本范围内的所有 Link 对应的或与当前文本范围重叠的文本范围集合。

每个返回的范围在创建后肯定会跨越一个链接。修改文本可能会导致其不再恰好表示一个链接。

可以通过 TextStyle.getLink() 访问所返回范围中的每个 Link

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

返回

TextRange[]

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getListParagraphs()

返回列表中与当前文本范围重叠的段落。

返回

Paragraph[]

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getListStyle()

返回当前文本范围的 ListStyle

返回

ListStyle

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getParagraphStyle()

返回当前文本范围的 ParagraphStyle

返回

ParagraphStyle

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getParagraphs()

返回与当前文本范围重叠的段落。

返回

Paragraph[]

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getRange(startOffset, endOffset)

返回新的 TextRange,它涵盖了派生自该范围的一部分。

参数

名称类型说明
startOffsetInteger当前文本范围起始索引值之后的字符数,用于确定返回范围的起始值(包含边界值)。起始偏移值必须等于或大于 0 且小于或等于 endOffsetstartOffset 也必须小于当前范围的长度。
endOffsetInteger当前文本范围起始索引值之后的字符数,用于确定返回范围的专属结束索引。endOffset 必须等于或大于 startOffsetendOffset 还必须小于或等于当前范围的长度。

返回

TextRange

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getRuns()

返回与当前文本范围重叠的文本运行作业。文本运行是一段文本,其中所有字符都具有相同的文本样式。

每个返回的范围只能保证在一次创建后运行一次。修改文本或样式可能会导致其不再恰好表示一次运行。

返回

TextRange[]

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getStartIndex()

返回此范围中第一个字符的索引(从 0 开始),如果起始索引和结束索引相等,则系统会将该范围视为空。

返回

Integer

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getTextStyle()

返回范围的文本样式,如果范围为空,则返回 null

返回

TextStyle

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

insertParagraph(startOffset, text)

在开头偏移量处插入段落。该段落会在起始偏移量处保持当前文本范围的样式。

提供的文本字符串会作为一个段落插入,方法是向字符串添加至少一个周围的换行符。

当提供的文本字符串包含换行符(因此由多个段落组成)时,将返回添加的最后一段。

参数

名称类型说明
startOffsetInteger当前文本范围起始索引值之后的字符数,用于确定要插入的文本的开始值(包含边界值)。
textString要插入的字符串。

返回

Paragraph - 插入的 Paragraph

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

insertRange(startOffset, textRange)

在起始偏移量处插入所提供的文本范围的副本。

插入的文本的格式将与源文本的格式相匹配。

参数

名称类型说明
startOffsetInteger当前文本范围起始索引值之后的字符数,用于确定要插入的文本的开始值(包含边界值)。
textRangeTextRange要插入的文本范围。

返回

TextRange - 表示插入的文本的文本范围

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

insertRange(startOffset, textRange, matchSourceFormatting)

在起始偏移量处插入所提供的文本范围的副本。

如果将其设置为与目标文本的格式相匹配,则所提供的文本范围内的 AutoText 将替换为其渲染值。此外,系统不会插入所提供的文本范围内的任何非文本元素。

参数

名称类型说明
startOffsetInteger当前文本范围起始索引值之后的字符数,用于确定要插入的文本的开始值(包含边界值)。
textRangeTextRange要插入的文本范围。
matchSourceFormattingBoolean如果为 true,则匹配源文本的格式;如果为 false,则与目标文本的格式匹配。

返回

TextRange - 表示插入的文本的文本范围

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

insertText(startOffset, text)

在起始偏移量处插入文本。该文本会在起始偏移量处保持现有文本的样式。

参数

名称类型说明
startOffsetInteger当前文本范围起始索引值之后的字符数,用于确定要插入的文本的开始值(包含边界值)。
textString要插入的字符串。

返回

TextRange - 表示插入的文本的文本范围。

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

isEmpty()

如果此范围内没有字符,则返回 true,否则返回 false

返回

Boolean

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

replaceAllText(findText, replaceText)

将文本匹配的所有查找文本替换为替换文本。搜索不区分大小写。

参数

名称类型说明
findTextString要查找的文本。
replaceTextString要替换匹配文本的文本。

返回

Integer - 已更改次数

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

replaceAllText(findText, replaceText, matchCase)

将文本匹配的所有查找文本替换为替换文本。

参数

名称类型说明
findTextString要查找的文本。
replaceTextString要替换匹配文本的文本。
matchCaseBoolean如果为 true,则搜索不区分大小写;如果为 false,则搜索不区分大小写。

返回

Integer - 已更改次数

授权

使用此方法的脚本需要通过以下一个或多个范围进行授权:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

select()

仅选择有效演示文稿中的 TextRange,并移除之前的所有选择。

脚本只能访问运行脚本的用户,且仅当该脚本绑定到演示文稿时才能访问。

相应 ShapeTableCell 的父级 Page 会设置为 current page selectionShapeTableCell 设置为 selected page element

    Selection 分为两种类型:
    • 1. 文本范围,请在非空 TextRange 上选择,以选择字符范围。
    • 2. 光标位置,使用空 TextRange 将光标放在所需索引。
      var shape = SlidesApp.getActivePresentation().getSlides()[0].getShapes()[0];
      shape.getText().setText("Hello");
      // Range selection: Select the text range "He".
      shape.getText().getRange(0, 2).select();
      // Cursor selection: Place the cursor after "H" like "H|ello".
      shape.getText().getRange(1, 1).select();

      授权

      使用此方法的脚本需要通过以下一个或多个范围进行授权:

      • https://www.googleapis.com/auth/presentations.currentonly
      • https://www.googleapis.com/auth/presentations

    setText(newText)

    设置由相关形状或表格单元格范围限定的文本。该文本将保持现有文本开头的样式。

    参数

    名称类型说明
    newTextString要设置为新文本的字符串。

    返回

    TextRange - 表示设置的文本的文本范围

    授权

    使用此方法的脚本需要通过以下一个或多个范围进行授权:

    • https://www.googleapis.com/auth/presentations.currentonly
    • https://www.googleapis.com/auth/presentations