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

# Class SurfaceHandler

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

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

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

```csharp title="Syntax"
public class SurfaceHandler : ISurfaceHandler
```

## Implements

* [Aurigma.DesignAtoms.Model.ISurfaceHandler](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ISurfaceHandler.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

### SurfaceHandler

```csharp
public SurfaceHandler(IItemHandlerFactory itemHandlerFactory)
```

## Methods

### GetOffset

```csharp
public PointF GetOffset(Surface surface, PrintArea printArea)
```

##### 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* |  |

##### Returns

`System.Drawing.PointF`

### GetBoundsData

```csharp
public RectangleF GetBoundsData(Surface surface)
```

##### 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* |  |

##### Returns

`System.Drawing.RectangleF`

### ApplyLayout

```csharp
public void ApplyLayout(Surface surface, bool isForceLegacyTextRenderingRequired = false)
```

##### 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* |  |
| `System.Boolean` | *isForceLegacyTextRenderingRequired* |  |
