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

# Class ViewerController

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

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

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

```csharp title="Syntax"
[FileNotFoundInCacheExceptionFilter]
public class ViewerController : ApiController
```

## Constructors

### ViewerController

```csharp
public ViewerController(IConfiguration configuration, IFileCache fileCache, IStateResourcesRepository stateResourcesRepository, IItemHandlerFactory itemHandlerFactory, IWatermarkItemsBuilder watermarkItemsBuilder, IImageLoader imageLoader, IFontService fontService, ITextRenderer textRenderer, JsonSerializerSettings jsonSerializerSettings, ISourceImageParamsReader imageParamsReader, IFileCacheImageParamsReader fileCacheImageParamsReader, ISvgReaderFactory svgReaderFactory, IColorManagement colorManagement, IGmColorConverter gmColorConverter, IColorPreviewService colorPreviewService, IColorProfileManager colorProfileManager, IViewerControllerCacheResponsesFactory viewerControllerCacheResponsesFactory, IRepositoryImageParamsReaderFactory repositoryImageParamsReaderFactory)
```

## Methods

### GetColorPreviews

```csharp
public Task<GetColorPreviewsResponse> GetColorPreviews(GetColorPreviewsRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.GetColorPreviewsRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/GetColorPreviewsRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<Aurigma.DesignAtoms.Controllers.Data.GetColorPreviewsResponse>`

### GetColorPreview

```csharp
public Task<GetColorPreviewResponse> GetColorPreview(GetColorPreviewRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.GetColorPreviewRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/GetColorPreviewRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<Aurigma.DesignAtoms.Controllers.Data.GetColorPreviewResponse>`

### UpdateByMultiCallRequest

```csharp
public Task<IHttpActionResult> UpdateByMultiCallRequest(MultiCallRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.MultiCallRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/MultiCallRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<System.Web.Http.IHttpActionResult>`

### UpdateArchedTextItemHandler

```csharp
public Task<UpdateHandlerResponse> UpdateArchedTextItemHandler(UpdateHandlerRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/UpdateHandlerRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerResponse>`

### UpdatePlainTextItemHandler

```csharp
public Task<UpdateHandlerResponse> UpdatePlainTextItemHandler(UpdateHandlerRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/UpdateHandlerRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerResponse>`

### UpdateAutoScaledTextItemHandler

```csharp
public Task<UpdateHandlerResponse> UpdateAutoScaledTextItemHandler(UpdateHandlerRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/UpdateHandlerRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerResponse>`

### UpdateCurvedTextItemHandler

```csharp
public Task<UpdateHandlerResponse> UpdateCurvedTextItemHandler(UpdateHandlerRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/UpdateHandlerRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerResponse>`

### UpdateBoundedTextItemHandler

```csharp
public Task<UpdateHandlerResponse> UpdateBoundedTextItemHandler(UpdateHandlerRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/UpdateHandlerRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerResponse>`

### UpdatePathBoundedTextItemHandler

```csharp
public Task<UpdateHandlerResponse> UpdatePathBoundedTextItemHandler(UpdateHandlerRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/UpdateHandlerRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerResponse>`

### UpdateByColorData

```csharp
public string UpdateByColorData(UpdateColorsRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.UpdateColorsRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/UpdateColorsRequest.md) | *request* |  |

##### Returns

`System.String`

### UpdateImageItemHandler

```csharp
public Task<UpdateHandlerResponse> UpdateImageItemHandler(UpdateImageHandlerRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.UpdateImageHandlerRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/UpdateImageHandlerRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerResponse>`

### UpdateBarcodeItemHandler

```csharp
public Task<UpdateHandlerResponse> UpdateBarcodeItemHandler(UpdateHandlerRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/UpdateHandlerRequest.md) | *request* |  |

##### Returns

`System.Threading.Tasks.Task<Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerResponse>`

### UpdateShapeItemHandler

```csharp
public UpdateHandlerResponse UpdateShapeItemHandler(UpdateHandlerRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.UpdateHandlerRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/UpdateHandlerRequest.md) | *request* |  |

##### Returns

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

### GetImageSize

```csharp
public ViewerController.NullAbleSize GetImageSize(GetImageSizeRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.GetImageSizeRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/GetImageSizeRequest.md) | *request* |  |

##### Returns

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

### GetShapeBounds

```csharp
public RectangleF GetShapeBounds(GetShapeBoundsRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.Data.GetShapeBoundsRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers.Data/GetShapeBoundsRequest.md) | *request* |  |

##### Returns

`System.Drawing.RectangleF`

### Resource

```csharp
public HttpResponseMessage Resource(string image)
```

##### Parameters

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

##### Returns

`System.Net.Http.HttpResponseMessage`

### Txt

```csharp
public HttpResponseMessage Txt()
```

##### Returns

`System.Net.Http.HttpResponseMessage`

### Img

```csharp
public Task<HttpResponseMessage> Img(CancellationToken token)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Threading.CancellationToken` | *token* |  |

##### Returns

`System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>`

### Pth

```csharp
public HttpResponseMessage Pth()
```

##### Returns

`System.Net.Http.HttpResponseMessage`

### Svg

```csharp
public Task<HttpResponseMessage> Svg(CancellationToken cancellationToken)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Threading.CancellationToken` | *cancellationToken* |  |

##### Returns

`System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>`

### GetWatermarkItems

```csharp
public Container GetWatermarkItems(ViewerController.GetWatermarkItemsRequest request)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.ViewerController.GetWatermarkItemsRequest](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers/ViewerController.GetWatermarkItemsRequest.md) | *request* |  |

##### Returns

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

### Fonts

```csharp
public Task<HttpResponseMessage> Fonts(string psName)
```

##### Parameters

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

##### Returns

`System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>`

### GetFallbackFonts

```csharp
public HttpResponseMessage GetFallbackFonts()
```

##### Returns

`System.Net.Http.HttpResponseMessage`

### GetLicense

```csharp
public HttpResponseMessage GetLicense()
```

##### Returns

`System.Net.Http.HttpResponseMessage`

### CssFonts

```csharp
public HttpResponseMessage CssFonts(ViewerController.FontsMethodData data)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Controllers.ViewerController.FontsMethodData](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Controllers/ViewerController.FontsMethodData.md) | *data* |  |

##### Returns

`System.Net.Http.HttpResponseMessage`

### GetCssFont

```csharp
public Task<HttpResponseMessage> GetCssFont(string fontKey)
```

##### Parameters

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

##### Returns

`System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>`
