Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions gatsby-config.js
Original file line number Diff line number Diff line change
Expand Up @@ -376,6 +376,14 @@ module.exports = {
title: "ContainerNode",
path: "references/document-sandbox/document-apis/interfaces/ContainerNode.md",
},
{
title: "CreateRenditionOptions",
path: "references/document-sandbox/document-apis/interfaces/CreateRenditionOptions.md",
},
{
title: "CreateRenditionResult",
path: "references/document-sandbox/document-apis/interfaces/CreateRenditionResult.md",
},
{
title: "Fill",
path: "references/document-sandbox/document-apis/interfaces/Fill.md",
Expand Down Expand Up @@ -510,6 +518,10 @@ module.exports = {
title: "BlendMode",
path: "references/document-sandbox/document-apis/enumerations/BlendMode.md",
},
{
title: "CreateRenditionFormat",
path: "references/document-sandbox/document-apis/namespaces/Constants/enumerations/CreateRenditionFormat.md",
},
{
title: "EditorEvent",
path: "references/document-sandbox/document-apis/enumerations/EditorEvent.md",
Expand Down
13 changes: 13 additions & 0 deletions src/pages/guides/getting_started/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,19 @@ contributors:

# Changelog

## 2026-02-06

### Added

We have added new APIs to generate image rendition of visual nodes directly from the document sandbox.

- **Experimental** [`VisualNode.createRendition()`](../../references/document-sandbox/document-apis/classes/VisualNode.md#createrendition) asynchronous method - Generate a rendition of a visual node and its descendants.
- **Experimental** [`CreateRenditionOptions`](../../references/document-sandbox/document-apis/interfaces/CreateRenditionOptions.md) interface - define configuration options for generating renditions.
- **Experimental** [`CreateRenditionResult`](../../references/document-sandbox/document-apis/interfaces/CreateRenditionResult.md) interface - define the structure of the returned rendition data (e.g., blob, metadata).
- **Experimental** [`CreateRenditionFormat`](../../references/document-sandbox/document-apis/namespaces/Constants/enumerations/CreateRenditionFormat.md) enumeration - specify supported output formats (e.g., PNG, JPEG, PDF) in the `Constants` namespace.

- **Experimental** [`addOnUISdk.app.document.isPresentation()`](../../references/addonsdk/app-document.md#ispresentation) asynchronous method - Returns `true` if the document is a presentation, `false` if not.

## 2026-01-26

### Added
Expand Down
136 changes: 88 additions & 48 deletions src/pages/references/addonsdk/app-document.md

Large diffs are not rendered by default.

13 changes: 13 additions & 0 deletions src/pages/references/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,19 @@ contributors:

# Changelog

## 2026-02-06

### Added

We have added new APIs to generate image rendition of visual nodes directly from the document sandbox.

- **Experimental** [`VisualNode.createRendition()`](../references/document-sandbox/document-apis/classes/VisualNode.md#createrendition) asynchronous method - Generate a rendition of a visual node and its descendants.
- **Experimental** [`CreateRenditionOptions`](../references/document-sandbox/document-apis/interfaces/CreateRenditionOptions.md) interface - define configuration options for generating renditions.
- **Experimental** [`CreateRenditionResult`](../references/document-sandbox/document-apis/interfaces/CreateRenditionResult.md) interface - define the structure of the returned rendition data (e.g., blob, metadata).
- **Experimental** [`CreateRenditionFormat`](../references/document-sandbox/document-apis/namespaces/Constants/enumerations/CreateRenditionFormat.md) enumeration - specify supported output formats (e.g., PNG, JPEG, PDF) in the `Constants` namespace.

- **Experimental** [`addOnUISdk.app.document.isPresentation()`](../references/addonsdk/app-document.md#ispresentation) asynchronous method - Returns `true` if the document is a presentation, `false` if not.

## 2026-01-26

### Added
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,37 @@ To resize an artboard, resize the parent [PageNode](PageNode.md).

## Methods

### createRendition()

• **createRendition**(`options`?): `Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

<InlineAlert slots="text" variant="warning"/>

**IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.

Generates a rendition of this node and its descendants.

If this node contains images, it will wait for the best quality to be available before capturing.
As such, there is a 20s timeout before an error is thrown to prevent indefinite waiting.

#### Parameters

• **options?**: [`CreateRenditionOptions`](../interfaces/CreateRenditionOptions.md)

#### Returns

`Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

#### Implementation of

[`ContainerNode`](../interfaces/ContainerNode.md).[`createRendition`](../interfaces/ContainerNode.md#createrendition)

#### Inherited from

[`VisualNode`](VisualNode.md).[`createRendition`](VisualNode.md#createrendition)

---

### localPointInNode()

• **localPointInNode**(`localPoint`, `targetNode`): `Readonly`<[`Point`](../interfaces/Point.md)\>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -399,6 +399,33 @@ The node must be attached to a page as the copy will be added as a sibling.

---

### createRendition()

• **createRendition**(`options`?): `Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

<InlineAlert slots="text" variant="warning"/>

**IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.

Generates a rendition of this node and its descendants.

If this node contains images, it will wait for the best quality to be available before capturing.
As such, there is a 20s timeout before an error is thrown to prevent indefinite waiting.

#### Parameters

• **options?**: [`CreateRenditionOptions`](../interfaces/CreateRenditionOptions.md)

#### Returns

`Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

#### Inherited from

[`FillableNode`](FillableNode.md).[`createRendition`](FillableNode.md#createrendition)

---

### localPointInNode()

• **localPointInNode**(`localPoint`, `targetNode`): `Readonly`<[`Point`](../interfaces/Point.md)\>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,9 @@ Callback that was previously registered will be removed and will no more be invo

Registers a handler for editor events such as selection change.
The registered callback will be invoked when the specified event occurs.
<InlineAlert slots="text" variant="info"/>

<InlineAlert slots="text" variant="warning"/>

Note: Do not attempt to make changes to the document in response to a selection change callback because it may destabilize the application.

#### Parameters
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@ the initial string to show.
a text node with default styles. Creates auto-width text, so the node's width will automatically adjust
to accommodate the given text content.

<InlineAlert slots="text" variant="info"/>
<InlineAlert slots="text" variant="warning"/>

Note: the registration point of this text node is not guaranteed to be at the top-left of the bounding box of its
insertion parent. Recommend using `setPositionInParent` over `translation` to set the position.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -442,6 +442,33 @@ The node must be attached to a page as the copy will be added as a sibling.

---

### createRendition()

• **createRendition**(`options`?): `Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

<InlineAlert slots="text" variant="warning"/>

**IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.

Generates a rendition of this node and its descendants.

If this node contains images, it will wait for the best quality to be available before capturing.
As such, there is a 20s timeout before an error is thrown to prevent indefinite waiting.

#### Parameters

• **options?**: [`CreateRenditionOptions`](../interfaces/CreateRenditionOptions.md)

#### Returns

`Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

#### Inherited from

[`FillableNode`](FillableNode.md).[`createRendition`](FillableNode.md#createrendition)

---

### localPointInNode()

• **localPointInNode**(`localPoint`, `targetNode`): `Readonly`<[`Point`](../interfaces/Point.md)\>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,9 @@ Callback that was previously registered will be removed and will no more be invo

Registers a handler for editor events such as selection change.
The registered callback will be invoked when the specified event occurs.
<InlineAlert slots="text" variant="info"/>

<InlineAlert slots="text" variant="warning"/>

Note: Do not attempt to make changes to the document in response to a selection change callback because it may destabilize the application.

#### Parameters
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,7 @@ the initial string to show.
a text node with default styles. Creates auto-width text, so the node's width will automatically adjust
to accommodate the given text content.

<InlineAlert slots="text" variant="info"/>
<InlineAlert slots="text" variant="warning"/>

Note: the registration point of this text node is not guaranteed to be at the top-left of the bounding box of its
insertion parent. Recommend using `setPositionInParent` over `translation` to set the position.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -409,6 +409,33 @@ The node must be attached to a page as the copy will be added as a sibling.

---

### createRendition()

• **createRendition**(`options`?): `Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

<InlineAlert slots="text" variant="warning"/>

**IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.

Generates a rendition of this node and its descendants.

If this node contains images, it will wait for the best quality to be available before capturing.
As such, there is a 20s timeout before an error is thrown to prevent indefinite waiting.

#### Parameters

• **options?**: [`CreateRenditionOptions`](../interfaces/CreateRenditionOptions.md)

#### Returns

`Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

#### Inherited from

[`StrokableNode`](StrokableNode.md).[`createRendition`](StrokableNode.md#createrendition)

---

### localPointInNode()

• **localPointInNode**(`localPoint`, `targetNode`): `Readonly`<[`Point`](../interfaces/Point.md)\>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -391,6 +391,33 @@ Use the parent grid container instead.

---

### createRendition()

• **createRendition**(`options`?): `Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

<InlineAlert slots="text" variant="warning"/>

**IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.

Generates a rendition of this node and its descendants.

If this node contains images, it will wait for the best quality to be available before capturing.
As such, there is a 20s timeout before an error is thrown to prevent indefinite waiting.

#### Parameters

• **options?**: [`CreateRenditionOptions`](../interfaces/CreateRenditionOptions.md)

#### Returns

`Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

#### Inherited from

[`Node`](Node.md).[`createRendition`](Node.md#createrendition)

---

### localPointInNode()

• **localPointInNode**(`localPoint`, `targetNode`): `Readonly`<[`Point`](../interfaces/Point.md)\>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -419,6 +419,33 @@ The node must be attached to a page as the copy will be added as a sibling.

---

### createRendition()

• **createRendition**(`options`?): `Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

<InlineAlert slots="text" variant="warning"/>

**IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.

Generates a rendition of this node and its descendants.

If this node contains images, it will wait for the best quality to be available before capturing.
As such, there is a 20s timeout before an error is thrown to prevent indefinite waiting.

#### Parameters

• **options?**: [`CreateRenditionOptions`](../interfaces/CreateRenditionOptions.md)

#### Returns

`Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

#### Inherited from

[`Node`](Node.md).[`createRendition`](Node.md#createrendition)

---

### localPointInNode()

• **localPointInNode**(`localPoint`, `targetNode`): `Readonly`<[`Point`](../interfaces/Point.md)\>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -413,6 +413,37 @@ The node must be attached to a page as the copy will be added as a sibling.

---

### createRendition()

• **createRendition**(`options`?): `Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

<InlineAlert slots="text" variant="warning"/>

**IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.

Generates a rendition of this node and its descendants.

If this node contains images, it will wait for the best quality to be available before capturing.
As such, there is a 20s timeout before an error is thrown to prevent indefinite waiting.

#### Parameters

• **options?**: [`CreateRenditionOptions`](../interfaces/CreateRenditionOptions.md)

#### Returns

`Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

#### Implementation of

[`ContainerNode`](../interfaces/ContainerNode.md).[`createRendition`](../interfaces/ContainerNode.md#createrendition)

#### Inherited from

[`Node`](Node.md).[`createRendition`](Node.md#createrendition)

---

### localPointInNode()

• **localPointInNode**(`localPoint`, `targetNode`): `Readonly`<[`Point`](../interfaces/Point.md)\>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -425,6 +425,33 @@ Clone the entire parent MediaContainerNode instead.

---

### createRendition()

• **createRendition**(`options`?): `Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

<InlineAlert slots="text" variant="warning"/>

**IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.

Generates a rendition of this node and its descendants.

If this node contains images, it will wait for the best quality to be available before capturing.
As such, there is a 20s timeout before an error is thrown to prevent indefinite waiting.

#### Parameters

• **options?**: [`CreateRenditionOptions`](../interfaces/CreateRenditionOptions.md)

#### Returns

`Promise`<[`CreateRenditionResult`](../interfaces/CreateRenditionResult.md)\>

#### Inherited from

[`MediaRectangleNode`](MediaRectangleNode.md).[`createRendition`](MediaRectangleNode.md#createrendition)

---

### fetchBitmapImage()

• **fetchBitmapImage**(): `Promise`<[`BitmapImage`](BitmapImage.md)\>
Expand Down
Loading
Loading