requestFontSelection

API reference for the requestFontSelection method.

Opens a dialog that allows the user to select from a list of fonts.

To learn more, see Creating text.

import { requestFontSelection } from "@canva/preview/asset";
(async () => {
const fontResponse = await requestFontSelection();
console.log(fontResponse.font.name); // => "Arial"
})();
ts
#requestobject
Optional
#request.selectedFontRefstring
Optional

A unique identifier that references a font asset in Canva's backend. If this is set, the specified font will be selected when the font selection panel opens. To learn more, see Creating text.

A Promise that resolves with an object.

If the user selects a font, the following object is returned:

#responseobject
Required

The result of selecting a font.

#response.typestring
Required

The type of result. If the user selects a font, this is always "COMPLETED".

#response.fontobject
Required

The selected font.

#response.font.refstring
Required

A unique identifier that references a font in Canva's backend.

#response.font.namestring
Required

The name of the font.

#response.font.weightsarray
Required

An array of font weights that the font is available in.

#response.font.weights[0]object
Required

An individual font weight.

#response.font.weights[0].weightobject
Required

The name of the font weight.

The possible values depend on the font, but may be any combination of the following values:

  • "normal"
  • "thin"
  • "extralight"
  • "light"
  • "medium"
  • "semibold"
  • "bold"
  • "ultrabold"
  • "heavy"
#response.font.weights[0].stylesarray
Required

The styles the font weight is available in.

The possible values depend on the font, but may be any combination of the following values:

  • "normal"
  • "italic"
#response.font.previewUrlstring
Optional

The URL of an image that contains a preview of the font.

If the user closes the font selection dialog without selecting a font, the following object is returned:

#responseobject
Required

The result of closing the font selection dialog without selecting a font.

#response.typestring
Required

The type of result. If the user doesn't select a font, this is always "ABORTED".