addPage
Adds a new page immediately after the currently selected page.
Parameters
opts
object
Configuration for the new page to be added.
Properties of opts
elements
ElementAtPoint[]
Elements to be added to the page
An element that renders image content and has positional properties.
type
string
The type of element.
This must be "image"
.
altText
AltText | undefined
A description of the image content.
Properties of altText
text
string
The text content.
decorative
boolean | undefined
Indicates where the alternative text should be displayed.
- If
true
, the alternative text will only be displayed in the editor. - If
false
, the alternative text will be displayed in the editor and in view-only mode.
top
number
The distance from the top edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
left
number
The distance from the left edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
width
number
A width, in pixels.
- The pixels are relative to their container.
- Minimum: 0
- Maximum: 32767
height
number
A height, in pixels.
- The pixels are relative to their container.
- Minimum: 0
- Maximum: 32767
rotation
number
A rotation, in degrees.
- Minimum: -180
- Maximum: 180
dataUrl
string
A data URL that contains the image data.
ref
ImageRef
A unique identifier that points to an image asset in Canva's backend.
An element that renders video content and has positional properties.
type
string
The type of element.
This must be "video"
.
ref
VideoRef
A unique identifier that points to a video asset in Canva's backend.
altText
AltText | undefined
A description of the video content.
Properties of altText
text
string
The text content.
decorative
boolean | undefined
Indicates where the alternative text should be displayed.
- If
true
, the alternative text will only be displayed in the editor. - If
false
, the alternative text will be displayed in the editor and in view-only mode.
top
number
The distance from the top edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
left
number
The distance from the left edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
width
number
A width, in pixels.
- The pixels are relative to their container.
- Minimum: 0
- Maximum: 32767
height
number
A height, in pixels.
- The pixels are relative to their container.
- Minimum: 0
- Maximum: 32767
rotation
number
A rotation, in degrees.
- Minimum: -180
- Maximum: 180
An element that renders rich media, such as a YouTube video, and has positional properties.
type
string
The type of element.
This must be "embed"
.
url
string
The URL of the rich media.
This URL must be supported by the Iframely API.
top
number
The distance from the top edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
left
number
The distance from the left edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
width
number
A width, in pixels.
- The pixels are relative to their container.
- Minimum: 0
- Maximum: 32767
height
number
A height, in pixels.
- The pixels are relative to their container.
- Minimum: 0
- Maximum: 32767
rotation
number
A rotation, in degrees.
- Minimum: -180
- Maximum: 180
An element that renders text content and has positional properties.
type
string
The type of element.
This must be "text"
.
children
string[]
The text content.
Only the first element in this array is used.
top
number
The distance from the top edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
left
number
The distance from the left edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
fontSize
number
The size of the text.
- Minimum: 1
- Maximum: 100
Default Value: 16
textAlign
string
The alignment of the text.
Default Value: "start"
The available options include:
"start"
"center"
"end"
"justify"
color
string
The color of the text as a hex code.
The hex code must include all six characters and be prefixed with a #
symbol.
Example
"#ff0099"
fontRef
FontRef
A unique identifier that points to a font asset in Canva's backend.
fontWeight
FontWeight
The weight (thickness) of the font.
Default Value: "normal"
The available options include:
"normal"
"thin"
"extralight"
"light"
"medium"
"semibold"
"bold"
"ultrabold"
"heavy"
fontStyle
string
The style of the font.
Default Value: "normal"
The available options include:
"normal"
"italic"
decoration
string
The decoration of the font.
Default Value: "none"
The available options include:
"none"
"underline"
rotation
number
A rotation, in degrees.
- Minimum: -180
- Maximum: 180
width
number
The width of the element, in pixels.
- Minimum: 0
- Maximum: 32767
An element that renders a vector shape and has positional properties.
type
string
The type of element.
This must be "shape"
.
viewBox
ShapeViewBox
Options for configuring the scale and cropping of the shape.
Properties of viewBox
top
number
The distance of the shape from the top edge of the element, in pixels.
left
number
The distance of the shape from the left edge of the element, in pixels.
width
number
The width of the view box, in pixels.
height
number
The height of the view box, in pixels.
paths
ShapePath[]
The paths that define the structure of the shape.
- There must be between 1 and 30 paths (inclusive).
- The maximum combined size of all paths must not exceed 2kb.
- The maximum number of unique fill colors across all paths is 6.
Properties of paths
d
string
The shape of the path.
This is similar to the d
attribute of an SVG's path
element, with some limitations:
- The path must start with an M command.
- The path must not have more than one M command.
- The path must not use the Q command.
- The path must be closed, either by:
- Using a Z command at the end of the path
- Having the last coordinate match the first coordinate
fill
Fill
The appearance of the path's interior.
Properties of fill
dropTarget
boolean
If true
, users can replace a fill by dropping an image or video onto it.
color
string
The color of the fill as a hex code.
The hex code must include all six characters and be prefixed with a #
symbol.
Example
" #ff0099"
asset
object
An image or video to use as the fill.
An image asset that fills a path's interior.
type
string
The type of fill.
This must be "image"
.
ref
ImageRef
A unique identifier that points to an image asset in Canva's backend.
A video asset that fills a path's interior.
type
string
The type of fill.
This must be "video"
.
ref
VideoRef
A unique identifier that points to a video asset in Canva's backend.
stroke
PathStroke
The outline of the path.
Properties of stroke
weight
number
The weight (thickness) of the stroke.
- Minimum: 0
- Maximum: 100
color
string
The color of the stroke as a hex code.
The hex code must include all six characters and be prefixed with a #
symbol.
Example
"#ff0099"
strokeAlign
string
The alignment of the stroke.
This must be "inset"
.
top
number
The distance from the top edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
left
number
The distance from the left edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
width
number
A width, in pixels.
- The pixels are relative to their container.
- Minimum: 0
- Maximum: 32767
height
number
A height, in pixels.
- The pixels are relative to their container.
- Minimum: 0
- Maximum: 32767
rotation
number
A rotation, in degrees.
- Minimum: -180
- Maximum: 180
An element that contains two or more elements and has positional properties.
type
string
The type of element.
This must be "group"
.
children
GroupContentAtPoint[]
The elements to render within the group.
- Each element within a group must have dimensions and a position.
- The dimensions and positions are relative to the dimensions and positions of the group.
top
number
The distance from the top edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
left
number
The distance from the left edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
width
number
A width, in pixels.
- The pixels are relative to their container.
- Minimum: 0
- Maximum: 32767
height
number
A height, in pixels.
- The pixels are relative to their container.
- Minimum: 0
- Maximum: 32767
rotation
number
A rotation, in degrees.
- Minimum: -180
- Maximum: 180
An element that renders richtext content.
This type includes properties for controlling the position and dimensions of the element. It will be positioned and sized relative to its parent container. The parent container may be an app element, or the current page.
type
string
The type of element.
This must be "richtext"
.
range
RichtextRange
The richtext content.
Properties of range
formatParagraph
function
Formats all of the paragraphs that overlap the given bounds.
- The
\n
character indicates the end of a paragraph. - All paragraphs that overlap the provided bounds will be formatted in their entirety.
Parameters
bounds
Bounds
The segment of the range on which to apply the formatting.
Properties of bounds
index
number
The starting position of the segment.
This is zero-based, meaning the first character of the range is at index 0.
length
number
The number of characters in the segment, starting from the index.
formatting
RichtextFormatting
The formatting to apply to the paragraph(s).
Properties of formatting
color
string
The color of the text as a hex code.
The hex code must include all six characters and be prefixed with a #
symbol.
Example
"#ff0099"
fontWeight
FontWeight
The weight (thickness) of the font.
The available font weights depend on the font.
Default Value: "normal"
The available options include:
"normal"
"thin"
"extralight"
"light"
"medium"
"semibold"
"bold"
"ultrabold"
"heavy"
fontStyle
string
The style of the font.
Default Value: "normal"
The available options include:
"normal"
"italic"
decoration
string
The decoration of the text.
Default Value: "none"
The available options include:
"none"
"underline"
strikethrough
string
The strikethrough of the text.
Default Value: "none"
The available options include:
"none"
"strikethrough"
link
string
An external URL that the text links to.
fontRef
FontRef
A unique identifier that points to a font asset in Canva's backend.
fontSize
number
The size of the text, in pixels.
- In the Canva editor, this number is shown as points (pts), not pixels.
- Minimum: 1
- Maximum: 100
textAlign
string
The alignment of the text.
Default Value: "start"
The available options include:
"start"
"center"
"end"
"justify"
listLevel
number
The list indentation level of the paragraph.
listMarker
string
The appearance of list item markers.
This property only has an effect if listLevel
is greater than 0.
Default Value: "none"
The available options include:
"none"
"disc"
"circle"
"square"
"decimal"
"lower-alpha"
"lower-roman"
"checked"
"unchecked"
Returns
void
formatText
function
Formats a region of text with inline formatting properties.
Parameters
bounds
Bounds
The segment of the range on which to apply the formatting.
Properties of bounds
index
number
The starting position of the segment.
This is zero-based, meaning the first character of the range is at index 0.
length
number
The number of characters in the segment, starting from the index.
formatting
InlineFormatting
The formatting to apply to the text.
Properties of formatting
color
string
The color of the text as a hex code.
The hex code must include all six characters and be prefixed with a #
symbol.
Example
"#ff0099"
fontWeight
FontWeight
The weight (thickness) of the font.
The available font weights depend on the font.
Default Value: "normal"
The available options include:
"normal"
"thin"
"extralight"
"light"
"medium"
"semibold"
"bold"
"ultrabold"
"heavy"
fontStyle
string
The style of the font.
Default Value: "normal"
The available options include:
"normal"
"italic"
decoration
string
The decoration of the text.
Default Value: "none"
The available options include:
"none"
"underline"
strikethrough
string
The strikethrough of the text.
Default Value: "none"
The available options include:
"none"
"strikethrough"
link
string
An external URL that the text links to.
Returns
void
appendText
function
Appends the specified characters to the end of the range.
Parameters
characters
string
The characters to append to the richtext range.
formatting
InlineFormatting
Options for formatting inline richtext.
Properties of formatting
color
string
The color of the text as a hex code.
The hex code must include all six characters and be prefixed with a #
symbol.
Example
"#ff0099"
fontWeight
FontWeight
The weight (thickness) of the font.
The available font weights depend on the font.
Default Value: "normal"
The available options include:
"normal"
"thin"
"extralight"
"light"
"medium"
"semibold"
"bold"
"ultrabold"
"heavy"
fontStyle
string
The style of the font.
Default Value: "normal"
The available options include:
"normal"
"italic"
decoration
string
The decoration of the text.
Default Value: "none"
The available options include:
"none"
"underline"
strikethrough
string
The strikethrough of the text.
Default Value: "none"
The available options include:
"none"
"strikethrough"
link
string
An external URL that the text links to.
Returns
bounds
Bounds
A segment of a richtext range.
Properties of bounds
index
number
The starting position of the segment.
This is zero-based, meaning the first character of the range is at index 0.
length
number
The number of characters in the segment, starting from the index.
replaceText
function
Replaces a region of text with the specified characters.
Parameters
bounds
Bounds
The segment of the range to replace.
Properties of bounds
index
number
The starting position of the segment.
This is zero-based, meaning the first character of the range is at index 0.
length
number
The number of characters in the segment, starting from the index.
characters
string
The replacement characters.
formatting
InlineFormatting
The formatting to apply to the replaced text.
Properties of formatting
color
string
The color of the text as a hex code.
The hex code must include all six characters and be prefixed with a #
symbol.
Example
"#ff0099"
fontWeight
FontWeight
The weight (thickness) of the font.
The available font weights depend on the font.
Default Value: "normal"
The available options include:
"normal"
"thin"
"extralight"
"light"
"medium"
"semibold"
"bold"
"ultrabold"
"heavy"
fontStyle
string
The style of the font.
Default Value: "normal"
The available options include:
"normal"
"italic"
decoration
string
The decoration of the text.
Default Value: "none"
The available options include:
"none"
"underline"
strikethrough
string
The strikethrough of the text.
Default Value: "none"
The available options include:
"none"
"strikethrough"
link
string
An external URL that the text links to.
Returns
bounds
Bounds
The bounds of the replacement characters within the updated range.
Properties of bounds
index
number
The starting position of the segment.
This is zero-based, meaning the first character of the range is at index 0.
length
number
The number of characters in the segment, starting from the index.
readPlaintext
function
Returns the current state of the richtext as plaintext.
Returns
string
readTextRegions
function
Returns the current state of the richtext as one or more text regions. Each region is an object that contains the text content and its formatting.
Returns
text
string
The plaintext content of the region.
formatting
Partial<RichtextFormatting>
The formatting of the region.
top
number
The distance from the top edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
left
number
The distance from the left edge of the container, in pixels.
- The pixels are relative to their container.
- Minimum: -32768
- Maximum: 32767
rotation
number
A rotation, in degrees.
- Minimum: -180
- Maximum: 180
width
number
The width of the element, in pixels.
- Minimum: 0
- Maximum: 32767
background
PageBackgroundFill
The page background. This can be a solid color, an image or a video.
Properties of background
asset
object
An image or video to use as the fill.
An image asset that fills a path's interior.
type
string
The type of fill.
This must be "image"
.
ref
ImageRef
A unique identifier that points to an image asset in Canva's backend.
A video asset that fills a path's interior.
type
string
The type of fill.
This must be "video"
.
ref
VideoRef
A unique identifier that points to a video asset in Canva's backend.
color
string
The color of the fill as a hex code.
The hex code must include all six characters and be prefixed with a #
symbol.
Example
" #ff0099"
title
string
A page title which must be no longer than 255 characters
Returns
Promise<void>