Google 文件分頁內容。Body
可能包含 ListItem
、
Paragraph
、Table
和 TableOfContents
元素。如要進一步瞭解
文件結構,請參閱這份指南
為 Google 文件調度資源
Body
通常包含整個分頁的內容,但 HeaderSection
、FooterSection
和任何 FootnoteSection
元素除外。
var 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();
方法
內容詳盡的說明文件
appendHorizontalRule()
建立並附加新的 HorizontalRule
。
HorizontalRule
會包含在新的 Paragraph
中。
回攻員
HorizontalRule
:新的水平規則。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
appendImage(image)
從指定的圖片 blob 建立及附加新的 InlineImage
。
圖片將包含在新的 Paragraph
中。
參數
名稱 | 類型 | 說明 |
---|---|---|
image | BlobSource | 圖片資料。 |
回攻員
InlineImage
:附加的圖片。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
appendImage(image)
附加指定的 InlineImage
。
InlineImage
會包含在新的 Paragraph
中。
附加現有的 InlineImage
副本時,請使用這個版本的 appendImage
。
參數
名稱 | 類型 | 說明 |
---|---|---|
image | InlineImage | 圖片資料。 |
回攻員
InlineImage
:附加的圖片。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
appendListItem(listItem)
appendListItem(text)
appendPageBreak()
appendPageBreak(pageBreak)
appendParagraph(paragraph)
appendParagraph(text)
appendTable()
appendTable(cells)
appendTable(table)
clear()
copy()
editAsText()
取得目前元素的 Text
版本以進行編輯。
您可以使用 editAsText
將元素內容視為 RTF 格式處理。editAsText
模式會忽略非文字元素 (例如 InlineImage
和 HorizontalRule
)。
刪除的文字範圍後,系統會移除元素中完全包含的子元素。
var 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)
搜尋指定類型的子系元素內容。
參數
名稱 | 類型 | 說明 |
---|---|---|
elementType | ElementType | 要搜尋的元素類型。 |
回攻員
RangeElement
:指出搜尋元素位置的搜尋結果。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findElement(elementType, from)
從
指定的是 RangeElement
。
var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Define the search parameters. var searchType = DocumentApp.ElementType.PARAGRAPH; var searchHeading = DocumentApp.ParagraphHeading.HEADING1; var searchResult = null; // Search until the paragraph is found. while (searchResult = body.findElement(searchType, searchResult)) { var par = searchResult.getElement().asParagraph(); if (par.getHeading() == searchHeading) { // Found one, update and stop. par.setText('This is the first header.'); return; } }
參數
名稱 | 類型 | 說明 |
---|---|---|
elementType | ElementType | 要搜尋的元素類型。 |
from | RangeElement | 要搜尋的搜尋結果。 |
回攻員
RangeElement
:指出搜尋元素下一個位置的搜尋結果。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findText(searchPattern)
使用規則運算式搜尋元素內容,找出指定文字模式。
系統不支援部分 JavaScript 規則運算式功能,例如: 擷取群組和模式修飾符
系統會將提供的規則運算式模式與每個文字區塊分開比對 包含在目前元素中。
參數
名稱 | 類型 | 說明 |
---|---|---|
searchPattern | String | 也就是搜尋的模式 |
回攻員
RangeElement
:指出搜尋文字位置的搜尋結果;如果沒有,則傳回空值
比對
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findText(searchPattern, from)
從指定的文字模式開始搜尋元素內容 搜尋結果。
系統不支援部分 JavaScript 規則運算式功能,例如: 擷取群組和模式修飾符
系統會將提供的規則運算式模式與每個文字區塊分開比對 包含在目前元素中。
參數
名稱 | 類型 | 說明 |
---|---|---|
searchPattern | String | 也就是搜尋的模式 |
from | RangeElement | 要搜尋的搜尋結果 |
回攻員
RangeElement
:指出搜尋文字下一個位置的搜尋結果;如果沒有,則傳回空值
比對
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getAttributes()
擷取元素的屬性。
結果是物件,其中包含每個有效元素屬性的 屬性,其中每個
屬性名稱可對應至 DocumentApp.Attribute
列舉中的項目。
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); var body = documentTab.getBody(); // Append a styled paragraph. var par = body.appendParagraph('A bold, italicized paragraph.'); par.setBold(true); par.setItalic(true); // Retrieve the paragraph's attributes. var atts = par.getAttributes(); // Log the paragraph attributes. for (var att in atts) { Logger.log(att + ":" + atts[att]); }
回攻員
Object
:元素的屬性。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getChild(childIndex)
在指定的子索引擷取子元素。
var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Obtain the first element in the tab. var 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."); }
參數
名稱 | 類型 | 說明 |
---|---|---|
childIndex | Integer | 要擷取的子元素索引。 |
回攻員
Element
:指定索引的子元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getChildIndex(child)
getHeadingAttributes(paragraphHeading)
擷取所提供 ParagraphHeading
的一組屬性。
參數
名稱 | 類型 | 說明 |
---|---|---|
paragraphHeading | ParagraphHeading | 應擷取其屬性的標題。 |
回攻員
Object
:屬性及其目前值的對應。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getImages()
擷取該區段包含的所有 InlineImages
。
回攻員
InlineImage[]
:版面圖片,
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getListItems()
擷取該區段包含的所有 ListItems
。
回攻員
ListItem[]
:版面清單項目。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getMarginBottom()
擷取底部邊界。
回攻員
Number
:底部邊界,以點數表示。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getMarginLeft()
擷取左邊界 (以點表示)。
回攻員
Number
:左邊界,以點表示。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getMarginRight()
擷取右側邊界。
回攻員
Number
:右邊界,以點表示。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getMarginTop()
擷取上邊界。
回攻員
Number
:頂部邊界,以點數表示。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNumChildren()
擷取子發布商數量。
var 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
getPageHeight()
擷取頁面高度 (以點表示)。
回攻員
Number
:頁面高度,以點表示。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getPageWidth()
擷取頁面寬度 (以點為基準)。
回攻員
Number
:頁面寬度,以點表示。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getParagraphs()
擷取區段包含的所有 Paragraphs
(包括 ListItems
)。
回攻員
Paragraph[]
- 段落段落。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getParent()
擷取元素的父項元素。
父項元素包含目前元素。
回攻員
ContainerElement
:父項元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getTables()
getText()
以文字字串形式擷取元素內容。
回攻員
String
:以文字字串表示的元素內容
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getTextAlignment()
取得文字對齊方式。可用的對齊類型包括 DocumentApp.TextAlignment.NORMAL
、DocumentApp.TextAlignment.SUBSCRIPT
和 DocumentApp.TextAlignment.SUPERSCRIPT
。
回攻員
TextAlignment
:文字對齊類型;如果文字包含多種類型文字,則為 null
對齊或從未設定文字對齊方式
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getType()
擷取元素的 ElementType
。
使用 getType()
來判斷特定元素的確切類型。
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); var body = documentTab.getBody(); // Obtain the first element in the active tab's body. var 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
。
HorizontalRule
會包含在新的 Paragraph
中。
參數
名稱 | 類型 | 說明 |
---|---|---|
childIndex | Integer | 要插入元素的索引。 |
回攻員
HorizontalRule
:新的水平規則。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertImage(childIndex, image)
從指定的圖片 blob 建立並插入 InlineImage
,位於指定的
索引。
參數
名稱 | 類型 | 說明 |
---|---|---|
childIndex | Integer | 要插入元素的索引。 |
image | BlobSource | 圖片資料。 |
回攻員
InlineImage
:插入的內嵌圖片。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertImage(childIndex, image)
在指定的索引插入指定的 InlineImage
。
圖片將包含在新的 Paragraph
中。
參數
名稱 | 類型 | 說明 |
---|---|---|
childIndex | Integer | 要插入元素的索引。 |
image | InlineImage | 要插入的圖片。 |
回攻員
InlineImage
:插入的內嵌圖片。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertListItem(childIndex, listItem)
insertListItem(childIndex, text)
insertPageBreak(childIndex)
insertPageBreak(childIndex, pageBreak)
insertParagraph(childIndex, paragraph)
insertParagraph(childIndex, text)
insertTable(childIndex)
insertTable(childIndex, cells)
insertTable(childIndex, table)
removeChild(child)
replaceText(searchPattern, replacement)
使用一般的 運算式。
搜尋模式會以字串 (而非 JavaScript 規則運算式物件) 的形式傳遞。 因此,您必須在模式中逸出所有反斜線。
這個方法使用 Google 的 RE2 一般 運算式程式庫,才能限制支援的語法。
系統會將提供的規則運算式模式與每個文字區塊分開比對 包含在目前元素中。
var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Clear the text surrounding "Apps Script", with or without text. body.replaceText("^.*Apps ?Script.*$", "Apps Script");
參數
名稱 | 類型 | 說明 |
---|---|---|
searchPattern | String | 要搜尋的規則運算式模式 |
replacement | String | 要用於取代的文字 |
回攻員
Element
:目前的元素
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setAttributes(attributes)
設定元素的屬性。
指定的屬性參數必須是一個物件,而其中的每個屬性名稱都是一個項目
DocumentApp.Attribute
列舉,而每個屬性值都是要
已套用。
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); var body = documentTab.getBody(); // Define a custom paragraph style. var 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. var 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
setHeadingAttributes(paragraphHeading, attributes)
設定所提供 ParagraphHeading
的屬性。
參數
名稱 | 類型 | 說明 |
---|---|---|
paragraphHeading | ParagraphHeading | 應設定屬性的標題。 |
attributes | Object | 屬性和其設定值的對應。 |
回攻員
Body
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setMarginBottom(marginBottom)
setMarginLeft(marginLeft)
setMarginRight(marginRight)
setMarginTop(marginTop)
setPageHeight(pageHeight)
setPageWidth(pageWidth)
setText(text)
setTextAlignment(textAlignment)
設定文字對齊方式。可用的對齊類型包括 DocumentApp.TextAlignment.NORMAL
、DocumentApp.TextAlignment.SUBSCRIPT
和 DocumentApp.TextAlignment.SUPERSCRIPT
。
// Make the entire first paragraph in the active tab be superscript. var documentTab = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab(); var text = documentTab.getBody().getParagraphs()[0].editAsText(); text.setTextAlignment(DocumentApp.TextAlignment.SUPERSCRIPT);
參數
名稱 | 類型 | 說明 |
---|---|---|
textAlignment | TextAlignment | 要套用的文字對齊類型 |
回攻員
Body
:目前的元素
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents