# SeparationColorSpace Class

> Defines the use of additional named colorants in a PDF document.

- Product: Adobe PDF Library 21
- Language: .NET Framework
- Version: APDFL21.0.0PlusP1e
- HTML page: https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/SeparationColorSpace
- Version index: https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/llms.txt

```csharp
class SeparationColorSpace : ColorSpace
```

**Namespace:** `Datalogics::PDFL`

**Inherits from:** [`ColorSpace`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/ColorSpace.md)

## Description

Defines the use of additional named colorants in a PDF document.

Colorants in a separation color space are also sometimes referred to as spot colorants. The device displaying or printing the PDF document will supply an appropriate color based on the colorant included in the separation color space.

**Referenced by:** [`Page`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/Page.md)

**Uses types:** [`ColorSpace`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/ColorSpace.md), [`Function`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/Function.md), [`Ink`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/Ink.md), [`PDFObject`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/PDFObject.md), [`Page`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/Page.md)

## Constructors

### SeparationColorSpace

```csharp
Datalogics.PDFL.SeparationColorSpace.SeparationColorSpace(Page page, Ink ink)
```

*constructor*

**Parameters**

- `page` ([`Page`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/Page.md)): Page, that contains an ink
- `ink` ([`Ink`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/Ink.md)): Represents an ink used in a page

Create a separation color space from page's Ink. If page doesn't have a separation color space with passed ink in it's resources, then linear grayscale tint transform function and CMYK as alternate colorspace will be used.

### SeparationColorSpace

```csharp
Datalogics.PDFL.SeparationColorSpace.SeparationColorSpace(string separationName, ColorSpace alternate, Function tintTransform)
```

*constructor*

**Parameters**

- `separationName` (`string`): the name of the colorant that the Separation space is intended to represent, or All, or None
- `alternate` ([`ColorSpace`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/ColorSpace.md)): the alternate color space, which can be any device or CIE-based color space but not another special color space (Pattern, Indexed, Separation, or DeviceN).
- `tintTransform` ([`Function`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/Function.md)): function, called with the tint value and returning the corresponding color component values. That is, the number of components and the interpretation of their values depend on the alternate color space.

Create a separation color space.

## Properties

### Alternate

```csharp
ColorSpace Datalogics.PDFL.SeparationColorSpace.Alternate { get; }
```

The alternate color space.

The alternate color space can be any device or CIE-based color space but not another special color space (Pattern, Indexed, Separation, or DeviceN).

### DeviceCMYK

```csharp
static ColorSpace Datalogics.PDFL.ColorSpace.DeviceCMYK { get; }
```

*static*

The DeviceCMYK color space, representing cyan, magenta, yellow, and black components.

### DeviceGray

```csharp
static ColorSpace Datalogics.PDFL.ColorSpace.DeviceGray { get; }
```

*static*

The DeviceGray color space, representing a single grayscale component.

### DeviceRGB

```csharp
static ColorSpace Datalogics.PDFL.ColorSpace.DeviceRGB { get; }
```

*static*

The DeviceRGB color space, representing red, green, and blue components.

### DeviceRGBA

```csharp
static ColorSpace Datalogics.PDFL.ColorSpace.DeviceRGBA { get; }
```

*static*

The DeviceRGBA color space, representing red, green, blue, and alpha components.

### Function

```csharp
Function Datalogics.PDFL.SeparationColorSpace.Function { get; }
```

A function, called with the tint value and returning the corresponding color component values. That is, the number of components and the interpretation of their values depend on the alternate color space.

### Lab

```csharp
static ColorSpace Datalogics.PDFL.ColorSpace.Lab { get; }
```

*static*

The CIE-based L*a*b* color space.

### LabA

```csharp
static ColorSpace Datalogics.PDFL.ColorSpace.LabA { get; }
```

*static*

The CIE-based L*a*b* color space with an alpha component.

### Name

```csharp
string Datalogics.PDFL.ColorSpace.Name { get; }
```

The name of the color space. A named color space may be named something like DeviceRGB. More complicated color spaces may have a name like Indexed or ICCBased.

### NumComponents

```csharp
int Datalogics.PDFL.ColorSpace.NumComponents { get; }
```

The number of components in the color space.

For example, DeviceGray has 1 component, DeviceRGB has 3, and DeviceCMYK has 4.

### PDFObject

```csharp
PDFObject Datalogics.PDFL.ColorSpace.PDFObject { get; }
```

Get the PDFObject associated with the color space. This may be a PDFName, PDFDict, PDFStream, or PDFArray.

### SeparationName

```csharp
string Datalogics.PDFL.SeparationColorSpace.SeparationName { get; }
```

The name of the colorant that the Separation space is intended to represent, or All, or None.

### SeparationNameArray

```csharp
System.Byte [] Datalogics.PDFL.SeparationColorSpace.SeparationNameArray { get; }
```

The name of the colorant as a byte array.

The name of the colorant that the Separation space is intended to represent, or All, or None. This property is suitable for retrieving the name when the SeparationName cannot be retrieved as a string (for example, when the name contains non-Unicode characters).

## Methods

### Dispose

```csharp
void Datalogics.PDFL.ColorSpace.Dispose()
```

**Returns:** `void`

### Equals

```csharp
override bool Datalogics.PDFL.ColorSpace.Equals(object obj)
```

**Parameters**

- `obj` (`object`)

**Returns:** `override bool`

### ToString

```csharp
override string Datalogics.PDFL.ColorSpace.ToString()
```

**Returns:** `override string`

A string describing this ColorSpace.

Convert a ColorSpace to a string representation.

### operator!=

```csharp
static bool Datalogics.PDFL.ColorSpace.operator!=(ColorSpace a, ColorSpace b)
```

*static*

**Parameters**

- `a` ([`ColorSpace`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/ColorSpace.md)): The first ColorSpace to compare.
- `b` ([`ColorSpace`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/ColorSpace.md)): The second ColorSpace to compare.

**Returns:** `bool`

true if the two ColorSpace objects are not equal; false otherwise.

Test two ColorSpace objects for inequality.

### operator==

```csharp
static bool Datalogics.PDFL.ColorSpace.operator==(ColorSpace a, ColorSpace b)
```

*static*

**Parameters**

- `a` ([`ColorSpace`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/ColorSpace.md)): The first ColorSpace to compare.
- `b` ([`ColorSpace`](https://docs.datalogics.com/apdfl21/DotNetFramework/APDFL21.0.0PlusP1e/class/ColorSpace.md)): The second ColorSpace to compare.

**Returns:** `bool`

true if the two ColorSpace objects are equal; false otherwise.

Test two ColorSpace objects for equality.
