Class TextStyle  |  Apps Script  |  Google for Developers (original) (raw)

Skip to main content

Class TextStyle

Stay organized with collections Save and categorize content based on your preferences.

TextStyle

The style of text.

Read methods in this class return null if the corresponding [TextRange](/apps-script/reference/slides/text-range) spans multiple text runs, and those runs have different values for the read method being called. To avoid this, query for text styles using the [TextRange](/apps-script/reference/slides/text-range)s returned by the [TextRange.getRuns()](/apps-script/reference/slides/text-range#getRuns%28%29) method.

If you use methods that edit how text fits within a shape, any autofit settings applied to the text styles are deactivated.

Methods

Method Return type Brief description
getBackgroundColor() Color Returns the background color of the text, or null if there are multiple styles on the text.
getBaselineOffset() TextBaselineOffset Returns the vertical offset of text from its normal position, or null if there are multiple styles on the text.
getFontFamily() String Returns the font family of the text, or null if there are multiple styles on the text.
getFontSize() Number Returns the font size of the text in points, or null if there are multiple styles on the text.
getFontWeight() Integer Returns the font weight of the text, or null if there are multiple styles on the text.
getForegroundColor() Color Returns the foreground color of the text, or null if there are multiple styles on the text.
getLink() Link Returns the Link on the text, or null if there is no link or if the link is on part of the text or if there are multiple links.
hasLink() Boolean Returns true if there is link on the text, false if not, or null if the link is on part of the text or there are multiple links.
isBackgroundTransparent() Boolean Returns true if the background of the text is transparent, false if not, ornull if there are multiple styles on the text.
isBold() Boolean Returns true if the text is rendered as bold, false if not, or null if there are multiple styles on the text.
isItalic() Boolean Returns true if the text is italicized, false if not, or null if there are multiple styles on the text.
isSmallCaps() Boolean Returns true if the text is in small capital letters, false if not, or null if there are multiple styles on the text.
isStrikethrough() Boolean Returns true if the text is struck through, false if not, or null if there are multiple styles on the text.
isUnderline() Boolean Returns true if the text is underlined, false if not, or null if there are multiple styles on the text.
removeLink() TextStyle Removes a Link.
setBackgroundColor(color) TextStyle Sets the background color of the text.
setBackgroundColor(red, green, blue) TextStyle Sets the background color of the text to the given RGB values from 0 to 255.
setBackgroundColor(hexColor) TextStyle Sets the background color of the text to the given hex color string.
setBackgroundColor(color) TextStyle Sets the background color of the text to the given ThemeColorType.
setBackgroundColorTransparent() TextStyle Sets the background color of the text to transparent.
setBaselineOffset(offset) TextStyle Sets the vertical offset of the text relative to its normal position.
setBold(bold) TextStyle Sets whether the text should be rendered as bold.
setFontFamily(fontFamily) TextStyle Sets the font family of the text .
setFontFamilyAndWeight(fontFamily, fontWeight) TextStyle Sets the font family and weight of the text.
setFontSize(fontSize) TextStyle Sets the font size of the text, in points.
setForegroundColor(foregroundColor) TextStyle Sets the foreground color of the text.
setForegroundColor(red, green, blue) TextStyle Sets the foreground color of the text to the given RGB values from 0 to 255.
setForegroundColor(hexColor) TextStyle Sets the foreground color of the text to the given hex color string.
setForegroundColor(color) TextStyle Sets the foreground color of the text to the given ThemeColorType.
setItalic(italic) TextStyle Sets the whether the text is italicized.
setLinkSlide(slideIndex) TextStyle Sets a Link to the given Slide using the zero-based index of the slide.
setLinkSlide(slide) TextStyle Sets a Link to the given Slide, the link is set by the given slide ID.
setLinkSlide(slidePosition) TextStyle Sets a Link to the given Slide using the relative position of the slide.
setLinkUrl(url) TextStyle Sets a Link to the given non-empty URL string.
setSmallCaps(smallCaps) TextStyle Sets whether the text is rendered in small capital letters.
setStrikethrough(strikethrough) TextStyle Sets whether the text is struck through.
setUnderline(underline) TextStyle Sets whether the text is underlined.

Detailed documentation

getBackgroundColor()

Returns the background color of the text, or null if there are multiple styles on the text.

Return

[Color](/apps-script/reference/slides/color)

Scripts that use this method require authorization with one or more of the following scopes:


getBaselineOffset()

Returns the vertical offset of text from its normal position, or null if there are multiple styles on the text.

Return

[TextBaselineOffset](/apps-script/reference/slides/text-baseline-offset)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getFontFamily()

Returns the font family of the text, or null if there are multiple styles on the text.

Return

String

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getFontSize()

Returns the font size of the text in points, or null if there are multiple styles on the text.

Return

Number

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getFontWeight()

Returns the font weight of the text, or null if there are multiple styles on the text.

The weight is a multiple of 100 between 100 and 900, inclusive. This range corresponds to the numerical values described in the CSS 2.1 Specification, section 15.6, with non-numerical values disallowed. Weights greater than or equal to 700 are considered bold, in which case [isBold()](#isBold%28%29) returns true. The default value is 400 ("normal").

Return

Integer

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


getForegroundColor()

Returns the foreground color of the text, or null if there are multiple styles on the text.

Return

[Color](/apps-script/reference/slides/color)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


Returns the [Link](/apps-script/reference/slides/link) on the text, or null if there is no link or if the link is on part of the text or if there are multiple links. Call [hasLink()](#hasLink%28%29) to determine whether the text has no link.

const shape = SlidesApp.getActivePresentation().getSlides()[0].getShapes()[0]; const textLink = shape.getText().getTextStyle().getLink(); if (textLink != null) { Logger.log(Shape text has a link of type: ${textLink.getLinkType()}); }

Return

[Link](/apps-script/reference/slides/link)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


Returns true if there is link on the text, false if not, or null if the link is on part of the text or there are multiple links.

Links cannot be set on newline characters. Therefore, if the [TextRange](/apps-script/reference/slides/text-range) contains a newline character, this method always returns either null or false.

Return

Boolean

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


isBackgroundTransparent()

Returns true if the background of the text is transparent, false if not, ornull if there are multiple styles on the text.

Return

Boolean

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


isBold()

Returns true if the text is rendered as bold, false if not, or null if there are multiple styles on the text.

Return

Boolean

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


isItalic()

Returns true if the text is italicized, false if not, or null if there are multiple styles on the text.

Return

Boolean

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


isSmallCaps()

Returns true if the text is in small capital letters, false if not, or null if there are multiple styles on the text.

Return

Boolean

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


isStrikethrough()

Returns true if the text is struck through, false if not, or null if there are multiple styles on the text.

Return

Boolean

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


isUnderline()

Returns true if the text is underlined, false if not, or null if there are multiple styles on the text.

Return

Boolean

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


Removes a [Link](/apps-script/reference/slides/link).

Removing a link removes the hyperlink foreground color and underline style on the text. If possible, these styles are applied to match the text preceding the link.

const textRange = SlidesApp.getActivePresentation().getSlides()[0].getShapes()[0].getText(); textRange.getTextStyle().removeLink();

Return

[TextStyle](#)


setBackgroundColor(color)

Sets the background color of the text.

Parameters

Name Type Description
color Color

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setBackgroundColor(red, green, blue)

Sets the background color of the text to the given RGB values from 0 to 255.

Parameters

Name Type Description
red Integer
green Integer
blue Integer

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setBackgroundColor(hexColor)

Sets the background color of the text to the given hex color string.

The hex string must be in the format '#RRGGBB'. For example, pink would be represented as '#FFC0CB'.

Parameters

Name Type Description
hexColor String

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setBackgroundColor(color)

Sets the background color of the text to the given [ThemeColorType](/apps-script/reference/slides/theme-color-type).

Parameters

Name Type Description
color ThemeColorType

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setBackgroundColorTransparent()

Sets the background color of the text to transparent.

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setBaselineOffset(offset)

Sets the vertical offset of the text relative to its normal position.

Parameters

Name Type Description
offset TextBaselineOffset

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setBold(bold)

Sets whether the text should be rendered as bold.

Changing the text's boldness updates the font weight used to render the text.

Parameters

Name Type Description
bold Boolean

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setFontFamily(fontFamily)

Sets the font family of the text .

Parameters

Name Type Description
fontFamily String

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setFontFamilyAndWeight(fontFamily, fontWeight)

Sets the font family and weight of the text.

The weight is a multiple of 100 between 100 and 900, inclusive. This range corresponds to the numerical values described in the CSS 2.1 Specification, section 15.6, with non-numerical values disallowed. Weights greater than or equal to 700 are considered bold, in which case [isBold()](#isBold%28%29) returns true. The default value is 400 ("normal").

Parameters

Name Type Description
fontFamily String
fontWeight Integer

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setFontSize(fontSize)

Sets the font size of the text, in points.

Parameters

Name Type Description
fontSize Number

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setForegroundColor(foregroundColor)

Sets the foreground color of the text.

Parameters

Name Type Description
foregroundColor Color

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setForegroundColor(red, green, blue)

Sets the foreground color of the text to the given RGB values from 0 to 255.

Parameters

Name Type Description
red Integer
green Integer
blue Integer

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setForegroundColor(hexColor)

Sets the foreground color of the text to the given hex color string.

The hex string must be in the format '#RRGGBB'. For example, pink would be represented as '#FFC0CB'.

Parameters

Name Type Description
hexColor String

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setForegroundColor(color)

Sets the foreground color of the text to the given [ThemeColorType](/apps-script/reference/slides/theme-color-type).

Parameters

Name Type Description
color ThemeColorType

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setItalic(italic)

Sets the whether the text is italicized.

Parameters

Name Type Description
italic Boolean

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setLinkSlide(slideIndex)

Sets a [Link](/apps-script/reference/slides/link) to the given [Slide](/apps-script/reference/slides/slide) using the zero-based index of the slide.

Setting a link changes the style of the text to be underlined and to have a [ThemeColorType.HYPERLINK](/apps-script/reference/slides/theme-color-type#HYPERLINK) foreground color. This can be changed via [setForegroundColor(hexColor)](#setForegroundColor%28String%29) and [setUnderline(underline)](#setUnderline%28Boolean%29).

Since links cannot be set on newline characters, newline characters in the [TextRange](/apps-script/reference/slides/text-range)are ignored.

// Set a link to the first slide of the presentation. const presentation = SlidesApp.getActivePresentation(); const slide = presentation.getSlides()[0]; const textRange = slide.getShapes()[0].getText(); textRange.getTextStyle().setLinkSlide(0);

Parameters

Name Type Description
slideIndex Integer The zero-based index to the slide.

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setLinkSlide(slide)

Sets a [Link](/apps-script/reference/slides/link) to the given [Slide](/apps-script/reference/slides/slide), the link is set by the given slide ID.

Setting a link changes the style of the text to be underlined and to have a [ThemeColorType.HYPERLINK](/apps-script/reference/slides/theme-color-type#HYPERLINK) foreground color. This can be changed via [setForegroundColor(hexColor)](#setForegroundColor%28String%29) and [setUnderline(underline)](#setUnderline%28Boolean%29).

Since links cannot be set on newline characters, newline characters in the [TextRange](/apps-script/reference/slides/text-range)are ignored.

// Set a link to the first slide of the presentation. const presentation = SlidesApp.getActivePresentation(); const slide = presentation.getSlides()[0]; const textRange = slide.getShapes()[0].getText(); textRange.getTextStyle().setLinkSlide(slide);

Parameters

Name Type Description
slide Slide The Slide to be linked.

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setLinkSlide(slidePosition)

Sets a [Link](/apps-script/reference/slides/link) to the given [Slide](/apps-script/reference/slides/slide) using the relative position of the slide.

Setting a link changes the style of the text to be underlined and to have a [ThemeColorType.HYPERLINK](/apps-script/reference/slides/theme-color-type#HYPERLINK) foreground color. This can be changed via [setForegroundColor(hexColor)](#setForegroundColor%28String%29) and [setUnderline(underline)](#setUnderline%28Boolean%29).

Since links cannot be set on newline characters, newline characters in the [TextRange](/apps-script/reference/slides/text-range)are ignored.

// Set a link to the first slide of the presentation. const textRange = SlidesApp.getActivePresentation().getSlides()[0].getShapes()[0].getText(); textRange.getTextStyle().setLinkSlide(SlidesApp.SlidePosition.FIRST_SLIDE);

Parameters

Name Type Description
slidePosition SlidePosition The relative SlidePosition.

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setLinkUrl(url)

Sets a [Link](/apps-script/reference/slides/link) to the given non-empty URL string.

Setting a link changes the style of the text to be underlined and to have a [ThemeColorType.HYPERLINK](/apps-script/reference/slides/theme-color-type#HYPERLINK) foreground color. This can be changed via [setForegroundColor(hexColor)](#setForegroundColor%28String%29) and [setUnderline(underline)](#setUnderline%28Boolean%29).

Since links cannot be set on newline characters, newline characters in the [TextRange](/apps-script/reference/slides/text-range)are ignored.

// Set a link to the URL. const textRange = SlidesApp.getActivePresentation().getSlides()[0].getShapes()[0].getText(); textRange.getTextStyle().setLinkUrl('https://slides.google.com');

Parameters

Name Type Description
url String The URL string.

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setSmallCaps(smallCaps)

Sets whether the text is rendered in small capital letters.

Parameters

Name Type Description
smallCaps Boolean

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setStrikethrough(strikethrough)

Sets whether the text is struck through.

Parameters

Name Type Description
strikethrough Boolean

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:


setUnderline(underline)

Sets whether the text is underlined.

Parameters

Name Type Description
underline Boolean

Return

[TextStyle](#)

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

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.