代表清單項目的元素。List
是與清單 ID 相關聯的 Paragraph
。List
可能包含 Equation
、Footnote
、Horizontal
、Inline
、Inline
、Page
和 Text
元素。如要進一步瞭解文件結構,請參閱擴充 Google 文件指南。
List
不得包含換行字元。換行字元 ("\n") 會轉換為換行字元 ("\r")。
List
的清單 ID 相同,因此屬於同一個清單,並且會依序編號。特定清單的 List
不必在分頁中相鄰,甚至不必有相同的父項元素。屬於同一清單的兩個項目可以在分頁中的任何位置,並且維持連續編號,如以下範例所示:
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);
方法
內容詳盡的說明文件
add Positioned Image(image)
從指定的圖片 blob 建立並插入新的 Positioned
。
參數
名稱 | 類型 | 說明 |
---|---|---|
image | Blob | 圖片資料 |
回攻員
Positioned
:新定位圖片
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
append Horizontal Rule()
建立並附加新的 Horizontal
。
回攻員
Horizontal
- 新的水平線
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
append Inline Image(image)
從指定的圖片 blob 建立並附加新的 Inline
。
參數
名稱 | 類型 | 說明 |
---|---|---|
image | Blob | 圖片資料 |
回攻員
Inline
:附加的圖片
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
append Inline Image(image)
附加指定的 Inline
。
參數
名稱 | 類型 | 說明 |
---|---|---|
image | Inline | 圖片資料 |
回攻員
Inline
:附加的圖片
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
append Page Break()
建立並附加新的 Page
。
注意:Page
不得包含在 Table
中。如果目前元素包含在資料表儲存格中,系統會擲回例外狀況。
回攻員
Page
:新的分頁符號元素
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
append Page Break(pageBreak)
附加指定的 Page
。
注意:Page
不得包含在 Table
中。如果目前元素包含在資料表儲存格中,系統會擲回例外狀況。
參數
名稱 | 類型 | 說明 |
---|---|---|
page | Page | 要附加的分頁符號 |
回攻員
Page
:附加的分頁符號元素
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
append Text(text)
append Text(text)
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
:搜尋結果,指出搜尋文字的位置,如果沒有相符項目,則為空值
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
find Text(searchPattern, from)
從指定的搜尋結果開始,搜尋元素內容是否符合指定的文字模式。
部分 JavaScript 規則運算式功能並未完全支援,例如擷取群組和模式修飾符。
系統會將提供的規則運算式模式與目前元素中包含的每個文字區塊個別比對。
參數
名稱 | 類型 | 說明 |
---|---|---|
search | String | 要搜尋的模式 |
from | Range | 要搜尋的搜尋結果 |
回攻員
Range
:搜尋結果,指出搜尋文字的下一個位置。如果沒有相符項目,則為空值
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Alignment()
回攻員
Horizontal
- 對齊
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
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 Child Index(child)
get Glyph Type()
get Heading()
擷取 Paragraph
。
回攻員
Paragraph
- 標題
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Indent End()
擷取結尾縮排,以點為單位。
回攻員
Number
:結尾縮排,以點為單位
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Indent First Line()
擷取首行縮排的點數。
回攻員
Number
:首行縮排,以點為單位
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Indent Start()
擷取起始縮排。
回攻員
Number
:起始縮排
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Line Spacing()
擷取行距 (以點為單位)。
回攻員
Number
:行距,以點為單位
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Link Url()
擷取連結網址。
回攻員
String
:連結網址,如果元素包含這項屬性的多個值,則為空值
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get List Id()
擷取清單 ID。
回攻員
String
:清單 ID
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Nesting Level()
擷取清單項目的巢狀層級。
根據預設,清單項目的巢狀層級為零。巢狀層級會決定清單項目使用的圖示。
回攻員
Integer
:巢狀層級
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Next Sibling()
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 Parent()
擷取元素的父項元素。
父項元素包含目前元素。
回攻員
Container
:父項元素。
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Positioned Image(id)
根據圖片 ID 取得 Positioned
。
參數
名稱 | 類型 | 說明 |
---|---|---|
id | String | 圖片 ID |
回攻員
Positioned
:已定位的圖片
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Positioned Images()
取得錨定至段落的所有 Positioned
物件。
回攻員
Positioned
:已定位圖片的清單
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Previous Sibling()
get Spacing After()
擷取元素後方的間距,以點為單位。
回攻員
Number
:元素後方空格,以點為單位
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Spacing Before()
以點為單位,擷取元素前方的間距。
回攻員
Number
:元素前方的間距,以點為單位
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
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
。
參數
名稱 | 類型 | 說明 |
---|---|---|
child | Integer | 要插入元素的索引 |
回攻員
Horizontal
:新的水平線元素
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insert Inline Image(childIndex, image)
在指定索引處,從指定圖片 Blob 建立並插入新的 Inline
。
參數
名稱 | 類型 | 說明 |
---|---|---|
child | Integer | 要插入元素的索引 |
image | Blob | 圖片資料 |
回攻員
Inline
:已插入的內嵌圖片元素
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insert Inline Image(childIndex, image)
在指定索引處插入指定 Inline
。
參數
名稱 | 類型 | 說明 |
---|---|---|
child | Integer | 要插入元素的索引 |
image | Inline | 圖片資料 |
回攻員
Inline
:已插入的內嵌圖片元素
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insert Page Break(childIndex)
在指定索引處建立並插入新的 Page
。
注意:Page
不得包含在 Table
中。如果目前元素包含在資料表儲存格中,系統會擲回例外狀況。
參數
名稱 | 類型 | 說明 |
---|---|---|
child | Integer | 要插入元素的索引 |
回攻員
Page
:新的分頁符號元素
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insert Page Break(childIndex, pageBreak)
在指定索引處插入指定 Page
。
注意:Page
不得包含在 Table
中。如果目前元素包含在資料表儲存格中,系統會擲回例外狀況。
參數
名稱 | 類型 | 說明 |
---|---|---|
child | Integer | 要插入元素的索引 |
page | Page | 要插入的分頁符號 |
回攻員
Page
:插入的分頁符號元素
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insert Text(childIndex, text)
insert Text(childIndex, text)
is At Document End()
is Left To Right()
擷取由左至右的設定。
回攻員
Boolean
:由左至右設定
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
merge()
將元素與相同類型的前一個同胞元素合併。
只能合併相同 Element
的元素。目前元素中包含的任何子項元素都會移至前一個同層元素。
系統會從文件中移除目前的元素。
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();
回攻員
List
:已合併的元素。
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
remove Child(child)
remove From Parent()
從父項移除元素。
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(); }
回攻員
List
:已移除的元素。
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
remove Positioned Image(id)
根據圖片 ID 移除 Positioned
。
參數
名稱 | 類型 | 說明 |
---|---|---|
id | String |
回攻員
Boolean
:指定圖片是否已移除
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
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 Alignment(alignment)
可設定 Horizontal
。
參數
名稱 | 類型 | 說明 |
---|---|---|
alignment | Horizontal | 水平對齊 |
回攻員
List
- 目前的元素
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
set 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 | 元素的屬性。 |
回攻員
List
:目前的元素。
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
set Glyph Type(glyphType)
set Heading(heading)
可設定 Paragraph
。
參數
名稱 | 類型 | 說明 |
---|---|---|
heading | Paragraph | 標題 |
回攻員
List
- 目前的元素
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
set Indent End(indentEnd)
set Indent First Line(indentFirstLine)
set Indent Start(indentStart)
set Left To Right(leftToRight)
set Line Spacing(multiplier)
set Link Url(url)
set List Id(listItem)
set Nesting Level(nestingLevel)
set Spacing After(spacingAfter)
set Spacing Before(spacingBefore)
set Text(text)
將清單項目的內容設為文字。
注意:現有內容會清除。
參數
名稱 | 類型 | 說明 |
---|---|---|
text | String | 新的文字內容 |
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
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 | 要套用的文字對齊類型 |
回攻員
List
- 目前的元素
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents