---
title: "Class CanvasBuilder | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Rendering/CanvasBuilder/"
---

# Class CanvasBuilder

> **Inheritance:** `System.Object` -> CanvasBuilder

###### **Namespace**: [Aurigma.DesignAtoms.Rendering](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Rendering.md)

###### **Assembly**: Aurigma.DesignAtoms.dll

```csharp title="Syntax"
public class CanvasBuilder : ICanvasBuilder
```

## Implements

* [Aurigma.DesignAtoms.Rendering.ICanvasBuilder](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Rendering/ICanvasBuilder.md)

## Inherited Members

* `System.Object.ToString`
* `System.Object.Equals(System.Object)`
* `System.Object.Equals(System.Object,System.Object)`
* `System.Object.ReferenceEquals(System.Object,System.Object)`
* `System.Object.GetHashCode`
* `System.Object.GetType`
* `System.Object.MemberwiseClone`

## Constructors

### CanvasBuilder

```csharp
public CanvasBuilder(IConfiguration configuration, IItemHandlerFactory itemHandlerFactory, IColorManagement colorManagement, IWatermarkItemsBuilder watermarkItemsBuilder, IFontService fontService)
```

## Methods

### BuildCanvas

```csharp
public ICanvas BuildCanvas(Surface surface, PrintArea printArea, WatermarkConfig watermarkConfig, CanvasBuilderSettings settings = null, SurfaceContainer renderedContainer = null, Func<ICanvasRenderer> getRendererFactoryMethod = null)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.Surface](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/Surface.md) | *surface* |  |
| [Aurigma.DesignAtoms.Model.PrintArea](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/PrintArea.md) | *printArea* |  |
| [Aurigma.DesignAtoms.Configuration.WatermarkConfig](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Configuration/WatermarkConfig.md) | *watermarkConfig* |  |
| [Aurigma.DesignAtoms.Rendering.CanvasBuilderSettings](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Rendering/CanvasBuilderSettings.md) | *settings* |  |
| [Aurigma.DesignAtoms.Model.SurfaceContainer](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/SurfaceContainer.md) | *renderedContainer* |  |
| `System.Func<Aurigma.DesignAtoms.Rendering.CanvasRenderers.ICanvasRenderer>` | *getRendererFactoryMethod* |  |

##### Returns

[Aurigma.DesignAtoms.Canvas.ICanvas](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Canvas/ICanvas.md)

### BuildCanvas

```csharp
public ICanvas BuildCanvas(Surface surface, PrintArea printArea, WatermarkConfig watermarkConfig, CanvasBuilderSettings settings, IEnumerable<SurfaceContainer> renderedContainers = null, Func<ICanvasRenderer> getRendererFactoryMethod = null)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.Surface](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/Surface.md) | *surface* |  |
| [Aurigma.DesignAtoms.Model.PrintArea](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/PrintArea.md) | *printArea* |  |
| [Aurigma.DesignAtoms.Configuration.WatermarkConfig](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Configuration/WatermarkConfig.md) | *watermarkConfig* |  |
| [Aurigma.DesignAtoms.Rendering.CanvasBuilderSettings](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Rendering/CanvasBuilderSettings.md) | *settings* |  |
| `System.Collections.Generic.IEnumerable<Aurigma.DesignAtoms.Model.SurfaceContainer>` | *renderedContainers* |  |
| `System.Func<Aurigma.DesignAtoms.Rendering.CanvasRenderers.ICanvasRenderer>` | *getRendererFactoryMethod* |  |

##### Returns

[Aurigma.DesignAtoms.Canvas.ICanvas](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Canvas/ICanvas.md)

### GetSafetyLineItemName

```csharp
public static string GetSafetyLineItemName(string name)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.String` | *name* |  |

##### Returns

`System.String`
