代表 RTF 格式區域的元素。Document
中的所有文字都包含在 Text
元素中。
Text
元素可包含在 Equation
、EquationFunction
、
ListItem
或 Paragraph
,但不能包含任何其他元素。如要
如要瞭解文件結構,請參閱擴充 Google 文件指南。
// Gets the body contents of the active tab. var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Use editAsText to obtain a single text element containing // all the characters in the tab. var text = body.editAsText(); // Insert text at the beginning of the tab. text.insertText(0, 'Inserted text.\n'); // Insert text at the end of the tab. text.appendText('\nAppended text.'); // Make the first half of the tab blue. text.setForegroundColor(0, text.getText().length / 2, '#00FFFF');
方法
內容詳盡的說明文件
appendText(text)
將指定文字加到這個文字區域的結尾。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Adds the text, 'Sample body text,' to the end of the tab body. const text = body.editAsText().appendText('Sample body text');
參數
名稱 | 類型 | 說明 |
---|---|---|
text | String | 要附加的文字。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
copy()
deleteText(startOffset, endOffsetInclusive)
刪除特定範圍的文字。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Deletes the first 10 characters in the body. const text = body.editAsText().deleteText(0, 9);
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 要刪除的第一個字元的字元偏移。 |
endOffsetInclusive | Integer | 要刪除的最後一個字元的字元偏移。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
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
— 目前元素的文字版本
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
getAttributes(offset)
以指定的字元偏移擷取屬性。
結果會是物件,內含每個有效文字屬性的 屬性,其中每個
屬性名稱可對應至 DocumentApp.Attribute
列舉中的項目。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Declares style attributes. const style = {} style[DocumentApp.Attribute.BOLD] = true; style[DocumentApp.Attribute.ITALIC] = true; style[DocumentApp.Attribute.FONT_SIZE] = 29; // Sets the style attributes to the tab's body. const text = body.editAsText(); text.setAttributes(style); // Gets the style attributes applied to the eleventh character in the // body and logs them to the console. const attributes = text.getAttributes(10); console.log(attributes);
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元偏移。 |
回攻員
Object
:元素的屬性。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getBackgroundColor()
擷取背景顏色設定。
回攻員
String
:背景顏色,採用 CSS 標記法 (例如 '#ffffff'
) 或空值
表示元素包含多個此屬性的值
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getBackgroundColor(offset)
以指定的字元偏移值擷取背景顏色。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the background color of the first 3 characters in the body. const text = body.editAsText().setBackgroundColor(0, 2, '#FFC0CB'); // Gets the background color of the first character in the body. const backgroundColor = text.getBackgroundColor(0); // Logs the background color to the console. console.log(backgroundColor);
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元偏移。 |
回攻員
String
:背景顏色,以 CSS 標記法表示 (例如 '#ffffff'
)。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getFontFamily()
擷取字型系列設定。名稱可以是 Google 文件或 Google Fonts 中「字型」選單中的任何字型,區分大小寫。getFontFamily()
和 setFontFamily(fontFamilyName)
方法現在使用字型的字串名稱,而非
列舉雖然這個列舉
已淘汰,您仍可以與舊版指令碼相容。FontFamily
回攻員
String
:字型系列;如果元素包含多個值,則為空值
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getFontFamily(offset)
以指定的字元位移擷取字型系列。名稱可以是
Google 文件或 Google Fonts 中的字型選單,是
區分大小寫。getFontFamily()
和 setFontFamily(fontFamilyName)
方法
現在為字型使用字串名稱,而非
列舉。雖然這個列舉
但仍會繼續與舊版指令碼相容。
FontFamily
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the font of the first 16 characters to Impact. const text = body.editAsText().setFontFamily(0, 15, 'Impact'); // Gets the font family of the 16th character in the tab body. const fontFamily = text.getFontFamily(15); // Logs the font family to the console. console.log(fontFamily);
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元偏移。 |
回攻員
String
— 字型系列。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getFontSize()
擷取字型大小設定。
回攻員
Number
:字型大小。如果元素包含多個值,則為空值
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getFontSize(offset)
以指定的字元位移擷取字型大小。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the font size of the first 13 characters to 15. const text = body.editAsText().setFontSize(0, 12, 15); // Gets the font size of the first character. const fontSize = text.getFontSize(0); // Logs the font size to the console. console.log(fontSize);
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元偏移。 |
回攻員
Number
:字型大小。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getForegroundColor()
擷取前景色彩設定。
回攻員
String
:前景顏色,採用 CSS 標記法 (例如 '#ffffff'
) 或空值
表示元素包含多個此屬性的值
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getForegroundColor(offset)
以指定的字元偏移值擷取前景顏色。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the foreground color of the first 3 characters in the tab body. const text = body.editAsText().setForegroundColor(0, 2, '#0000FF'); // Gets the foreground color of the first character in the tab body. const foregroundColor = text.getForegroundColor(0); // Logs the foreground color to the console. console.log(foregroundcolor);
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元偏移。 |
回攻員
String
:前景顏色,以 CSS 標記法輸入 (例如 '#ffffff'
)。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getLinkUrl()
擷取連結網址。
回攻員
String
:連結網址;如果元素包含多個值,則為空值
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getLinkUrl(offset)
在指定的字元位移擷取連結網址。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Applies a link to the first 10 characters in the body. const text = body.editAsText().setLinkUrl(0, 9, 'https://www.example.com/'); // Gets the URL of the link from the first character. const link = text.getLinkUrl(0); // Logs the link URL to the console. console.log(link);
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元偏移。 |
回攻員
String
:連結網址。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNextSibling()
getParent()
擷取元素的父項元素。
父項元素包含目前元素。
回攻員
ContainerElement
:父項元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getPreviousSibling()
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
getTextAlignment(offset)
取得單一字元的文字對齊方式。可用的對齊類型包括 DocumentApp.TextAlignment.NORMAL
、DocumentApp.TextAlignment.SUBSCRIPT
和 DocumentApp.TextAlignment.SUPERSCRIPT
。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the text alignment of the tab's body to NORMAL. const text = body.editAsText().setTextAlignment(DocumentApp.TextAlignment.NORMAL); // Gets the text alignment of the ninth character. const alignment = text.getTextAlignment(8); // Logs the text alignment to the console. console.log(alignment.toString());
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元的偏移量。 |
回攻員
TextAlignment
:文字對齊類型;如果未設定文字對齊方式,則為 null
。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getTextAttributeIndices()
擷取一組與不同文字格式開頭對應的文字索引 或任何可執行 Knative 的環境中
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the text indices at which text formatting changes. const indices = body.editAsText().getTextAttributeIndices(); // Logs the indices to the console. console.log(indices.toString());
回攻員
Integer[]
:文字格式變更所在的文字索引集。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
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
insertText(offset, text)
在指定的字元偏移值插入指定文字。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Inserts the text, 'Sample inserted text', at the start of the body content. const text = body.editAsText().insertText(0, 'Sample inserted text');
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 插入文字的字元偏移值。 |
text | String | 要插入的文字。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
isAtDocumentEnd()
isBold()
擷取粗體設定。
回攻員
Boolean
:文字是粗體,如果元素包含多個值,則為空值
屬性
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
isBold(offset)
在指定的字元位移擷取粗體設定。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Bolds the first 4 characters in the tab body. const text = body.editAsText().setBold(0, 3, true); // Gets whether or not the text is bold. const bold = text.editAsText().isBold(0); // Logs the text's bold setting to the console console.log(bold);
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元偏移。 |
回攻員
Boolean
:粗體設定。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
isItalic()
擷取斜體設定。
回攻員
Boolean
:文字是斜體,如果元素包含多個值,則為空值
屬性
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
isItalic(offset)
在指定的字元位移擷取斜體設定。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the first 13 characters of the tab body to italic. const text = body.editAsText().setItalic(0, 12, true); // Gets whether the fifth character in the tab body is set to // italic and logs it to the console. const italic = text.isItalic(4); console.log(italic);
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元偏移。 |
回攻員
Boolean
:斜體設定。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
isStrikethrough()
擷取刪除線設定。
回攻員
Boolean
:文字是否為刪除線;如果元素包含多個
這項屬性
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
isStrikethrough(offset)
在指定的字元位移擷取刪除線設定。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the first 17 characters of the tab body to strikethrough. const text = body.editAsText().setStrikethrough(0, 16, true); // Gets whether the first character in the tab body is set to // strikethrough and logs it to the console. const strikethrough = text.isStrikethrough(0); console.log(strikethrough);
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元偏移。 |
回攻員
Boolean
:刪除線設定。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
isUnderline()
擷取底線設定。
回攻員
Boolean
:文字是否加上底線;如果元素包含多個
這項屬性
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
isUnderline(offset)
在指定的字元位移擷取底線設定。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the first 13 characters of the tab body to underline. const text = body.editAsText().setUnderline(0, 12, false); // Gets whether the first character in the tab body is set to // underline and logs it to the console const underline = text.editAsText().isUnderline(0); console.log(underline);
參數
名稱 | 類型 | 說明 |
---|---|---|
offset | Integer | 字元偏移。 |
回攻員
Boolean
:底線設定。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
merge()
將元素與前述同類型的同層合併。
只能合併相同 ElementType
的元素。其中包含
目前元素會移至前一個同層元素。
系統隨即會從文件中移除目前的元素。
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); var body = documentTab.getBody(); // Example 1: Merge paragraphs // Append two paragraphs to the document's active tab. 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();
回攻員
Text
:合併的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeFromParent()
從父項移除元素。
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab() var body = documentTab.getBody(); // Remove all images in the active tab's body. var imgs = body.getImages(); for (var i = 0; i < imgs.length; i++) { imgs[i].removeFromParent(); }
回攻員
Text
:已移除的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
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(startOffset, endOffsetInclusive, attributes)
將指定的屬性套用至指定的字元範圍。
指定的屬性參數必須是一個物件,而其中的每個屬性名稱都是一個項目
DocumentApp.Attribute
列舉,而每個屬性值都是要
已套用。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Declares style attributes for font size and font family. const style = {} style[DocumentApp.Attribute.FONT_SIZE] = 20 ; style[DocumentApp.Attribute.FONT_FAMILY] = 'Impact'; // Sets the style attributes to the first 9 characters in the tab's body. const text = body.setAttributes(0, 8, style);
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 文字範圍的起始位移。 |
endOffsetInclusive | Integer | 文字範圍的結束偏移。 |
attributes | Object | 元素的屬性。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
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 | 元素的屬性。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setBackgroundColor(startOffset, endOffsetInclusive, color)
設定指定字元範圍的背景顏色。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the background color of the first 3 characters in the // tab body to hex color #0000FF. const text = body.editAsText().setBackgroundColor(0, 2, '#0000FF');
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 文字範圍的起始位移。 |
endOffsetInclusive | Integer | 文字範圍的結束偏移。 |
color | String | 背景顏色,以 CSS 標記法表示 (例如 '#ffffff' )。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setBackgroundColor(color)
setBold(bold)
setBold(startOffset, endOffsetInclusive, bold)
設定指定字元範圍的粗體設定。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the first 11 characters in the tab's body to bold. const text = body.editAsText().setBold(0, 10, true);
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 文字範圍的起始位移。 |
endOffsetInclusive | Integer | 文字範圍的結束偏移。 |
bold | Boolean | 粗體設定。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setFontFamily(startOffset, endOffsetInclusive, fontFamilyName)
設定指定字元範圍的字型系列。名稱可以是該字型中的任何字型
,且區分大小寫。
無法辨識的字型名稱將顯示為 go。getFontFamily(offset)
和
setFontFamily(fontFamilyName)
現在使用字型的字串名稱,而非
列舉。雖然這個列舉
但仍會繼續與舊版指令碼相容。
FontFamily
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the font of the first 4 characters in the tab's body to Roboto. const text = body.editAsText().setFontFamily(0, 3, 'Roboto');
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 文字範圍的起始位移。 |
endOffsetInclusive | Integer | 文字範圍的結束偏移。 |
fontFamilyName | String | 字型系列的名稱,來自 Google 文件或 Google Fonts 的字型選單。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setFontFamily(fontFamilyName)
設定字型系列。名稱可以是 Google 文件或 Google Fonts 中「字型」選單中的任何字型,區分大小寫。無法辨識的字型
資源名稱將會顯示為 {5}srcgetFontFamily()
和 setFontFamily(fontFamilyName)
方法現在使用字型的字串名稱,而非
列舉。雖然這個列舉
但仍會繼續與舊版指令碼相容。FontFamily
參數
名稱 | 類型 | 說明 |
---|---|---|
fontFamilyName | String | 字型系列名稱 |
回攻員
Text
:目前的元素
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setFontSize(startOffset, endOffsetInclusive, size)
設定指定字元範圍的字型大小。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the size of the first 11 characters in the tab's body to 12. const text = body.editAsText().setFontSize(0, 10, 12);
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 文字範圍的起始位移。 |
endOffsetInclusive | Integer | 文字範圍的結束偏移。 |
size | Number | 字型大小。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setFontSize(size)
setForegroundColor(startOffset, endOffsetInclusive, color)
設定指定字元範圍的前景顏色。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the foreground color of the first 2 characters in the // tab's body to hex color #FF0000. const text = body.editAsText().setForegroundColor(0, 1, '#FF0000'); // Gets the foreground color for the second character in the tab's body. const foregroundColor = text.getForegroundColor(1); // Logs the foreground color to the console. console.log(foregroundColor);
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 文字範圍的起始位移。 |
endOffsetInclusive | Integer | 文字範圍的結束偏移。 |
color | String | 前景顏色,採用 CSS 標記法 (例如 '#ffffff' )。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setForegroundColor(color)
setItalic(italic)
setItalic(startOffset, endOffsetInclusive, italic)
設定指定字元範圍的斜體設定。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the first 11 characters in the tab's body to italic. const text = body.editAsText().setItalic(0, 10, true);
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 文字範圍的起始位移。 |
endOffsetInclusive | Integer | 文字範圍的結束偏移。 |
italic | Boolean | 斜體設定。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setLinkUrl(startOffset, endOffsetInclusive, url)
設定指定字元範圍的連結網址。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Applies a link to the first 11 characters in the body. const text = body.editAsText().setLinkUrl(0, 10, 'https://example.com');
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 文字範圍的起始位移。 |
endOffsetInclusive | Integer | 文字範圍的結束偏移。 |
url | String | 連結網址。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setLinkUrl(url)
setStrikethrough(strikethrough)
setStrikethrough(startOffset, endOffsetInclusive, strikethrough)
設定指定字元範圍的刪除線設定。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the first 11 characters in the tab's body to strikethrough. const text = body.editAsText().setStrikethrough(0, 10, true);
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 文字範圍的起始位移。 |
endOffsetInclusive | Integer | 文字範圍的結束偏移。 |
strikethrough | Boolean | 刪除線設定。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setText(text)
設定文字內容。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Replaces the contents of the body with the text, 'New body text.' const text = body.editAsText().setText('New body text.');
參數
名稱 | 類型 | 說明 |
---|---|---|
text | String | 新的文字內容。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setTextAlignment(startOffset, endOffsetInclusive, textAlignment)
設定指定字元範圍的文字對齊方式。可用的對齊類型如下:
DocumentApp.TextAlignment.NORMAL
、DocumentApp.TextAlignment.SUBSCRIPT
和
DocumentApp.TextAlignment.SUPERSCRIPT
。
// Make the first character in the first paragraph of the active tab be superscript. var documentTab = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab(); var text = documentTab.getBody().getParagraphs()[0].editAsText(); text.setTextAlignment(0, 0, DocumentApp.TextAlignment.SUPERSCRIPT);
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 字元範圍的開始偏移。 |
endOffsetInclusive | Integer | 字元範圍的結束偏移 (含)。 |
textAlignment | TextAlignment | 要套用的文字對齊類型。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
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 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 | 要套用的文字對齊類型 |
回攻員
Text
:目前的元素
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setUnderline(underline)
setUnderline(startOffset, endOffsetInclusive, underline)
設定指定字元範圍的底線設定。
// Opens the Docs file by its URL. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the URL with your own. const doc = DocumentApp.openByUrl('https://docs.google.com/document/d/DOCUMENT_ID/edit'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Sets the first 11 characters in the tab's body to underline. const text = body.editAsText().setUnderline(0, 10, true);
參數
名稱 | 類型 | 說明 |
---|---|---|
startOffset | Integer | 文字範圍的起始位移。 |
endOffsetInclusive | Integer | 文字範圍的結束偏移。 |
underline | Boolean | 底線設定。 |
回攻員
Text
:目前的元素。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents