# DeviceNColorSpace Class

> Represents a color space with an arbitrary number of color components.

- Product: Adobe PDF Library 18
- Language: .NET
- Version: APDFL18.0.5PlusP2e
- HTML page: https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/DeviceNColorSpace
- Version index: https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/llms.txt

```csharp
class DeviceNColorSpace : ColorSpace
```

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

**Inherits from:** [`ColorSpace`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/ColorSpace.md)

## Description

Represents a color space with an arbitrary number of color components.

DeviceN color spaces were designed to represent color spaces containing multiple color components that correspond to the colorants of some target device. They provide greater flexibility than is possible with standard device color spaces such as DeviceCMYK or with individual Separation color spaces. For example, it is possible to create a DeviceN color space consisting of only the cyan, magenta, and yellow color components, with the black component excluded.

**Referenced by:** [`DeviceNColorSpace`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/DeviceNColorSpace.md)

**Uses types:** [`ColorSpace`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/ColorSpace.md), [`DeviceNColorSpace`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/DeviceNColorSpace.md), [`Function`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Function.md), [`PDFDict`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/PDFDict.md), [`PDFObject`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/PDFObject.md)

## Constructors

### DeviceNColorSpace

```csharp
Datalogics.PDFL.DeviceNColorSpace.DeviceNColorSpace(System.Collections.Generic.IList< System.String > names, ColorSpace alternate, Function tintTransform)
```

*constructor*

**Parameters**

- `names` (`System.Collections.Generic.IList< System.String >`): the names of the colorants that the DeviceN space is intended to represent, among which may be All, or None
- `alternate` ([`ColorSpace`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/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/apdfl18/DotNet/APDFL18.0.5PlusP2e/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 DeviceN color space.

## Properties

### Alternate

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

### Attributes

```csharp
PDFDict Datalogics.PDFL.DeviceNColorSpace.Attributes { get; }
```

### 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.DeviceNColorSpace.Function { get; }
```

### 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; }
```

### Names

```csharp
System.Collections.Generic.IList<System.String> Datalogics.PDFL.DeviceNColorSpace.Names { get; }
```

### NumComponents

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

### PDFObject

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

## 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/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/ColorSpace.md)): The first ColorSpace to compare.
- `b` ([`ColorSpace`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/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/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/ColorSpace.md)): The first ColorSpace to compare.
- `b` ([`ColorSpace`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/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.
