---
title: "Interface: ISurfaceDefinition | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.ISurfaceDefinition/"
---

# Interface: ISurfaceDefinition

> A structure holding settings to create an empty surface.

## Example

```js
const emptyProduct = {
   surfaces: [{
       width: 720,
       height: 504,
       proofImage: {
           fileFormat: "PNG",
           rgbColorProfileName: "Adobe RGB (1998)",
           mockupEnabled: false
       }
   }]
};
```

## Extends

- [`IBaseSurfaceDefinition`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md)

## Properties

### name?

> `optional` **name?**: `string`

A name of a surface (a page) in the product.

#### Remarks

In multipage products, it allows you to use a name mask for product surfaces. If this string contains the `{0}` placeholder, it will be replaced with a page number, starting from `1`. For example, `name: "Page {0}"` specifies the following page captions in the Bottom toolbar: `Page 1`, `Page 2`, and so on.

#### Inherited from

[`IBaseSurfaceDefinition`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md).[`name`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md#name)

***

### foldingLines?

> `optional` **foldingLines?**: [`IFoldingLine`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IFoldingLine.md)[]

A collection of folding lines defined in the surface (page).

#### Inherited from

[`IBaseSurfaceDefinition`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md).[`foldingLines`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md#foldinglines)

***

### spines?

> `optional` **spines?**: [`ISpine`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.ISpine.md)[]

A collection of spines defined in the surface (page).

#### Inherited from

[`IBaseSurfaceDefinition`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md).[`spines`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md#spines)

***

### bgFoldingMode?

> `optional` **bgFoldingMode?**: [`IBgFoldingModeParams`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBgFoldingModeParams.md)

Parameters of the background folding mode.

#### Inherited from

[`IBaseSurfaceDefinition`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md).[`bgFoldingMode`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md#bgfoldingmode)

***

### proofImage?

> `optional` **proofImage?**: [`IProofImage`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IProofImage.md)

Settings of proof images.

#### Inherited from

[`IBaseSurfaceDefinition`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md).[`proofImage`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IBaseSurfaceDefinition.md#proofimage)

***

### width

> **width**: `number`

A surface width, in points.

***

### height

> **height**: `number`

A surface height, in points.

***

### printAreas?

> `optional` **printAreas?**: [`IPrintAreaDefinition`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IPrintAreaDefinition.md)[]

A collection of print areas defined in the surface (page).

***

### containers?

> `optional` **containers?**: [`IChannelContainerDefinition`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IChannelContainerDefinition.md)[]

A collection of channel containers. For more details, refer to the [Post Press Finishing](https://customerscanvas.com/dev/editors/iframe-api/product-definition/post-press-finishing-layers.html) topic.

***

### useSpecifiedContainersOnly?

> `optional` **useSpecifiedContainersOnly?**: `boolean`

If `true`, only spot containers defined in IDML or PSD templates will be created in a product, without the default containers Main, Background, and Foreground. The default value is `false`.
