Class RangeBuilder

RangeBuilder

用于根据文档元素构建 Range 对象的构建器。

// Change the user's selection to a range that includes every table in the active tab.
var doc = DocumentApp.getActiveDocument();
var documentTab = doc.getActiveTab().asDocumentTab();
var rangeBuilder = documentTab.newRange();
var tables = documentTab.getBody().getTables();
for (var i = 0; i < tables.length; i++) {
  rangeBuilder.addElement(tables[i]);
}
doc.setSelection(rangeBuilder.build());

方法

方法返回类型简介
addElement(element)RangeBuilder向此 RangeBuilder 添加整个 Element
addElement(textElement, startOffset, endOffsetInclusive)RangeBuilder将部分 Text 元素添加到此 RangeBuilder
addElementsBetween(startElement, endElementInclusive)RangeBuilder将两个整个元素及其之间的所有元素添加到此 RangeBuilder
addElementsBetween(startTextElement, startOffset, endTextElementInclusive, endOffsetInclusive)RangeBuilder将两个部分 Text 元素以及它们之间的所有元素添加到 RangeBuilder
addRange(range)RangeBuilder将另一个 Range 的内容添加到此 RangeBuilder
build()Range根据应用于构建器的设置构造 Range
getRangeElements()RangeElement[]获取此 Range 中的所有元素,包括任何部分 Text 元素(例如, (选择仅包含部分 Text 元素)。

详细文档

addElement(element)

向此 RangeBuilder 添加整个 Element

参数

名称类型说明
elementElement要添加的元素

返回

RangeBuilder - 此构建器,用于链接

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

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

addElement(textElement, startOffset, endOffsetInclusive)

将部分 Text 元素添加到此 RangeBuilder

参数

名称类型说明
textElementText要部分添加的文本元素
startOffsetInteger所要包含的第一个字符之前的字符数(即 范围内第一个字符的索引)
endOffsetInclusiveInteger要包含的最后一个字符前面的字符数 (即范围内最后一个字符的索引)

返回

RangeBuilder - 此构建器,用于链接

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

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

addElementsBetween(startElement, endElementInclusive)

将两个整个元素及其之间的所有元素添加到此 RangeBuilder

参数

名称类型说明
startElementElement要添加的第一个元素
endElementInclusiveElement待添加的最后一个元素

返回

RangeBuilder - 此构建器,用于链接

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

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

addElementsBetween(startTextElement, startOffset, endTextElementInclusive, endOffsetInclusive)

将两个部分 Text 元素以及它们之间的所有元素添加到 RangeBuilder

参数

名称类型说明
startTextElementText要部分添加的第一个文本元素
startOffsetInteger要包含的 startTextElement 的第一个字符之前的字符数(即范围内第一个字符的索引)
endTextElementInclusiveText要部分添加的最后一个文本元素
endOffsetInclusiveInteger要包含的 endTextElementInclusive 的最后一个字符之前的字符数(即, 范围)

返回

RangeBuilder - 此构建器,用于链接

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

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

addRange(range)

将另一个 Range 的内容添加到此 RangeBuilder

参数

名称类型说明
rangeRange应添加其元素的范围

返回

RangeBuilder - 此构建器,用于链接

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

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

build()

根据应用于构建器的设置构造 Range

返回

Range - 新构建的范围


getRangeElements()

获取此 Range 中的所有元素,包括任何部分 Text 元素(例如, (选择仅包含部分 Text 元素)。要确定 Text 元素只有部分包含在范围内,请参阅 RangeElement.isPartial()

返回

RangeElement[] - 一组元素,按元素在文档中出现的顺序排列

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

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

已弃用的方法