# SeparationParams Class

> Holds parameters for making color separations.

- Product: Adobe PDF Library 21
- Language: Modern C++
- Version: 21.4.0
- HTML page: https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationParams
- Version index: https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/llms.txt

```cpp
class SeparationParams
```

**Namespace:** `datalogics_interface`

## Description

Holds parameters for making color separations. Used with PostScript.

**Uses types:** [`MirrorOption`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/MirrorOption.md), [`PageMarkFlags`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/PageMarkFlags.md), [`SeparationFontOption`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/SeparationFontOption.md), [`SeparationPlate`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationPlate.md)

## Constructors

### SeparationParams

```cpp
datalogics_interface::SeparationParams::SeparationParams(const SeparationParams &other)
```

*constructor*

**Parameters**

- `other` ([`const SeparationParams &`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationParams.md))

Copy constructor.

### SeparationParams

```cpp
datalogics_interface::SeparationParams::SeparationParams(SeparationParams &&) noexcept
```

*constructor*

**Parameters**

- (unnamed) ([`SeparationParams &&`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationParams.md))

### SeparationParams

```cpp
datalogics_interface::SeparationParams::SeparationParams(std::vector< SeparationPlate > plates)
```

*constructor*

**Parameters**

- `plates` ([`std::vector< SeparationPlate >`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationPlate.md)): The plates to use for making separations.

Set up default parameters for making separations.

### ~SeparationParams

```cpp
datalogics_interface::SeparationParams::~SeparationParams()
```

*destructor*

## Methods

### get_apply_ocg_print_overrides

```cpp
bool datalogics_interface::SeparationParams::get_apply_ocg_print_overrides() const
```

**Returns:** `bool`

If true, apply print-specific visibility state settings from the optional content group. Default is false.

### get_binary_channel_available

```cpp
bool datalogics_interface::SeparationParams::get_binary_channel_available() const
```

**Returns:** `bool`

True if a binary channel to the printer is supported, false otherwise. Default is false.

### get_convert_to_process_using_opp

```cpp
bool datalogics_interface::SeparationParams::get_convert_to_process_using_opp() const
```

**Returns:** `bool`

If true, use the overprint preview (OPP) for converting to process, which better simulates what would happen if the spot ink were really used. Default is false.

### get_convert_true_type_to_type42

```cpp
bool datalogics_interface::SeparationParams::get_convert_true_type_to_type42() const
```

**Returns:** `bool`

If true, send TrueType fonts as TrueType fonts (level 3 and most level 2 PS printers). If false, convert TrueType to T1 (typically desirable only for Level 1 PS where no TrueType handling is present). Default is false.

### get_destination_profile_string

```cpp
std::string datalogics_interface::SeparationParams::get_destination_profile_string() const
```

**Returns:** `std::string`

The profile description of a valid CMYK profile, such as the strings seen in the color management preferences in a PDF Viewer (for example, "U.S. Web Coated (SWOP) v2"). Default is "U.S. Web Coated (SWOP) v2".

### get_emit_annotations

```cpp
bool datalogics_interface::SeparationParams::get_emit_annotations() const
```

**Returns:** `bool`

If true, emit annotations. Default is false.

### get_emit_font_option

```cpp
SeparationFontOption datalogics_interface::SeparationParams::get_emit_font_option() const
```

**Returns:** [`SeparationFontOption`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/SeparationFontOption.md)

Font output options. Default is EmitAllFonts.

### get_emit_halftones

```cpp
bool datalogics_interface::SeparationParams::get_emit_halftones() const
```

**Returns:** `bool`

If true, emit halftones. Default is true.

### get_emit_separable_images_only

```cpp
bool datalogics_interface::SeparationParams::get_emit_separable_images_only() const
```

**Returns:** `bool`

If true, emit separable images only. Default is false.

### get_emit_transfer_functions

```cpp
bool datalogics_interface::SeparationParams::get_emit_transfer_functions() const
```

**Returns:** `bool`

If true, emit transfer functions. Default is true.

### get_invert_plates

```cpp
bool datalogics_interface::SeparationParams::get_invert_plates() const
```

**Returns:** `bool`

If true, invert the plates. Default is false.

### get_mirror_print

```cpp
MirrorOption datalogics_interface::SeparationParams::get_mirror_print() const
```

**Returns:** [`MirrorOption`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/MirrorOption.md)

Options for mirroring. Mirroring is done in the PostScript output stream. Default is DontFlip.

### get_page_marks_to_emit

```cpp
PageMarkFlags datalogics_interface::SeparationParams::get_page_marks_to_emit() const
```

**Returns:** [`PageMarkFlags`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/PageMarkFlags.md)

The page marks to emit for this plate. It is a bit-wise OR of the PageMarkFlags values. Default is None.

### get_plates

```cpp
std::vector< SeparationPlate > datalogics_interface::SeparationParams::get_plates() const
```

**Returns:** [`std::vector< SeparationPlate >`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationPlate.md)

A list of plates to use for separations.

### get_post_script_level

```cpp
int datalogics_interface::SeparationParams::get_post_script_level() const
```

**Returns:** `int`

The PostScript printing level. 2 means emit as level 2, 3 means level 3. Default is level 2.

### get_printer_has_far_east_fonts

```cpp
bool datalogics_interface::SeparationParams::get_printer_has_far_east_fonts() const
```

**Returns:** `bool`

If true, do not include Far East fonts. Default is false.

### get_suppress_cjk_substitution

```cpp
bool datalogics_interface::SeparationParams::get_suppress_cjk_substitution() const
```

**Returns:** `bool`

If true, suppress CJK substitution. Default is false.

### get_transparency_level

```cpp
int datalogics_interface::SeparationParams::get_transparency_level() const
```

**Returns:** `int`

The transparency flattening quality level. Range is from 0 to 100. Lower values flatten faster. Higher values provide better quality. Default is

### get_use_cmyk_working_color_space

```cpp
bool datalogics_interface::SeparationParams::get_use_cmyk_working_color_space() const
```

**Returns:** `bool`

If true, color manage DeviceCMYK. If false, pass it directly onto the process plates. Default is false.

### get_use_western_style_page_marks

```cpp
bool datalogics_interface::SeparationParams::get_use_western_style_page_marks() const
```

**Returns:** `bool`

If true, use the western style for page marks. Default is false.

### operator=

```cpp
SeparationParams & datalogics_interface::SeparationParams::operator=(const SeparationParams &other)
```

**Parameters**

- `other` ([`const SeparationParams &`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationParams.md))

**Returns:** [`SeparationParams &`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationParams.md)

Copy assignment.

### operator=

```cpp
SeparationParams & datalogics_interface::SeparationParams::operator=(SeparationParams &&) noexcept
```

**Parameters**

- (unnamed) ([`SeparationParams &&`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationParams.md))

**Returns:** [`SeparationParams &`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationParams.md)

### set_apply_ocg_print_overrides

```cpp
void datalogics_interface::SeparationParams::set_apply_ocg_print_overrides(bool value)
```

**Parameters**

- `value` (`bool`): true to apply print-specific visibility state settings from the optional content group. Default is false

**Returns:** `void`

If true, apply print-specific visibility state settings from the optional content group. Default is false.

### set_binary_channel_available

```cpp
void datalogics_interface::SeparationParams::set_binary_channel_available(bool value)
```

**Parameters**

- `value` (`bool`): true if a binary channel to the printer is supported, false otherwise. Default is false.

**Returns:** `void`

True if a binary channel to the printer is supported, false otherwise. Default is false.

### set_convert_to_process_using_opp

```cpp
void datalogics_interface::SeparationParams::set_convert_to_process_using_opp(bool value)
```

**Parameters**

- `value` (`bool`): true to use the overprint preview (OPP) for converting to process, which better simulates what would happen if t...

**Returns:** `void`

If true, use the overprint preview (OPP) for converting to process, which better simulates what would happen if the spot ink were really used. Default is false.

### set_convert_true_type_to_type42

```cpp
void datalogics_interface::SeparationParams::set_convert_true_type_to_type42(bool value)
```

**Parameters**

- `value` (`bool`): true to send TrueType fonts as TrueType fonts (level 3 and most level 2 PS printers). If false, convert TrueType...

**Returns:** `void`

If true, send TrueType fonts as TrueType fonts (level 3 and most level 2 PS printers). If false, convert TrueType to T1 (typically desirable only for Level 1 PS where no TrueType handling is present). Default is false.

### set_destination_profile_string

```cpp
void datalogics_interface::SeparationParams::set_destination_profile_string(const std::string &profile)
```

**Parameters**

- `profile` (`const std::string &`): the profile description of a valid CMYK profile, such as the strings seen in the color management preferences in a PD...

**Returns:** `void`

The profile description of a valid CMYK profile, such as the strings seen in the color management preferences in a PDF Viewr (for example, "U.S. Web Coated (SWOP) v2"). Default is "U.S. Web Coated (SWOP) v2".

### set_emit_annotations

```cpp
void datalogics_interface::SeparationParams::set_emit_annotations(bool value)
```

**Parameters**

- `value` (`bool`): true to emit annotations. Default is false

**Returns:** `void`

If true, emit annotations. Default is false.

### set_emit_font_option

```cpp
void datalogics_interface::SeparationParams::set_emit_font_option(SeparationFontOption option)
```

**Parameters**

- `option` ([`SeparationFontOption`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/SeparationFontOption.md)): the font output options. Default is EmitAllFonts

**Returns:** `void`

Font output options. Default is EmitAllFonts.

### set_emit_halftones

```cpp
void datalogics_interface::SeparationParams::set_emit_halftones(bool value)
```

**Parameters**

- `value` (`bool`): true to emit halftones. Default is true

**Returns:** `void`

If true, emit halftones. Default is true.

### set_emit_separable_images_only

```cpp
void datalogics_interface::SeparationParams::set_emit_separable_images_only(bool value)
```

**Parameters**

- `value` (`bool`): true to emit separable images only. Default is false

**Returns:** `void`

If true, emit separable images only. Default is false.

### set_emit_transfer_functions

```cpp
void datalogics_interface::SeparationParams::set_emit_transfer_functions(bool value)
```

**Parameters**

- `value` (`bool`): true to emit transfer functions. Default is true

**Returns:** `void`

If true, emit transfer functions. Default is true.

### set_invert_plates

```cpp
void datalogics_interface::SeparationParams::set_invert_plates(bool value)
```

**Parameters**

- `value` (`bool`): true to invert the plates. Default is false

**Returns:** `void`

If true, invert the plates. Default is false.

### set_mirror_print

```cpp
void datalogics_interface::SeparationParams::set_mirror_print(MirrorOption option)
```

**Parameters**

- `option` ([`MirrorOption`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/MirrorOption.md)): the options for mirroring. Mirroring is done in the PostScript output stream. Default is DontFlip

**Returns:** `void`

Options for mirroring. Mirroring is done in the PostScript output stream. Default is DontFlip.

### set_page_marks_to_emit

```cpp
void datalogics_interface::SeparationParams::set_page_marks_to_emit(PageMarkFlags marks)
```

**Parameters**

- `marks` ([`PageMarkFlags`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/PageMarkFlags.md)): the page marks to emit for this plate. It is a bit-wise OR of the PageMarkFlags values. Default is None

**Returns:** `void`

The page marks to emit for this plate. It is a bit-wise OR of the PageMarkFlags values. Default is None.

### set_plates

```cpp
void datalogics_interface::SeparationParams::set_plates(std::vector< SeparationPlate > plates)
```

**Parameters**

- `plates` ([`std::vector< SeparationPlate >`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/class/SeparationPlate.md)): a list of plates to use for separations

**Returns:** `void`

A list of plates to use for separations.

### set_post_script_level

```cpp
void datalogics_interface::SeparationParams::set_post_script_level(int level)
```

**Parameters**

- `level` (`int`): the PostScript printing level. 2 means emit as level 2, 3 means level 3. Default is level 2

**Returns:** `void`

The PostScript printing level. 2 means emit as level 2, 3 means level 3. Default is level 2.

### set_printer_has_far_east_fonts

```cpp
void datalogics_interface::SeparationParams::set_printer_has_far_east_fonts(bool value)
```

**Parameters**

- `value` (`bool`): true to exclude Far East fonts, false to include them. Default is false.

**Returns:** `void`

If true, do not include Far East fonts. Default is false.

### set_suppress_cjk_substitution

```cpp
void datalogics_interface::SeparationParams::set_suppress_cjk_substitution(bool value)
```

**Parameters**

- `value` (`bool`): true to suppress CJK substitution. Default is false

**Returns:** `void`

If true, suppress CJK substitution. Default is false.

### set_transparency_level

```cpp
void datalogics_interface::SeparationParams::set_transparency_level(int level)
```

**Parameters**

- `level` (`int`): the transparency flattening quality level. Range is from 0 to 100. Lower values flatten faster. Higher values provide...

**Returns:** `void`

The transparency flattening quality level. Range is from 0 to 100. Lower values flatten faster. Higher values provide better quality. Default is 75.

### set_use_cmyk_working_color_space

```cpp
void datalogics_interface::SeparationParams::set_use_cmyk_working_color_space(bool value)
```

**Parameters**

- `value` (`bool`): true to color manage DeviceCMYK. If false, pass it directly onto the process plates. Default is false

**Returns:** `void`

If true, color manage DeviceCMYK. If false, pass it directly onto the process plates. Default is false.

### set_use_western_style_page_marks

```cpp
void datalogics_interface::SeparationParams::set_use_western_style_page_marks(bool value)
```

**Parameters**

- `value` (`bool`): true to use the western style for page marks. Default is false

**Returns:** `void`

If true, use the western style for page marks. Default is false.
