---
title: "StyleHandler | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/StyleHandler/"
---

# StyleHandler

> Handler for performing simple operations with paragraph and character styles.

## Classes

### StyleHandler

#### Remarks

the TextWhizz is used as a text engine.

#### Implements

- [`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler)

#### Constructors

##### Constructor

```ts
new StyleHandler(tw, colorPreviewService): StyleHandler;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `tw` | [`ITextWhizzHolder`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ITextWhizzHolder.md#itextwhizzholder) |
| `colorPreviewService` | [`IColorPreviewService`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IColorPreviewService.md#icolorpreviewservice) |

###### Returns

[`StyleHandler`](#stylehandler)

#### Accessors

##### colorPalette

###### Get Signature

```ts
get colorPalette(): IColorPalette;
```

###### Returns

[`IColorPalette`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IColorPalette-1.md#icolorpalette)

##### isInitialized

###### Get Signature

```ts
get isInitialized(): boolean;
```

###### Returns

`boolean`

##### styleChangeEvent

###### Get Signature

```ts
get styleChangeEvent(): EventObject<void>;
```

Character or paragraph style change event.

###### Returns

`EventObject`\<`void`\>

Character or paragraph style change event.

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`styleChangeEvent`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#stylechangeevent)

#### Methods

##### clearFormatForCurrentPosition()

```ts
clearFormatForCurrentPosition(): void;
```

Clears the character style for the current cursor position.

###### Returns

`void`

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`clearFormatForCurrentPosition`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#clearformatforcurrentposition)

##### clearFormatForRange()

```ts
clearFormatForRange(textRange): void;
```

Clears the character style for the text range.

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `textRange` | [`ITextRange`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ITextRange.md#itextrange) | text range. |

###### Returns

`void`

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`clearFormatForRange`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#clearformatforrange)

##### getCharStyleForCurrentPosition()

```ts
getCharStyleForCurrentPosition(): ICharStyle;
```

Returns the character style for the current cursor position.

###### Returns

[`ICharStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ICharStyle.md#icharstyle)

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`getCharStyleForCurrentPosition`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#getcharstyleforcurrentposition)

##### getCharStyleForPosition()

```ts
getCharStyleForPosition(position): ICharStyle;
```

Returns the character style by position.

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `position` | [`IPositionInText`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IPositionInText.md#ipositionintext) | position in text. |

###### Returns

[`ICharStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ICharStyle.md#icharstyle)

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`getCharStyleForPosition`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#getcharstyleforposition)

##### getCharStyleForRange()

```ts
getCharStyleForRange(range): ICharStyle;
```

Returns the character style for a text range.

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `range` | [`ITextRange`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ITextRange.md#itextrange) | text range. |

###### Returns

[`ICharStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ICharStyle.md#icharstyle)

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`getCharStyleForRange`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#getcharstyleforrange)

##### getDefaultCharStyle()

```ts
getDefaultCharStyle(): ICharStyle;
```

Returns the default character style.

###### Returns

[`ICharStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ICharStyle.md#icharstyle)

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`getDefaultCharStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#getdefaultcharstyle)

##### getDefaultParagraphStyle()

```ts
getDefaultParagraphStyle(): IParagraphStyle;
```

Returns the default paragraph style.

###### Returns

[`IParagraphStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IParagraphStyle.md#iparagraphstyle)

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`getDefaultParagraphStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#getdefaultparagraphstyle)

##### getParagraphStyleByIndex()

```ts
getParagraphStyleByIndex(index): IParagraphStyle;
```

Returns the paragraph style by index.

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `index` | `number` | paragraph index (from 0). |

###### Returns

[`IParagraphStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IParagraphStyle.md#iparagraphstyle)

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`getParagraphStyleByIndex`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#getparagraphstylebyindex)

##### getParagraphStyleForCurrentPosition()

```ts
getParagraphStyleForCurrentPosition(): IParagraphStyle;
```

Returns the paragraph style for the current cursor position.

###### Returns

[`IParagraphStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IParagraphStyle.md#iparagraphstyle)

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`getParagraphStyleForCurrentPosition`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#getparagraphstyleforcurrentposition)

##### getParagraphStyleForRange()

```ts
getParagraphStyleForRange(range): IParagraphStyle;
```

Returns the paragraph style for a text range.

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `range` | [`ITextRange`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ITextRange.md#itextrange) | text range. |

###### Returns

[`IParagraphStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IParagraphStyle.md#iparagraphstyle)

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`getParagraphStyleForRange`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#getparagraphstyleforrange)

##### initialize()

```ts
initialize(colorPalette): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `colorPalette` | `Collection`\<[`IColorData`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IColorData.md#icolordata)\> |

###### Returns

`void`

##### setCharStyleForCurrentPosition()

```ts
setCharStyleForCurrentPosition(style): void;
```

Sets the character style for the current cursor position (patch).

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `style` | [`ICharStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ICharStyle.md#icharstyle) | expected character style. |

###### Returns

`void`

###### Remarks

Only those properties that are specified in expected style are set.

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`setCharStyleForCurrentPosition`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#setcharstyleforcurrentposition)

##### setCharStyleForPosition()

```ts
setCharStyleForPosition(position, style): void;
```

Sets the character style by position.

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `position` | [`IPositionInText`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IPositionInText.md#ipositionintext) | position in text. |
| `style` | [`ICharStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ICharStyle.md#icharstyle) | character style. |

###### Returns

`void`

###### Remarks

Only those properties that are specified in expected style are set.

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`setCharStyleForPosition`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#setcharstyleforposition)

##### setCharStyleForRange()

```ts
setCharStyleForRange(style, range): void;
```

Sets the character style for a text range (patch).

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `style` | [`ICharStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ICharStyle.md#icharstyle) | character style. |
| `range` | [`ITextRange`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ITextRange.md#itextrange) | text range. |

###### Returns

`void`

###### Remarks

Only those properties that are specified in expected style are set.

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`setCharStyleForRange`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#setcharstyleforrange)

##### setDefaultCharStyle()

```ts
setDefaultCharStyle(style): void;
```

Sets the default character style.

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `style` | [`ICharStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ICharStyle.md#icharstyle) | character style. |

###### Returns

`void`

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`setDefaultCharStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#setdefaultcharstyle)

##### setDefaultParagraphStyle()

```ts
setDefaultParagraphStyle(style): void;
```

Sets the default paragraph style.

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `style` | [`IParagraphStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IParagraphStyle.md#iparagraphstyle) | paragraph style. |

###### Returns

`void`

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`setDefaultParagraphStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#setdefaultparagraphstyle)

##### setParagraphStyleByIndex()

```ts
setParagraphStyleByIndex(index, style): void;
```

Sets the paragraph style for the current cursor position (patch).

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `index` | `number` | paragraph index (from 0). |
| `style` | [`IParagraphStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IParagraphStyle.md#iparagraphstyle) | expected paragraph style. |

###### Returns

`void`

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`setParagraphStyleByIndex`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#setparagraphstylebyindex)

##### setParagraphStyleForCurrentPosition()

```ts
setParagraphStyleForCurrentPosition(style): void;
```

Sets the paragraph style for the current cursor position (patch).

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `style` | [`IParagraphStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IParagraphStyle.md#iparagraphstyle) | expected paragraph style. |

###### Returns

`void`

###### Remarks

Only those properties that are specified in expected style are set.

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`setParagraphStyleForCurrentPosition`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#setparagraphstyleforcurrentposition)

##### setParagraphStyleForRange()

```ts
setParagraphStyleForRange(style, range): void;
```

Sets the paragraph style for a text range (patch).

###### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `style` | [`IParagraphStyle`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IParagraphStyle.md#iparagraphstyle) | paragraph style. |
| `range` | [`ITextRange`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/ITextRange.md#itextrange) | text range. |

###### Returns

`void`

###### Remarks

Only those properties that are specified in expected style are set.

###### Implementation of

[`IStyleHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#istylehandler).[`setParagraphStyleForRange`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms-text/IStyleHandler.md#setparagraphstyleforrange)
