Class ListItem

列表

表示列表项的元素。ListItem 是与列表 ID 相关联的 ParagraphListItem 可以包含 EquationFootnoteHorizontalRuleInlineDrawingInlineImagePageBreakText 元素。如需详细了解文档结构,请参阅扩展 Google 文档指南

ListItems 不得包含换行符。换行符(“\n”)会转换为换行符(“\r”)。

具有相同列表 ID 的 ListItems 属于同一列表,并按相应顺序编号。 给定列表的 ListItems 不必在标签页中相邻,甚至不必具有相同的父元素。属于同一列表的两项内容可以位于标签页中的任意位置,同时保持连续编号,如下例所示:

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Append a new list item to the body.
const item1 = body.appendListItem('Item 1');

// Log the new list item's list ID.
Logger.log(item1.getListId());

// Append a table after the list item.
body.appendTable([['Cell 1', 'Cell 2']]);

// Append a second list item with the same list ID. The two items are treated as
// the same list, despite not being consecutive.
const item2 = body.appendListItem('Item 2');
item2.setListId(item1);

方法

方法返回类型简介
addPositionedImage(image)PositionedImage根据指定的图片 blob 创建并插入新的 PositionedImage
appendHorizontalRule()HorizontalRule创建并附加新的 HorizontalRule
appendInlineImage(image)InlineImage根据指定的图片 blob 创建并附加新的 InlineImage
appendInlineImage(image)InlineImage附加给定的 InlineImage
appendPageBreak()PageBreak创建并附加新的 PageBreak
appendPageBreak(pageBreak)PageBreak附加给定的 PageBreak
appendText(text)Text创建并附加具有指定内容的新 Text 元素。
appendText(text)Text附加给定的 Text 元素。
clear()ListItem清除元素的内容。
copy()ListItem返回当前元素的已分离深层副本。
editAsText()Text获取当前元素的 Text 版本以进行修改。
findElement(elementType)RangeElement|null在元素的内容中搜索指定类型的后代。
findElement(elementType, from)RangeElement|null从指定的 RangeElement 开始,在元素的内容中搜索指定类型的后代。
findText(searchPattern)RangeElement|null使用正则表达式在元素的内容中搜索指定的文本模式。
findText(searchPattern, from)RangeElement|null从给定的搜索结果开始,在元素的内容中搜索指定的文本模式。
getAlignment()HorizontalAlignment|null检索 HorizontalAlignment
getAttributes()Object检索元素的属性。
getChild(childIndex)Element检索指定子索引处的子元素。
getChildIndex(child)Integer检索指定子元素的子级索引。
getGlyphType()GlyphType|null检索列表项的 GlyphType
getHeading()ParagraphHeading|null检索 ParagraphHeading
getIndentEnd()Number|null检索结束缩进(以磅为单位)。
getIndentFirstLine()Number|null检索第一行缩进(以磅为单位)。
getIndentStart()Number|null检索起始缩进。
getLineSpacing()Number|null检索行间距(以磅为单位)。
getLinkUrl()String|null检索链接网址。
getListId()String|null检索列表 ID。
getNestingLevel()Integer检索列表项的嵌套级别。
getNextSibling()Element|null检索元素的下一个同级元素。
getNumChildren()Integer检索子项的数量。
getParent()ContainerElement|null检索元素的父元素。
getPositionedImage(id)PositionedImage根据图片的 ID 获取 PositionedImage
getPositionedImages()PositionedImage[]获取锚定到段落的所有 PositionedImage 对象。
getPreviousSibling()Element|null检索元素的前一个同级元素。
getSpacingAfter()Number|null检索元素后的间距(以磅为单位)。
getSpacingBefore()Number|null检索元素之前的间距(以磅为单位)。
getText()String以文本字符串形式检索元素的内容。
getTextAlignment()TextAlignment|null获取文本对齐方式。
getType()ElementType检索元素的 ElementType
insertHorizontalRule(childIndex)HorizontalRule在指定索引处创建并插入 HorizontalRule
insertInlineImage(childIndex, image)InlineImage在指定索引处,根据指定的图片 blob 创建并插入新的 InlineImage
insertInlineImage(childIndex, image)InlineImage在指定索引处插入给定的 InlineImage
insertPageBreak(childIndex)PageBreak在指定索引处创建并插入新的 PageBreak
insertPageBreak(childIndex, pageBreak)PageBreak在指定索引处插入给定的 PageBreak
insertText(childIndex, text)Text在指定索引处创建并插入新的文本元素。
insertText(childIndex, text)Text在指定索引处插入具有指定文本内容的给定 Text 元素。
isAtDocumentEnd()Boolean确定元素是否位于 Document 的末尾。
isLeftToRight()Boolean|null检索从左到右的设置。
merge()ListItem|null将元素与同一类型的前一个同级元素合并。
removeChild(child)ListItem移除指定的子元素。
removeFromParent()ListItem|null从其父级中移除元素。
removePositionedImage(id)Boolean按图片的 ID 移除 PositionedImage
replaceText(searchPattern, replacement)Element使用正则表达式将指定文本模式的所有匹配项替换为指定的替换字符串。
setAlignment(alignment)ListItem设置 HorizontalAlignment
setAttributes(attributes)ListItem设置元素的属性。
setGlyphType(glyphType)ListItem设置列表项的 GlyphType
setHeading(heading)ListItem设置 ParagraphHeading
setIndentEnd(indentEnd)ListItem设置结束缩进,以磅为单位。
setIndentFirstLine(indentFirstLine)ListItem设置首行缩进(以磅为单位)。
setIndentStart(indentStart)ListItem设置起始缩进,以磅为单位。
setLeftToRight(leftToRight)ListItem设置从左到右的设置。
setLineSpacing(multiplier)ListItem设置行间距,以表示用于设置间距的行数的数量表示。
setLinkUrl(url)ListItem设置链接网址。
setListId(listItem)ListItem设置列表 ID。
setNestingLevel(nestingLevel)ListItem设置列表项的嵌套级别。
setSpacingAfter(spacingAfter)ListItem设置元素后的间距(以磅为单位)。
setSpacingBefore(spacingBefore)ListItem设置元素前的间距(以磅为单位)。
setText(text)void将列表项的内容设置为文本。
setTextAlignment(textAlignment)ListItem设置文本对齐方式。

详细文档

addPositionedImage(image)

根据指定的图片 blob 创建并插入新的 PositionedImage

参数

名称类型说明
imageBlobSource图片数据

返回

PositionedImage - 新的定位图片

授权

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

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

appendHorizontalRule()

创建并附加新的 HorizontalRule

返回

HorizontalRule - 新的水平分隔线

授权

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

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

appendInlineImage(image)

根据指定的图片 blob 创建并附加新的 InlineImage

参数

名称类型说明
imageBlobSource图片数据

返回

InlineImage - 附加的图片

授权

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

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

appendInlineImage(image)

附加给定的 InlineImage

参数

名称类型说明
imageInlineImage图片数据

返回

InlineImage - 附加的图片

授权

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

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

appendPageBreak()

创建并附加新的 PageBreak

注意:PageBreaks 可能不包含在 TableCells 中。 如果当前元素包含在表格单元格中,则会抛出异常。

返回

PageBreak - 新的分页符元素

授权

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

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

appendPageBreak(pageBreak)

附加给定的 PageBreak

注意:PageBreaks 可能不包含在 TableCells 中。 如果当前元素包含在表格单元格中,则会抛出异常。

参数

名称类型说明
pageBreakPageBreak要附加的分页符

返回

PageBreak - 附加的分页符元素

授权

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

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

appendText(text)

创建并附加具有指定内容的新 Text 元素。

参数

名称类型说明
textString文本内容

返回

Text - 新的文本元素

授权

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

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

appendText(text)

附加给定的 Text 元素。

参数

名称类型说明
textText要附加的文本元素

返回

Text - 附加的文本元素

授权

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

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

clear()

清除元素的内容。

返回

ListItem - 当前元素。


copy()

返回当前元素的已分离深层副本。

元素中包含的所有子元素也会被复制。新元素没有父元素。

返回

ListItem - 新文案。

授权

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

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

editAsText()

获取当前元素的 Text 版本以进行修改。

使用 editAsText 将元素内容作为富文本进行操作。editAsText 模式会忽略非文本元素(例如 InlineImageHorizontalRule)。

完全包含在已删除文本范围内的子元素会从相应元素中移除。

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Insert two paragraphs separated by a paragraph containing an
// horizontal rule.
body.insertParagraph(0, 'An editAsText sample.');
body.insertHorizontalRule(0);
body.insertParagraph(0, 'An example.');

// Delete " sample.\n\n An" removing the horizontal rule in the process.
body.editAsText().deleteText(14, 25);

返回

Text - 当前元素的文本版本


findElement(elementType)

在元素的内容中搜索指定类型的后代。

参数

名称类型说明
elementTypeElementType要搜索的元素类型。

返回

RangeElement|null - 一种搜索结果,用于指示搜索元素的位置。

授权

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

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

findElement(elementType, from)

从指定的 RangeElement 开始,在元素的内容中搜索指定类型的后代。

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Define the search parameters.

let searchResult = null;

// Search until the paragraph is found.
while (
    (searchResult = body.findElement(
         DocumentApp.ElementType.PARAGRAPH,
         searchResult,
         ))) {
  const par = searchResult.getElement().asParagraph();
  if (par.getHeading() === DocumentApp.ParagraphHeading.HEADING1) {
    // Found one, update and stop.
    par.setText('This is the first header.');
    break;
  }
}

参数

名称类型说明
elementTypeElementType要搜索的元素类型。
fromRangeElement要从中搜索的搜索结果。

返回

RangeElement|null - 一种搜索结果,用于指示搜索元素的下一个位置。

授权

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

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

findText(searchPattern)

使用正则表达式在元素的内容中搜索指定的文本模式。

部分 JavaScript 正则表达式功能不受完全支持,例如捕获组和模式修饰符。

系统会针对当前元素中包含的每个文本块独立匹配所提供的正则表达式模式。

参数

名称类型说明
searchPatternString要搜索的模式

返回

RangeElement|null - 指示搜索文本位置的搜索结果,如果没有匹配项,则为 null

授权

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

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

findText(searchPattern, from)

从给定的搜索结果开始,在元素的内容中搜索指定的文本模式。

部分 JavaScript 正则表达式功能不受完全支持,例如捕获组和模式修饰符。

系统会针对当前元素中包含的每个文本块独立匹配所提供的正则表达式模式。

参数

名称类型说明
searchPatternString要搜索的模式
fromRangeElement要开始搜索的搜索结果

返回

RangeElement|null - 指示搜索文本的下一个位置的搜索结果,如果没有匹配项,则为 null

授权

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

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

getAlignment()

检索 HorizontalAlignment

返回

HorizontalAlignment|null - 对齐

授权

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

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

getAttributes()

检索元素的属性。

结果是一个对象,其中包含每个有效元素属性的属性,每个属性名称都对应于 DocumentApp.Attribute 枚举中的一个项。

const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();

// Append a styled paragraph.
const par = body.appendParagraph('A bold, italicized paragraph.');
par.setBold(true);
par.setItalic(true);

// Retrieve the paragraph's attributes.
const atts = par.getAttributes();

// Log the paragraph attributes.
for (const att in atts) {
  Logger.log(`${att}:${atts[att]}`);
}

返回

Object - 元素的属性。

授权

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

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

getChild(childIndex)

检索指定子索引处的子元素。

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Obtain the first element in the tab.
const firstChild = body.getChild(0);

// If it's a paragraph, set its contents.
if (firstChild.getType() === DocumentApp.ElementType.PARAGRAPH) {
  firstChild.asParagraph().setText('This is the first paragraph.');
}

参数

名称类型说明
childIndexInteger要检索的子元素的索引。

返回

Element - 指定索引处的子元素。

授权

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

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

getChildIndex(child)

检索指定子元素的子级索引。

参数

名称类型说明
childElement要检索其索引的子元素。

返回

Integer - 子索引。

授权

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

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

getGlyphType()

检索列表项的 GlyphType

返回

GlyphType|null - 字形类型

授权

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

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

getHeading()

检索 ParagraphHeading

返回

ParagraphHeading|null - 标题

授权

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

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

getIndentEnd()

检索结束缩进(以磅为单位)。

返回

Number|null - 结束缩进,以磅为单位

授权

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

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

getIndentFirstLine()

检索第一行缩进(以磅为单位)。

返回

Number|null - 首行缩进,以点为单位

授权

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

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

getIndentStart()

检索起始缩进。

返回

Number|null - 起始缩进

授权

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

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

getLineSpacing()

检索行间距(以磅为单位)。

返回

Number|null - 行间距(以磅为单位)

授权

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

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

getLinkUrl()

检索链接网址。

返回

String|null - 链接网址,如果元素包含此属性的多个值,则为 null

授权

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

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

getListId()

检索列表 ID。

返回

String|null - 列表 ID

授权

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

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

getNestingLevel()

检索列表项的嵌套级别。

默认情况下,列表项的嵌套级别为零。嵌套级别决定了列表项使用的字形。

返回

Integer - 嵌套级别

授权

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

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

getNextSibling()

检索元素的下一个同级元素。

下一个同级元素具有相同的父元素,并且位于当前元素之后。

返回

Element|null - 下一个同级元素。

授权

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

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

getNumChildren()

检索子项的数量。

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Log the number of elements in the tab.
Logger.log(`There are ${body.getNumChildren()} elements in the tab's body.`);

返回

Integer - 子项数量。

授权

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

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

getParent()

检索元素的父元素。

父元素包含当前元素。

返回

ContainerElement|null - 父元素。

授权

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

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

getPositionedImage(id)

根据图片的 ID 获取 PositionedImage

参数

名称类型说明
idString图片 ID

返回

PositionedImage - 定位后的图片

授权

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

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

getPositionedImages()

获取锚定到段落的所有 PositionedImage 对象。

返回

PositionedImage[] - 一个包含已定位图片的列表

授权

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

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

getPreviousSibling()

检索元素的前一个同级元素。

上一个同级元素具有相同的父元素,并且位于当前元素之前。

返回

Element|null - 上一个同级元素。

授权

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

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

getSpacingAfter()

检索元素后的间距(以磅为单位)。

返回

Number|null - 元素后的间距(以磅为单位)

授权

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

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

getSpacingBefore()

检索元素之前的间距(以磅为单位)。

返回

Number|null - 元素之前的间距(以点为单位)

授权

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

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

getText()

以文本字符串形式检索元素的内容。

返回

String - 元素的内容(以文本字符串形式表示)

授权

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

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

getTextAlignment()

获取文本对齐方式。可用的对齐类型包括 DocumentApp.TextAlignment.NORMALDocumentApp.TextAlignment.SUBSCRIPTDocumentApp.TextAlignment.SUPERSCRIPT

返回

TextAlignment|null - 文本对齐类型,如果文本包含多种文本对齐类型或从未设置过文本对齐方式,则为 null

授权

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

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

getType()

检索元素的 ElementType

使用 getType() 确定给定元素的确切类型。

const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();

// Obtain the first element in the active tab's body.

const firstChild = body.getChild(0);

// Use getType() to determine the element's type.
if (firstChild.getType() === DocumentApp.ElementType.PARAGRAPH) {
  Logger.log('The first element is a paragraph.');
} else {
  Logger.log('The first element is not a paragraph.');
}

返回

ElementType - 元素类型。

授权

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

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

insertHorizontalRule(childIndex)

在指定索引处创建并插入 HorizontalRule

参数

名称类型说明
childIndexInteger要插入元素的索引

返回

HorizontalRule - 新的水平分隔线元素

授权

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

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

insertInlineImage(childIndex, image)

在指定索引处,根据指定的图片 blob 创建并插入新的 InlineImage

参数

名称类型说明
childIndexInteger要插入元素的索引
imageBlobSource图片数据

返回

InlineImage - 插入的内嵌图片元素

授权

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

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

insertInlineImage(childIndex, image)

在指定索引处插入给定的 InlineImage

参数

名称类型说明
childIndexInteger要插入元素的索引
imageInlineImage图片数据

返回

InlineImage - 插入的内嵌图片元素

授权

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

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

insertPageBreak(childIndex)

在指定索引处创建并插入新的 PageBreak

注意:PageBreaks 可能不包含在 TableCells 中。 如果当前元素包含在表格单元格中,则会抛出异常。

参数

名称类型说明
childIndexInteger要插入元素的索引

返回

PageBreak - 新的分页符元素

授权

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

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

insertPageBreak(childIndex, pageBreak)

在指定索引处插入给定的 PageBreak

注意:PageBreaks 可能不包含在 TableCells 中。 如果当前元素包含在表格单元格中,则会抛出异常。

参数

名称类型说明
childIndexInteger要插入元素的索引
pageBreakPageBreak要插入的分页符

返回

PageBreak - 插入的分页符元素

授权

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

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

insertText(childIndex, text)

在指定索引处创建并插入新的文本元素。

参数

名称类型说明
childIndexInteger要插入元素的索引
textString文本内容

返回

Text - 新的文本元素

授权

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

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

insertText(childIndex, text)

在指定索引处插入具有指定文本内容的给定 Text 元素。

参数

名称类型说明
childIndexInteger要插入元素的索引
textText要插入的文本元素

返回

Text - 插入的文本元素

授权

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

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

isAtDocumentEnd()

确定元素是否位于 Document 的末尾。

返回

Boolean - 元素是否位于标签页的末尾。

授权

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

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

isLeftToRight()

检索从左到右的设置。

返回

Boolean|null - 从左到右设置

授权

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

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

merge()

将元素与同一类型的前一个同级元素合并。

只有相同 ElementType 的元素才能合并。当前元素中包含的所有子元素都会移至前面的同级元素。

从文档中移除当前元素。

const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();

// Example 1: Merge paragraphs
// Append two paragraphs to the document's active tab.
const par1 = body.appendParagraph('Paragraph 1.');
const par2 = body.appendParagraph('Paragraph 2.');
// Merge the newly added paragraphs into a single paragraph.
par2.merge();

// Example 2: Merge table cells
// Create a two-dimensional array containing the table's cell contents.
const cells = [
  ['Row 1, Cell 1', 'Row 1, Cell 2'],
  ['Row 2, Cell 1', 'Row 2, Cell 2'],
];
// Build a table from the array.
const table = body.appendTable(cells);
// Get the first row in the table.
const row = table.getRow(0);
// Get the two cells in this row.
const cell1 = row.getCell(0);
const cell2 = row.getCell(1);
// Merge the current cell into its preceding sibling element.
const merged = cell2.merge();

返回

ListItem|null - 合并后的元素。

授权

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

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

removeChild(child)

移除指定的子元素。

参数

名称类型说明
childElement要移除的子元素

返回

ListItem - 当前元素

授权

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

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

removeFromParent()

从父级中移除元素。

const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();

// Remove all images in the active tab's body.
const imgs = body.getImages();
for (let i = 0; i < imgs.length; i++) {
  imgs[i].removeFromParent();
}

返回

ListItem|null - 移除的元素。

授权

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

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

removePositionedImage(id)

按图片的 ID 移除 PositionedImage

参数

名称类型说明
idString

返回

Boolean - 指定的图片是否已移除

授权

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

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

replaceText(searchPattern, replacement)

使用正则表达式将指定文本模式的所有匹配项替换为指定的替换字符串。

搜索模式以字符串形式传递,而不是以 JavaScript 正则表达式对象形式传递。 因此,您需要对模式中的所有反斜杠进行转义。

此方法使用 Google 的 RE2 正则表达式库,该库限制了支持的语法

系统会根据所提供的正则表达式模式,单独匹配当前元素中包含的每个文本块。

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Clear the text surrounding "Apps Script", with or without text.
body.replaceText('^.*Apps ?Script.*$', 'Apps Script');

参数

名称类型说明
searchPatternString要搜索的正则表达式模式
replacementString用作替换项的文本

返回

Element - 当前元素

授权

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

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

setAlignment(alignment)

设置 HorizontalAlignment

参数

名称类型说明
alignmentHorizontalAlignment水平对齐方式

返回

ListItem - 当前元素

授权

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

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

setAttributes(attributes)

设置元素的属性。

指定的 attributes 参数必须是一个对象,其中每个属性名称都是 DocumentApp.Attribute 枚举中的一个项,每个属性值都是要应用的新值。

const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();

// Define a custom paragraph style.
const style = {};
style[DocumentApp.Attribute.HORIZONTAL_ALIGNMENT] =
    DocumentApp.HorizontalAlignment.RIGHT;
style[DocumentApp.Attribute.FONT_FAMILY] = 'Calibri';
style[DocumentApp.Attribute.FONT_SIZE] = 18;
style[DocumentApp.Attribute.BOLD] = true;

// Append a plain paragraph.
const par = body.appendParagraph('A paragraph with custom style.');

// Apply the custom style.
par.setAttributes(style);

参数

名称类型说明
attributesObject元素的属性。

返回

ListItem - 当前元素。

授权

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

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

setGlyphType(glyphType)

设置列表项的 GlyphType

参数

名称类型说明
glyphTypeGlyphType字形类型

返回

ListItem - 当前元素

授权

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

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

setHeading(heading)

设置 ParagraphHeading

参数

名称类型说明
headingParagraphHeading标题

返回

ListItem - 当前元素

授权

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

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

setIndentEnd(indentEnd)

设置结束缩进,以磅为单位。

参数

名称类型说明
indentEndNumber末尾缩进(以磅为单位)

返回

ListItem - 当前元素

授权

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

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

setIndentFirstLine(indentFirstLine)

设置首行缩进(以磅为单位)。

参数

名称类型说明
indentFirstLineNumber首行缩进(以点为单位)

返回

ListItem - 当前元素

授权

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

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

setIndentStart(indentStart)

设置起始缩进,以磅为单位。

参数

名称类型说明
indentStartNumber起始缩进(以磅为单位)

返回

ListItem - 当前元素

授权

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

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

setLeftToRight(leftToRight)

设置从左到右的设置。

参数

名称类型说明
leftToRightBoolean从左到右设置

返回

ListItem - 当前元素

授权

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

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

setLineSpacing(multiplier)

设置行间距,以表示用于设置间距的行数的数量表示。

参数

名称类型说明
multiplierNumber行数

返回

ListItem - 当前元素

授权

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

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

setLinkUrl(url)

设置链接网址。

参数

名称类型说明
urlString链接网址

返回

ListItem - 当前元素

授权

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

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

setListId(listItem)

设置列表 ID。

对于指定的 ListItem,列表 ID 设置为相同的值。这两个 ListItems 将被视为同一列表的成员。

参数

名称类型说明
listItemListItem要使用的列表 ID 所对应的列表项

返回

ListItem - 当前元素

授权

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

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

setNestingLevel(nestingLevel)

设置列表项的嵌套级别。

默认情况下,列表项的嵌套级别为零。嵌套级别决定了列表项使用的字形。

参数

名称类型说明
nestingLevelInteger嵌套级别

返回

ListItem - 当前元素

授权

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

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

setSpacingAfter(spacingAfter)

设置元素后的间距(以磅为单位)。

参数

名称类型说明
spacingAfterNumber元素后的间距(以点为单位)

返回

ListItem - 当前元素

授权

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

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

setSpacingBefore(spacingBefore)

设置元素前的间距(以磅为单位)。

参数

名称类型说明
spacingBeforeNumber元素之前的间距(以点为单位)

返回

ListItem - 当前元素

授权

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

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

setText(text)

将列表项的内容设置为文本。

注意:系统会清除现有内容。

参数

名称类型说明
textString新文本内容

授权

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

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

setTextAlignment(textAlignment)

设置文本对齐方式。可用的对齐类型包括 DocumentApp.TextAlignment.NORMALDocumentApp.TextAlignment.SUBSCRIPTDocumentApp.TextAlignment.SUPERSCRIPT

// Make the entire first paragraph in the active tab be superscript.
const documentTab =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab();
const text = documentTab.getBody().getParagraphs()[0].editAsText();
text.setTextAlignment(DocumentApp.TextAlignment.SUPERSCRIPT);

参数

名称类型说明
textAlignmentTextAlignment要应用的文字对齐类型

返回

ListItem - 当前元素

授权

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

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