代表清單項目的元素。ListItem
是與清單 ID 相關聯的 Paragraph
。ListItem
可能包含 Equation
、Footnote
、HorizontalRule
、InlineDrawing
、InlineImage
、PageBreak
和 Text
元素。如要進一步瞭解文件結構,請參閱擴充 Google 文件指南。
ListItems
不得包含換行字元。換行字元 (「\n」) 會轉換為換行字元 (「\r」)。
具有相同清單 ID 的 ListItems
屬於同一清單,系統會據此編號。
特定清單的 ListItems
不需要緊鄰文件,或甚至具有相同的父項元素。屬於同一清單的兩個項目可能同時存在於文件中的任何位置,但保持連續編號,如以下範例所示:
var body = DocumentApp.getActiveDocument().getBody(); // Append a new list item to the body. var 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. var item2 = body.appendListItem('Item 2'); item2.setListId(item1);
方法
內容詳盡的說明文件
addPositionedImage(image)
從指定的圖片 blob 建立及插入新的 PositionedImage
。
參數
名稱 | 類型 | 說明 |
---|---|---|
image | BlobSource | 圖片資料 |
回攻員
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
。
參數
名稱 | 類型 | 說明 |
---|---|---|
image | BlobSource | 圖片資料 |
回攻員
InlineImage
:附加的圖片
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
appendInlineImage(image)
附加指定的 InlineImage
。
參數
名稱 | 類型 | 說明 |
---|---|---|
image | InlineImage | 圖片資料 |
回攻員
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
中。如果表格儲存格中包含目前的元素,則會擲回例外狀況。
參數
名稱 | 類型 | 說明 |
---|---|---|
pageBreak | PageBreak | 附加分頁符號 |
回攻員
PageBreak
:附加的分頁符號元素
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
appendText(text)
appendText(text)
clear()
copy()
editAsText()
取得目前元素的 Text
版本,以供編輯。
使用 editAsText
將元素內容視為 RTF 格式。editAsText
模式會忽略非文字元素 (例如 InlineImage
和 HorizontalRule
)。
已刪除文字範圍內的子項元素會從元素中移除。
var body = DocumentApp.getActiveDocument().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
開始,搜尋指定類型的子系元素內容。
// Get the body section of the active document. var body = DocumentApp.getActiveDocument().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
getAlignment()
回攻員
HorizontalAlignment
:對齊方式
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getAttributes()
擷取元素的屬性。
結果是一個物件,其中包含每個有效元素屬性的屬性,其中每個屬性名稱都會對應 DocumentApp.Attribute
列舉中的項目。
var body = DocumentApp.getActiveDocument().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)
擷取指定子索引的子元素。
// Get the body section of the active document. var body = DocumentApp.getActiveDocument().getBody(); // Obtain the first element in the document. 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)
getGlyphType()
getHeading()
擷取 ParagraphHeading
。
回攻員
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getIndentEnd()
擷取時間點中的結尾縮排。
回攻員
Number
:結尾縮排,以點為單位
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getIndentFirstLine()
在點內擷取首行縮排。
回攻員
Number
:第一行縮排,以點表示
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getIndentStart()
擷取起始縮排。
回攻員
Number
:起始縮排
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getLineSpacing()
擷取點中的行間距。
回攻員
Number
:行間距 (以點為單位)
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getLinkUrl()
擷取連結網址。
回攻員
String
:連結網址;如果元素含有多個該屬性的值,則傳回 null
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getListId()
擷取清單 ID。
回攻員
String
:清單 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()
getNumChildren()
擷取子項的數量。
// Get the body section of the active document. var body = DocumentApp.getActiveDocument().getBody(); // Log the number of elements in the document. Logger.log("There are " + body.getNumChildren() + " elements in the document body.");
回攻員
Integer
:子項數量
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
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
getPositionedImage(id)
依據圖片 ID 取得 PositionedImage
。
參數
名稱 | 類型 | 說明 |
---|---|---|
id | String | 圖片 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()
getSpacingAfter()
擷取元素在點之後的間距。
回攻員
Number
:元素後方的間距 (以點為單位)
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getSpacingBefore()
擷取元素前的間距。
回攻員
Number
:元素前方的間距 (以點為單位)
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
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.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 body = DocumentApp.getActiveDocument().getBody(); // Obtain the first element in the document 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
。
參數
名稱 | 類型 | 說明 |
---|---|---|
childIndex | Integer | 要插入元素的索引 |
回攻員
HorizontalRule
:新的水平規則元素
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertInlineImage(childIndex, image)
在指定索引中建立並插入指定映像檔 blob 的新 InlineImage
。
參數
名稱 | 類型 | 說明 |
---|---|---|
childIndex | Integer | 要插入元素的索引 |
image | BlobSource | 圖片資料 |
回攻員
InlineImage
:插入的內嵌圖片元素
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertInlineImage(childIndex, image)
在指定的索引處插入指定的 InlineImage
。
參數
名稱 | 類型 | 說明 |
---|---|---|
childIndex | Integer | 要插入元素的索引 |
image | InlineImage | 圖片資料 |
回攻員
InlineImage
:插入的內嵌圖片元素
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertPageBreak(childIndex)
在指定的索引建立並插入新的 PageBreak
。
注意:PageBreaks
不可包含在 TableCells
中。如果表格儲存格中包含目前的元素,則會擲回例外狀況。
參數
名稱 | 類型 | 說明 |
---|---|---|
childIndex | Integer | 要插入元素的索引 |
回攻員
PageBreak
:新的分頁符號元素
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertPageBreak(childIndex, pageBreak)
在指定的索引處插入指定的 PageBreak
。
注意:PageBreaks
不可包含在 TableCells
中。如果表格儲存格中包含目前的元素,則會擲回例外狀況。
參數
名稱 | 類型 | 說明 |
---|---|---|
childIndex | Integer | 要插入元素的索引 |
pageBreak | PageBreak | 要插入的 p[age_Break |
回攻員
PageBreak
:插入的分頁符號元素
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertText(childIndex, text)
insertText(childIndex, text)
isAtDocumentEnd()
isLeftToRight()
擷取從左到右的設定。
回攻員
Boolean
:從左到右的設定
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
merge()
將元素與下一個同類型的同層級合併。
只能合併相同 ElementType
的元素。目前元素中包含的任何子項元素都會移至上述同層級元素。
目前元素會從文件中移除。
var body = DocumentApp.getActiveDocument().getBody(); // Example 1: Merge paragraphs // Append two paragraphs to the document. var par1 = body.appendParagraph('Paragraph 1.'); var 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. var cells = [ ['Row 1, Cell 1', 'Row 1, Cell 2'], ['Row 2, Cell 1', 'Row 2, Cell 2'] ]; // Build a table from the array. var table = body.appendTable(cells); // Get the first row in the table. var row = table.getRow(0); // Get the two cells in this row. var cell1 = row.getCell(0); var cell2 = row.getCell(1); // Merge the current cell into its preceding sibling element. var merged = cell2.merge();
回攻員
ListItem
:合併的元素。
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeChild(child)
removeFromParent()
從父項元素中移除元素。
var body = DocumentApp.getActiveDocument().getBody(); // Remove all images in the document body. var imgs = body.getImages(); for (var i = 0; i < imgs.length; i++) { imgs[i].removeFromParent(); }
回攻員
ListItem
- 已移除的元素。
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removePositionedImage(id)
依據圖片 ID 移除 PositionedImage
。
參數
名稱 | 類型 | 說明 |
---|---|---|
id | String |
回攻員
Boolean
:指定映像檔是否已移除
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
replaceText(searchPattern, replacement)
使用規則運算式,將指定文字模式的所有出現次數替換為指定的替代字串。
搜尋模式是以字串 (而非 JavaScript 規則運算式物件) 的形式傳送。因此,您必須逸出模式中的任何反斜線。
這個方法使用 Google 的 RE2 規則運算式程式庫,因此會限制支援的語法。
提供的規則運算式模式會與目前元素中包含的每個文字區塊分開。
var body = DocumentApp.getActiveDocument().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
setAlignment(alignment)
可設定 HorizontalAlignment
。
參數
名稱 | 類型 | 說明 |
---|---|---|
alignment | HorizontalAlignment | 水平對齊 |
回攻員
ListItem
:目前的元素
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setAttributes(attributes)
設定元素的屬性。
指定的屬性參數必須是一個物件,其中每個屬性名稱都是 DocumentApp.Attribute
列舉中的一個項目,每個屬性值都是要套用的新值。
var body = DocumentApp.getActiveDocument().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 | 元素的屬性。 |
回攻員
ListItem
- 目前的元素。
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setGlyphType(glyphType)
setHeading(heading)
可設定 ParagraphHeading
。
參數
名稱 | 類型 | 說明 |
---|---|---|
heading | ParagraphHeading | 標題 |
回攻員
ListItem
:目前的元素
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setIndentEnd(indentEnd)
setIndentFirstLine(indentFirstLine)
setIndentStart(indentStart)
setLeftToRight(leftToRight)
setLineSpacing(multiplier)
setLinkUrl(url)
setListId(listItem)
setNestingLevel(nestingLevel)
setSpacingAfter(spacingAfter)
setSpacingBefore(spacingBefore)
setText(text)
將清單項目的內容設為文字。
注意:現有內容會遭到清除。
參數
名稱 | 類型 | 說明 |
---|---|---|
text | String | 新的文字內容 |
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setTextAlignment(textAlignment)
設定文字對齊方式。可用的對齊類型包括 DocumentApp.TextAlignment.NORMAL
、DocumentApp.TextAlignment.SUBSCRIPT
和 DocumentApp.TextAlignment.SUPERSCRIPT
。
// Make the entire first paragraph be superscript. var text = DocumentApp.getActiveDocument().getBody().getParagraphs()[0].editAsText(); text.setTextAlignment(DocumentApp.TextAlignment.SUPERSCRIPT);
參數
名稱 | 類型 | 說明 |
---|---|---|
textAlignment | TextAlignment | 要套用的文字對齊類型 |
回攻員
ListItem
:目前的元素
授權
使用這個方法的指令碼必須取得以下一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents