ドキュメントの本文を表す要素。Body
には、ListItem
要素、Paragraph
要素、Table
要素、TableOfContents
要素を含めることができます。ドキュメント構造について詳しくは、Google ドキュメントの拡張ガイドをご覧ください。
Body
には通常、HeaderSection
要素、FooterSection
要素、FootnoteSection
要素を除く、ドキュメントの全コンテンツが含まれます。
var doc = DocumentApp.getActiveDocument(); var body = doc.getBody(); // Append a paragraph and a page break to the document body section directly. body.appendParagraph("A paragraph."); body.appendPageBreak();
Methods
詳細なドキュメント
appendHorizontalRule()
新しい HorizontalRule
を作成して追加します。
HorizontalRule
は、新しい Paragraph
に含まれます。
リターン
HorizontalRule
- 新しい水平ルール
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
appendImage(image)
指定されたイメージ blob から新しい InlineImage
を作成して追加します。
画像は新しい Paragraph
に含まれます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
image | BlobSource | エンコーダから |
リターン
InlineImage
- 追加画像
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
appendImage(image)
指定した InlineImage
を追加します。
InlineImage
は新しい Paragraph
に含まれます。
既存の InlineImage
のコピーを追加する場合は、このバージョンの appendImage
を使用します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
image | InlineImage | エンコーダから |
リターン
InlineImage
- 追加画像
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
appendListItem(listItem)
appendListItem(text)
appendPageBreak()
appendPageBreak(pageBreak)
指定した PageBreak
を追加します。
PageBreak
は新しい Paragraph
に含まれます。
既存の PageBreak
のコピーを追加する場合は、このバージョンの appendPageBreak
を使用します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
pageBreak | PageBreak | 追加する |
リターン
PageBreak
- 追加された改ページ
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
appendParagraph(paragraph)
appendParagraph(text)
appendTable()
appendTable(cells)
指定された各文字列値の TableCell
を含む新しい Table
を追加します。
また、Google ドキュメントのドキュメントは表で終わることができないため、この方法では表の後に空の段落が追加されます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
cells | String[][] | 新しい表に追加する表のセルのテキスト コンテンツ |
リターン
Table
- 追加テーブル
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
appendTable(table)
指定した Table
を追加します。
既存の Table
のコピーを追加する場合は、このバージョンの appendTable
を使用します。また、Google ドキュメントのドキュメントは表で終わることができないため、この方法では表の後に空の段落が追加されます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
table | Table | 追加するテーブル |
リターン
Table
- 追加テーブル
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
clear()
copy()
editAsText()
現在の要素の Text
バージョンを取得し、編集します。
要素のコンテンツをリッチテキストとして操作するには、editAsText
を使用します。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
- 検索要素の位置を示す検索結果
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
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
- 検索要素の次の位置を示す検索結果
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findText(searchPattern)
正規表現を使用して、指定されたテキスト パターンについて要素の内容を検索します。
JavaScript の正規表現機能のサブセット(キャプチャ グループやモード修飾子など)は完全にはサポートされていません。
指定された正規表現パターンは、現在の要素に含まれている各テキスト ブロックと個別に照合されます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
searchPattern | String | 検索するパターンを指定します |
リターン
RangeElement
- 検索テキストの位置を示す検索結果。一致するものがない場合は null
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findText(searchPattern, from)
指定された検索結果から、指定されたテキスト パターンの要素コンテンツを検索します。
JavaScript の正規表現機能のサブセット(キャプチャ グループやモード修飾子など)は完全にはサポートされていません。
指定された正規表現パターンは、現在の要素に含まれている各テキスト ブロックと個別に照合されます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
searchPattern | String | 検索するパターンを指定します |
from | RangeElement | クリックします。 |
リターン
RangeElement
- 検索テキストの次の位置を示す検索結果。一致するものがない場合は null
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
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
- 要素の属性。
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
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
- 指定されたインデックスの子要素
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getChildIndex(child)
getHeadingAttributes(paragraphHeading)
指定された ParagraphHeading
の属性のセットを取得します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
paragraphHeading | ParagraphHeading | 属性が取得される見出し。 |
リターン
Object
- 属性とその現在の値のマップ
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getImages()
セクションに含まれるすべての InlineImages
を取得します。
リターン
InlineImage[]
- セクション画像
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getListItems()
セクションに含まれるすべての ListItems
を取得します。
リターン
ListItem[]
- セクション リストアイテム
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getMarginBottom()
下余白(ポイント単位)を取得します。
リターン
Number
- 下余白(ポイント単位)
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getMarginLeft()
左余白をポイント単位で取得します。
リターン
Number
- 左余白(ポイント単位)
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getMarginRight()
右余白を取得します。
リターン
Number
- 右余白(ポイント単位)
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getMarginTop()
上余白を取得します。
リターン
Number
- 上余白(ポイント単位)
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
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
- 子の数
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getPageHeight()
ページの高さ(ポイント単位)を取得します。
リターン
Number
- ページの高さ(ポイント単位)
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getPageWidth()
ページの幅(ポイント単位)を取得します。
リターン
Number
- ページの幅(ポイント単位)
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getParagraphs()
セクション内のすべての Paragraphs
(ListItems
を含む)を取得します。
リターン
Paragraph[]
- セクション段落
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getParent()
要素の親要素を取得します。
親要素には現在の要素が含まれます。
リターン
ContainerElement
- 親要素。
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getTables()
getText()
要素のコンテンツをテキスト文字列として取得します。
リターン
String
- 要素のコンテンツ(テキスト文字列)
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
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
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
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
- 要素のタイプ。
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertHorizontalRule(childIndex)
指定されたインデックスに新しい HorizontalRule
を作成して挿入します。
HorizontalRule
は、新しい Paragraph
に含まれます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
childIndex | Integer | 要素を挿入するインデックス |
リターン
HorizontalRule
- 新しい水平ルール
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertImage(childIndex, image)
指定されたインデックスで、指定された画像 blob から InlineImage
を作成して挿入します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
childIndex | Integer | 要素を挿入するインデックス |
image | BlobSource | エンコーダから |
リターン
InlineImage
- 挿入されたインライン画像
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertImage(childIndex, image)
指定された InlineImage
を指定されたインデックスに挿入します。
画像は新しい Paragraph
に含まれます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
childIndex | Integer | 要素を挿入するインデックス |
image | InlineImage | 挿入する画像です |
リターン
InlineImage
- 挿入されたインライン画像
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertListItem(childIndex, listItem)
insertListItem(childIndex, text)
insertPageBreak(childIndex)
insertPageBreak(childIndex, pageBreak)
指定された PageBreak
を指定されたインデックスに挿入します。
PageBreak
は、新しい Paragraph
に含まれます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
childIndex | Integer | 要素を挿入するインデックス |
pageBreak | PageBreak | ページを挿入 |
リターン
PageBreak
- 挿入された改ページ
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
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().getBody(); // Clear the text surrounding "Apps Script", with or without text. body.replaceText("^.*Apps ?Script.*$", "Apps Script");
パラメータ
名前 | 型 | 説明 |
---|---|---|
searchPattern | String | 検索する正規表現パターンを |
replacement | String | 置換として使用するテキストです。 |
リターン
Element
- 現在の要素
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
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 | 要素の属性。 |
リターン
Body
- 現在の要素。
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setHeadingAttributes(paragraphHeading, attributes)
指定された ParagraphHeading
の属性を設定します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
paragraphHeading | ParagraphHeading | 属性を設定する見出し |
attributes | Object | 属性と、それらを設定するための値のマップ |
リターン
Body
- 現在の要素
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
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 be superscript. var text = DocumentApp.getActiveDocument().getBody().getParagraphs()[0].editAsText(); text.setTextAlignment(DocumentApp.TextAlignment.SUPERSCRIPT);
パラメータ
名前 | 型 | 説明 |
---|---|---|
textAlignment | TextAlignment | 適用するテキストの配置の種類 |
リターン
Body
- 現在の要素
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents