Google 文档中标签页中的内容。Body
可以包含 List
、Paragraph
、Table
和 Table
元素。如需详细了解文档结构,请参阅扩展 Google 文档的指南。
Body
通常包含标签页的完整内容,但 Header
、Footer
和任何 Footnote
元素除外。
const body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Append a paragraph and a page break to the tab's body section directly. body.appendParagraph('A paragraph.'); body.appendPageBreak();
方法
详细文档
append Horizontal Rule()
创建并附加新的 Horizontal
。
Horizontal
将包含在新 Paragraph
中。
返回
Horizontal
- 新的水平线。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
append Image(image)
从指定的图片 blob 创建并附加新的 Inline
。
该图片将包含在新 Paragraph
中。
参数
名称 | 类型 | 说明 |
---|---|---|
image | Blob | 图片数据。 |
返回
Inline
- 附加的图片。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
append Image(image)
附加给定的 Inline
。
Inline
将包含在新 Paragraph
中。
附加现有 Inline
的副本时,请使用此版本的 append
。
参数
名称 | 类型 | 说明 |
---|---|---|
image | Inline | 图片数据。 |
返回
Inline
- 附加的图片。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
append List Item(listItem)
append List Item(text)
append Page Break()
append Page Break(pageBreak)
append Paragraph(paragraph)
append Paragraph(text)
append Table()
append Table(cells)
append Table(table)
clear()
copy()
edit As Text()
获取当前元素的 Text
版本,以供修改。
使用 edit
以富文本形式操控元素内容。edit
模式会忽略非文本元素(例如 Inline
和 Horizontal
)。
完全包含在被删除文本范围内的子元素会从该元素中移除。
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
- 当前元素的文本版本
find Element(elementType)
在元素的内容中搜索指定类型的后代。
参数
名称 | 类型 | 说明 |
---|---|---|
element | Element | 要搜索的元素类型。 |
返回
Range
- 搜索结果,用于指示搜索元素的位置。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
find Element(elementType, from)
从指定的 Range
开始,在元素的内容中搜索指定类型的后代。
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; } }
参数
名称 | 类型 | 说明 |
---|---|---|
element | Element | 要搜索的元素类型。 |
from | Range | 要搜索的搜索结果。 |
返回
Range
- 指示搜索元素的下一个位置的搜索结果。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
find Text(searchPattern)
使用正则表达式在元素内容中搜索指定的文本模式。
部分 JavaScript 正则表达式功能(例如捕获组和模式修饰符)不受完全支持。
系统会将提供的正则表达式模式与当前元素中包含的每个文本块进行单独匹配。
参数
名称 | 类型 | 说明 |
---|---|---|
search | String | 要搜索的模式 |
返回
Range
- 搜索结果,用于指示搜索文本的位置;如果没有匹配项,则为 null
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
find Text(searchPattern, from)
从给定搜索结果开始,在元素内容中搜索指定的文本模式。
部分 JavaScript 正则表达式功能(例如捕获组和模式修饰符)不受完全支持。
系统会将提供的正则表达式模式与当前元素中包含的每个文本块进行单独匹配。
参数
名称 | 类型 | 说明 |
---|---|---|
search | String | 要搜索的模式 |
from | Range | 要搜索的搜索结果 |
返回
Range
- 搜索结果,表示搜索文本的下一个位置;如果没有匹配项,则为 null
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Attributes()
检索元素的属性。
结果是一个对象,其中包含每个有效元素属性的属性,每个属性名称对应于 Document
枚举中的项。
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
get Child(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.'); }
参数
名称 | 类型 | 说明 |
---|---|---|
child | Integer | 要检索的子元素的索引。 |
返回
Element
- 指定索引处的子元素。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get ChildIndex(child)
get Heading Attributes(paragraphHeading)
检索所提供 Paragraph
的一组属性。
参数
名称 | 类型 | 说明 |
---|---|---|
paragraph | Paragraph | 应检索其属性的标题。 |
返回
Object
- 属性及其当前值的映射。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Images()
检索该部分中包含的所有 Inline
。
返回
Inline
- 版块图片。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get List Items()
检索该部分中包含的所有 List
。
返回
List
- 版块列表项。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Margin Bottom()
检索下边距(以点为单位)。
返回
Number
- 下边距(以点为单位)。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Margin Left()
检索左边距(以点为单位)。
返回
Number
- 左边距(以点为单位)。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Margin Right()
检索右外边距。
返回
Number
- 右边距(以点为单位)。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Margin Top()
检索上外边距。
返回
Number
- 上边距(以点为单位)。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Num Children()
检索子项的数量。
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
get Page Height()
检索页面高度(以点为单位)。
返回
Number
- 页面高度(以点为单位)。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Page Width()
检索页面宽度(以点为单位)。
返回
Number
- 页面宽度(以磅为单位)。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Paragraphs()
检索该部分中包含的所有 Paragraphs
(包括 List
)。
返回
Paragraph[]
- 版块段落。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Parent()
检索元素的父元素。
父元素包含当前元素。
返回
Container
- 父元素。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Tables()
get Text()
以文本字符串的形式检索元素的内容。
返回
String
- 元素的内容(以文本字符串表示)
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Text Alignment()
获取文本对齐方式。可用的对齐类型包括 Document
、Document
和 Document
。
返回
Text
- 文本对齐方式的类型;如果文本包含多种类型的文本对齐方式,或者文本对齐方式从未设置过,则为 null
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Type()
检索元素的 Element
。
使用 get
确定给定元素的确切类型。
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.'); }
返回
Element
- 元素类型。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insert Horizontal Rule(childIndex)
在指定索引处创建并插入新的 Horizontal
。
Horizontal
将包含在新 Paragraph
中。
参数
名称 | 类型 | 说明 |
---|---|---|
child | Integer | 要插入元素的索引。 |
返回
Horizontal
- 新的水平线。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insert Image(childIndex, image)
在指定位置从指定图片 blob 创建并插入 Inline
。
参数
名称 | 类型 | 说明 |
---|---|---|
child | Integer | 要插入元素的索引。 |
image | Blob | 图片数据。 |
返回
Inline
- 插入的内嵌图片。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insert Image(childIndex, image)
在指定索引处插入给定 Inline
。
该图片将包含在新 Paragraph
中。
参数
名称 | 类型 | 说明 |
---|---|---|
child | Integer | 要插入元素的索引。 |
image | Inline | 要插入的图片。 |
返回
Inline
- 插入的内嵌图片。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insert List Item(childIndex, listItem)
insert List Item(childIndex, text)
insert Page Break(childIndex)
insert Page Break(childIndex, pageBreak)
insert Paragraph(childIndex, paragraph)
insert Paragraph(childIndex, text)
insert Table(childIndex)
insert Table(childIndex, cells)
insert Table(childIndex, table)
remove Child(child)
replace Text(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');
参数
名称 | 类型 | 说明 |
---|---|---|
search | String | 要搜索的正则表达式模式 |
replacement | String | 要用作替换项的文本 |
返回
Element
- 当前元素
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
set Attributes(attributes)
设置元素的属性。
指定的 attributes 参数必须是对象,其中每个属性名称都是 Document
枚举中的项,每个属性值都是要应用的新值。
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);
参数
名称 | 类型 | 说明 |
---|---|---|
attributes | Object | 元素的属性。 |
返回
Body
- 当前元素。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
set Heading Attributes(paragraphHeading, attributes)
为所提供的 Paragraph
设置属性。
参数
名称 | 类型 | 说明 |
---|---|---|
paragraph | Paragraph | 应设置其属性的标题。 |
attributes | Object | 属性及其要设置的值的映射。 |
返回
Body
- 当前元素。
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
set Margin Bottom(marginBottom)
set Margin Left(marginLeft)
set Margin Right(marginRight)
set Margin Top(marginTop)
set Page Height(pageHeight)
set Page Width(pageWidth)
set Text(text)
set Text Alignment(textAlignment)
设置文本对齐方式。可用的对齐方式类型包括 Document
、Document
和 Document
。
// 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);
参数
名称 | 类型 | 说明 |
---|---|---|
text | Text | 要应用的文本对齐方式 |
返回
Body
- 当前元素
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents