Stay organized with collections Save and categorize content based on your preferences.
ParagraphAn element representing a paragraph. A Paragraph
may contain Equation
, Footnote
, HorizontalRule
, InlineDrawing
, InlineImage
, PageBreak
, and Text
elements. For more information on document structure, see the guide to extending Google Docs.
Paragraphs
may not contain new-line characters. New-line characters ("\n") are converted to line-break characters ("\r").
const body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Append a tab header paragraph. const header = body.appendParagraph('A Document'); header.setHeading(DocumentApp.ParagraphHeading.HEADING1); // Append a section header paragraph. const section = body.appendParagraph('Section 1'); section.setHeading(DocumentApp.ParagraphHeading.HEADING2); // Append a regular paragraph. body.appendParagraph('This is a typical paragraph.');Methods Method Return type Brief description
addPositionedImage(image)
PositionedImage
Creates and inserts a new PositionedImage
from the specified image blob. appendHorizontalRule()
HorizontalRule
Creates and appends a new HorizontalRule
. appendInlineImage(image)
InlineImage
Creates and appends a new InlineImage
from the specified image blob. appendInlineImage(image)
InlineImage
Appends the given InlineImage
. appendPageBreak()
PageBreak
Creates and appends a new PageBreak
. appendPageBreak(pageBreak)
PageBreak
Appends the given PageBreak
. appendText(text)
Text
Creates and appends a new Text
element with the specified contents. appendText(text)
Text
Appends the given Text
element. clear()
Paragraph
Clears the contents of the element. copy()
Paragraph
Returns a detached, deep copy of the current element. editAsText()
Text
Obtains a Text
version of the current element, for editing. findElement(elementType)
RangeElement
Searches the contents of the element for a descendant of the specified type. findElement(elementType, from)
RangeElement
Searches the contents of the element for a descendant of the specified type, starting from the specified RangeElement
. findText(searchPattern)
RangeElement
Searches the contents of the element for the specified text pattern using regular expressions. findText(searchPattern, from)
RangeElement
Searches the contents of the element for the specified text pattern, starting from a given search result. getAlignment()
HorizontalAlignment
Retrieves the HorizontalAlignment
. getAttributes()
Object
Retrieves the element's attributes. getChild(childIndex)
Element
Retrieves the child element at the specified child index. getChildIndex(child)
Integer
Retrieves the child index for the specified child element. getHeading()
ParagraphHeading
Retrieves the ParagraphHeading
. getIndentEnd()
Number
Retrieves the end indentation, in points. getIndentFirstLine()
Number
Retrieves the first line indentation, in points. getIndentStart()
Number
Retrieves the start indentation. getLineSpacing()
Number
Retrieves the line spacing, in points. getLinkUrl()
String
Retrieves the link url. getNextSibling()
Element
Retrieves the element's next sibling element. getNumChildren()
Integer
Retrieves the number of children. getParent()
ContainerElement
Retrieves the element's parent element. getPositionedImage(id)
PositionedImage
Gets a PositionedImage
by the image's ID. getPositionedImages()
PositionedImage[]
Gets all PositionedImage
objects anchored to the paragraph. getPreviousSibling()
Element
Retrieves the element's previous sibling element. getSpacingAfter()
Number
Retrieves the spacing after the element, in points. getSpacingBefore()
Number
Retrieves the spacing before the element, in points. getText()
String
Retrieves the contents of the element as a text string. getTextAlignment()
TextAlignment
Gets the text alignment. getType()
ElementType
Retrieves the element's ElementType
. insertHorizontalRule(childIndex)
HorizontalRule
Creates and inserts a HorizontalRule
at the specified index. insertInlineImage(childIndex, image)
InlineImage
Creates and inserts a new InlineImage
from the specified image blob, at the specified index. insertInlineImage(childIndex, image)
InlineImage
Inserts the given InlineImage
at the specified index. insertPageBreak(childIndex)
PageBreak
Creates and inserts a new PageBreak
at the specified index. insertPageBreak(childIndex, pageBreak)
PageBreak
Inserts the given PageBreak
at the specified index. insertText(childIndex, text)
Text
Creates and inserts a new text element at the specified index. insertText(childIndex, text)
Text
Inserts the given Text
element at the specified index, with the specified text contents. isAtDocumentEnd()
Boolean
Determines whether the element is at the end of the Document
. isLeftToRight()
Boolean
Retrieves the left-to-right setting. merge()
Paragraph
Merges the element with the preceding sibling of the same type. removeChild(child)
Paragraph
Removes the specified child element. removeFromParent()
Paragraph
Removes the element from its parent. removePositionedImage(id)
Boolean
Removes a PositionedImage
by the image's ID. replaceText(searchPattern, replacement)
Element
Replaces all occurrences of a given text pattern with a given replacement string, using regular expressions. setAlignment(alignment)
Paragraph
Sets the HorizontalAlignment
. setAttributes(attributes)
Paragraph
Sets the element's attributes. setHeading(heading)
Paragraph
Sets the ParagraphHeading
. setIndentEnd(indentEnd)
Paragraph
Sets the end indentation, in points. setIndentFirstLine(indentFirstLine)
Paragraph
Sets the first line indentation, in points. setIndentStart(indentStart)
Paragraph
Sets the start indentation, in points. setLeftToRight(leftToRight)
Paragraph
Sets the left-to-right setting. setLineSpacing(multiplier)
Paragraph
Sets the line spacing, as a quantity indicating the number of lines to use for spacing. setLinkUrl(url)
Paragraph
Sets the link url. setSpacingAfter(spacingAfter)
Paragraph
Sets the spacing after the element, in points. setSpacingBefore(spacingBefore)
Paragraph
Sets the spacing before the element, in points. setText(text)
void
Sets the contents of the paragraph as text. setTextAlignment(textAlignment)
Paragraph
Sets the text alignment. Detailed documentation addPositionedImage(image)
Creates and inserts a new PositionedImage
from the specified image blob.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first paragraph from the body. const paragraph = body.getParagraphs()[0]; // Fetches the specified image URL. const image = UrlFetchApp.fetch( 'https://fonts.gstatic.com/s/i/productlogos/apps_script/v10/web-24dp/logo_apps_script_color_1x_web_24dp.png', ); // Adds the image to the tab, anchored to the first paragraph. paragraph.addPositionedImage(image);Parameters Name Type Description
image
BlobSource
The image data. Return
PositionedImage
— The new positioned image.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
appendHorizontalRule()
Creates and appends a new HorizontalRule
.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first paragraph from the body. const paragraph = body.getParagraphs()[0]; // Adds a horizontal line under the first paragraph. paragraph.appendHorizontalRule();Return
HorizontalRule
— The new horizontal rule.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
appendInlineImage(image)
Creates and appends a new InlineImage
from the specified image blob.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first paragraph from the body. const paragraph = body.getParagraphs()[0]; // Fetches the image from the specified image URL. const image = UrlFetchApp.fetch( 'https://fonts.gstatic.com/s/i/productlogos/apps_script/v10/web-96dp/logo_apps_script_color_1x_web_96dp.png', ); // Adds the image to the first paragraph. paragraph.appendInlineImage(image);Parameters Name Type Description
image
BlobSource
The image data. Return
InlineImage
— The appended image.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
appendInlineImage(image)
Appends the given InlineImage
.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first paragraph from the body. const paragraph = body.getParagraphs()[0]; // Makes a copy of the first image in the body. const image = body.getImages()[0].copy(); // Adds the image to the first paragraph. paragraph.appendInlineImage(image);Parameters Name Type Description
image
InlineImage
The image data. Return
InlineImage
— The appended image.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
appendPageBreak()
Creates and appends a new PageBreak
.
Note: PageBreaks
may not be contained within TableCells
. If the current element is contained in a table cell, an exception will be thrown.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first paragraph from the body. const paragraph = body.getParagraphs()[0]; // Adds a page break after the first paragraph. paragraph.appendPageBreak();Return
PageBreak
— The new page break element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
appendPageBreak(pageBreak)
Appends the given PageBreak
.
Note: PageBreaks
can't be contained within TableCells
. If the current element exists in a table cell, the script throws an exception.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first paragraph from the body. const paragraph = body.getParagraphs()[0]; // Adds a page break after the first paragraph. const pageBreak = paragraph.appendPageBreak(); // Makes a copy of the page break. const newPageBreak = pageBreak.copy(); // Adds the copied page break to the paragraph. paragraph.appendPageBreak(newPageBreak);Parameters Name Type Description
pageBreak
PageBreak
The page break to append. Return
PageBreak
— The appended page break element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
appendText(text)
Creates and appends a new Text
element with the specified contents.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first paragraph from the body. const paragraph = body.getParagraphs()[0]; // Adds a string to the paragraph. paragraph.appendText('This is a new sentence.');Parameters Name Type Description
text
String
The text contents. Return
Text
— The new text element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
appendText(text)
Appends the given Text
element.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the text from the first paragraph in the body. const paragraph1 = body.getParagraphs()[0]; const text = paragraph1.getText(); // Gets the third paragraph in the body. const paragraph3 = body.getParagraphs()[2]; // Adds the text from the first paragraph to the third paragraph. paragraph3.appendText(text);Parameters Name Type Description
text
Text
The text element to append. Return
Text
— The appended text element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
clear()
Clears the contents of the element.
ReturnParagraph
— The current element.
copy()
Returns a detached, deep copy of the current element.
Any child elements present in the element are also copied. The new element doesn't have a parent.
ReturnParagraph
— The new copy.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
editAsText()
Obtains a Text
version of the current element, for editing.
Use editAsText
for manipulating the elements contents as rich text. The editAsText
mode ignores non-text elements (such as InlineImage
and HorizontalRule
).
Child elements fully contained within a deleted text range are removed from the element.
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);Return
Text
— a text version of the current element
findElement(elementType)
Searches the contents of the element for a descendant of the specified type.
Parameters Name Type DescriptionelementType
ElementType
The type of element to search for. Return
RangeElement
— A search result indicating the position of the search element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
findElement(elementType, from)
Searches the contents of the element for a descendant of the specified type, starting from the specified RangeElement
.
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; } }Parameters Name Type Description
elementType
ElementType
The type of element to search for. from
RangeElement
The search result to search from. Return
RangeElement
— A search result indicating the next position of the search element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
findText(searchPattern)
Searches the contents of the element for the specified text pattern using regular expressions.
A subset of the JavaScript regular expression features are not fully supported, such as capture groups and mode modifiers.
The provided regular expression pattern is independently matched against each text block contained in the current element.
Parameters Name Type DescriptionsearchPattern
String
the pattern to search for Return
RangeElement
— a search result indicating the position of the search text, or null if there is no match
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
findText(searchPattern, from)
Searches the contents of the element for the specified text pattern, starting from a given search result.
A subset of the JavaScript regular expression features are not fully supported, such as capture groups and mode modifiers.
The provided regular expression pattern is independently matched against each text block contained in the current element.
Parameters Name Type DescriptionsearchPattern
String
the pattern to search for from
RangeElement
the search result to search from Return
RangeElement
— a search result indicating the next position of the search text, or null if there is no match
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getAlignment()
Retrieves the HorizontalAlignment
.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first paragraph from the body. const paragraph = body.getParagraphs()[0]; // Sets the horizontal alignment to left for the first paragraph. paragraph.setAlignment(DocumentApp.HorizontalAlignment.LEFT); // Gets the horizontal alignment of the first paragraph and logs it to the // console. console.log(paragraph.getAlignment().toString());Return
HorizontalAlignment
— The alignment.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getAttributes()
Retrieves the element's attributes.
The result is an object containing a property for each valid element attribute where each property name corresponds to an item in the DocumentApp.Attribute
enumeration.
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]}`); }Return
Object
— The element's attributes.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getChild(childIndex)
Retrieves the child element at the specified child index.
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.'); }Parameters Name Type Description
childIndex
Integer
The index of the child element to retrieve. Return
Element
— The child element at the specified index.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getChildIndex(child)
Retrieves the child index for the specified child element.
Parameters Name Type Descriptionchild
Element
The child element for which to retrieve the index. Return
Integer
— The child index.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getHeading()
Retrieves the ParagraphHeading
.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Adds a paragraph to the body. const paragraph = body.appendParagraph('Title heading'); // Sets the paragraph heading style to 'Title.' paragraph.setHeading(DocumentApp.ParagraphHeading.TITLE); // Gets the heading style and logs it to the console. console.log(paragraph.getHeading().toString());Return
ParagraphHeading
— The heading.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getIndentEnd()
Retrieves the end indentation, in points.
ReturnNumber
— the end indentation, in points
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getIndentFirstLine()
Retrieves the first line indentation, in points.
ReturnNumber
— the first line indentation, in points
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getIndentStart()
Retrieves the start indentation.
ReturnNumber
— the start indentation
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getLineSpacing()
Retrieves the line spacing, in points.
ReturnNumber
— the line spacing, in points
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getLinkUrl()
Retrieves the link url.
ReturnString
— the link url, or null if the element contains multiple values for this attribute
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getNextSibling()
Retrieves the element's next sibling element.
The next sibling has the same parent and follows the current element.
ReturnElement
— The next sibling element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getNumChildren()
Retrieves the number of 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.`);Return
Integer
— The number of children.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getParent()
Retrieves the element's parent element.
The parent element contains the current element.
ReturnContainerElement
— The parent element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getPositionedImage(id)
Gets a PositionedImage
by the image's ID.
id
String
the image id Return
PositionedImage
— the positioned image
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getPositionedImages()
Gets all PositionedImage
objects anchored to the paragraph.
PositionedImage[]
— a list of positioned images
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getPreviousSibling()
Retrieves the element's previous sibling element.
The previous sibling has the same parent and precedes the current element.
ReturnElement
— The previous sibling element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getSpacingAfter()
Retrieves the spacing after the element, in points.
ReturnNumber
— the spacing after the element, in points
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getSpacingBefore()
Retrieves the spacing before the element, in points.
ReturnNumber
— the spacing before the element, in points
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getText()
Retrieves the contents of the element as a text string.
ReturnString
— the contents of the element as text string
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getTextAlignment()
Gets the text alignment. The available types of alignment are DocumentApp.TextAlignment.NORMAL
, DocumentApp.TextAlignment.SUBSCRIPT
, and DocumentApp.TextAlignment.SUPERSCRIPT
.
TextAlignment
— the type of text alignment, or null
if the text contains multiple types of text alignments or if the text alignment has never been set
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
getType()
Retrieves the element's ElementType
.
Use getType()
to determine the exact type of a given element.
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.'); }Return
ElementType
— The element type.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
insertHorizontalRule(childIndex)
Creates and inserts a HorizontalRule
at the specified index.
childIndex
Integer
the index at which to insert the element Return
HorizontalRule
— the new horizontal rule element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
insertInlineImage(childIndex, image)
Creates and inserts a new InlineImage
from the specified image blob, at the specified index.
childIndex
Integer
the index at which to insert the element image
BlobSource
the image data Return
InlineImage
— the inserted inline image element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
insertInlineImage(childIndex, image)
Inserts the given InlineImage
at the specified index.
childIndex
Integer
the index at which to insert the element image
InlineImage
the image data Return
InlineImage
— the inserted inline image element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
insertPageBreak(childIndex)
Creates and inserts a new PageBreak
at the specified index.
Note: PageBreaks
may not be contained within TableCells
. If the current element is contained in a table cell, an exception will be thrown.
childIndex
Integer
the index at which to insert the element Return
PageBreak
— the new page break element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
insertPageBreak(childIndex, pageBreak)
Inserts the given PageBreak
at the specified index.
Note: PageBreaks
may not be contained within TableCells
. If the current element is contained in a table cell, an exception will be thrown.
childIndex
Integer
the index at which to insert the element pageBreak
PageBreak
the p[age break to insert Return
PageBreak
— the inserted page break element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
insertText(childIndex, text)
Creates and inserts a new text element at the specified index.
Parameters Name Type DescriptionchildIndex
Integer
the index at which to insert the element text
String
the text contents Return
Text
— the new text element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
insertText(childIndex, text)
Inserts the given Text
element at the specified index, with the specified text contents.
childIndex
Integer
the index at which to insert the element text
Text
the text element to insert Return
Text
— the inserted text element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
isAtDocumentEnd()
Determines whether the element is at the end of the Document
.
Boolean
— Whether the element is at the end of the tab.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
isLeftToRight()
Retrieves the left-to-right setting.
ReturnBoolean
— the left-to-right setting
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
merge()
Merges the element with the preceding sibling of the same type.
Only elements of the same ElementType
can be merged. Any child elements contained in the current element are moved to the preceding sibling element.
The current element is removed from the document.
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();Return
Paragraph
— The merged element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
removeChild(child)
Removes the specified child element.
Parameters Name Type Descriptionchild
Element
the child element to remove Return
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
removeFromParent()
Removes the element from its 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(); }Return
Paragraph
— The removed element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
removePositionedImage(id)
Removes a PositionedImage
by the image's ID.
id
String
the image id Return
Boolean
— whether or not the specified image was removed
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
replaceText(searchPattern, replacement)
Replaces all occurrences of a given text pattern with a given replacement string, using regular expressions.
The search pattern is passed as a string, not a JavaScript regular expression object. Because of this you'll need to escape any backslashes in the pattern.
This methods uses Google's RE2 regular expression library, which limits the supported syntax.
The provided regular expression pattern is independently matched against each text block contained in the current element.
const body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Clear the text surrounding "Apps Script", with or without text. body.replaceText('^.*Apps ?Script.*$', 'Apps Script');Parameters Name Type Description
searchPattern
String
the regex pattern to search for replacement
String
the text to use as replacement Return
Element
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setAlignment(alignment)
Sets the HorizontalAlignment
.
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setAttributes(attributes)
Sets the element's attributes.
The specified attributes parameter must be an object where each property name is an item in the DocumentApp.Attribute
enumeration and each property value is the new value to be applied.
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);Parameters Name Type Description
attributes
Object
The element's attributes. Return
Paragraph
— The current element.
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setHeading(heading)
Sets the ParagraphHeading
.
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setIndentEnd(indentEnd)
Sets the end indentation, in points.
Parameters Name Type DescriptionindentEnd
Number
the end indentation, in points Return
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setIndentFirstLine(indentFirstLine)
Sets the first line indentation, in points.
Parameters Name Type DescriptionindentFirstLine
Number
the first line indentation, in points Return
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setIndentStart(indentStart)
Sets the start indentation, in points.
Parameters Name Type DescriptionindentStart
Number
the start indentation, in points Return
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setLeftToRight(leftToRight)
Sets the left-to-right setting.
Parameters Name Type DescriptionleftToRight
Boolean
the left-to-right setting Return
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setLineSpacing(multiplier)
Sets the line spacing, as a quantity indicating the number of lines to use for spacing.
Parameters Name Type Descriptionmultiplier
Number
the number of lines Return
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setLinkUrl(url)
Sets the link url.
Parameters Name Type Descriptionurl
String
the link url Return
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setSpacingAfter(spacingAfter)
Sets the spacing after the element, in points.
Parameters Name Type DescriptionspacingAfter
Number
the spacing after the element, in points Return
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setSpacingBefore(spacingBefore)
Sets the spacing before the element, in points.
Parameters Name Type DescriptionspacingBefore
Number
the spacing before the element, in points Return
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setText(text)
Sets the contents of the paragraph as text.
Note: existing contents are cleared.
Parameters Name Type Descriptiontext
String
the new text contents Authorization
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
setTextAlignment(textAlignment)
Sets the text alignment. The available types of alignment are DocumentApp.TextAlignment.NORMAL
, DocumentApp.TextAlignment.SUBSCRIPT
, and DocumentApp.TextAlignment.SUPERSCRIPT
.
// 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);Parameters Name Type Description
textAlignment
TextAlignment
the type of text alignment to apply Return
Paragraph
— the current element
Scripts that use this method require authorization with one or more of the following scopes:
https://www.googleapis.com/auth/documents.currentonly
https://www.googleapis.com/auth/documents
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-12-03 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-12-03 UTC."],[[["The Google Apps Script `Paragraph` class provides methods for manipulating paragraphs in Google Docs."],["These methods allow for content and formatting changes, structural navigation, and element searching within paragraphs."],["Most methods require authorization with specific Google API scopes, such as `https://www.googleapis.com/auth/documents`."],["Developers can use these methods to programmatically create, modify, and format paragraphs within Google Docs."],["Detailed documentation for each method, including descriptions, parameters, return values, and code examples, is available."]]],[]]
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4