# WatermarkParams Class

> Watermark settings control the appearance of a watermark in a PDF.

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

```cpp
class WatermarkParams
```

**Namespace:** `datalogics_interface`

## Description

Watermark settings control the appearance of a watermark in a PDF.

**Uses types:** [`HorizontalAlignment`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/HorizontalAlignment.md), [`PageSpec`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/PageSpec.md), [`VerticalAlignment`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/VerticalAlignment.md), [`WatermarkDrawOption`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/WatermarkDrawOption.md)

## Constructors

### WatermarkParams

```cpp
datalogics_interface::WatermarkParams::WatermarkParams()
```

*constructor*

Construct default WatermarkParams.

Initializes with rotation 0, full page range, opacity 1.0, scale 0.5, zOrderTop true, showOnPrint true, showOnScreen true, centered alignment, and the TryAnnotation draw option.

### WatermarkParams

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

*constructor*

**Parameters**

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

Copy constructor.

### WatermarkParams

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

*constructor*

**Parameters**

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

### ~WatermarkParams

```cpp
datalogics_interface::WatermarkParams::~WatermarkParams()
```

*destructor*

## Methods

### get_draw_option

```cpp
WatermarkDrawOption datalogics_interface::WatermarkParams::get_draw_option() const
```

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

Get the draw option to be used when adding the watermark to a page.

Controls whether the watermark is drawn as an annotation or form XObject.

### get_end_page

```cpp
int datalogics_interface::WatermarkParams::get_end_page() const
```

**Returns:** `int`

The page range of the document to which the watermark should be added.

Defaults to all pages.

### get_horiz_alignment

```cpp
HorizontalAlignment datalogics_interface::WatermarkParams::get_horiz_alignment() const
```

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

Get the horizontal alignment to be used when adding the watermark to a page.

Defaults to center alignment.

### get_horiz_value

```cpp
float datalogics_interface::WatermarkParams::get_horiz_value() const
```

**Returns:** `float`

Watermark settings control the appearance of a watermark in a PDF.

### get_opacity

```cpp
float datalogics_interface::WatermarkParams::get_opacity() const
```

**Returns:** `float`

Watermark settings control the appearance of a watermark in a PDF.

### get_page_spec

```cpp
PageSpec datalogics_interface::WatermarkParams::get_page_spec() const
```

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

Get which pages the watermark targets.

### get_rotation

```cpp
float datalogics_interface::WatermarkParams::get_rotation() const
```

**Returns:** `float`

Watermark settings control the appearance of a watermark in a PDF.

### get_scale

```cpp
float datalogics_interface::WatermarkParams::get_scale() const
```

**Returns:** `float`

Watermark settings control the appearance of a watermark in a PDF.

### get_show_on_print

```cpp
bool datalogics_interface::WatermarkParams::get_show_on_print() const
```

**Returns:** `bool`

Watermark settings control the appearance of a watermark in a PDF.

### get_show_on_screen

```cpp
bool datalogics_interface::WatermarkParams::get_show_on_screen() const
```

**Returns:** `bool`

Watermark settings control the appearance of a watermark in a PDF.

### get_start_page

```cpp
int datalogics_interface::WatermarkParams::get_start_page() const
```

**Returns:** `int`

The page range of the document to which the watermark should be added.

Defaults to all pages.

### get_vert_alignment

```cpp
VerticalAlignment datalogics_interface::WatermarkParams::get_vert_alignment() const
```

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

Get the vertical alignment to be used when adding the watermark to a page.

Defaults to center alignment.

### get_vert_value

```cpp
float datalogics_interface::WatermarkParams::get_vert_value() const
```

**Returns:** `float`

Watermark settings control the appearance of a watermark in a PDF.

### get_z_order_top

```cpp
bool datalogics_interface::WatermarkParams::get_z_order_top() const
```

**Returns:** `bool`

Watermark settings control the appearance of a watermark in a PDF.

### operator=

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

**Parameters**

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

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

Copy assignment.

### operator=

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

**Parameters**

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

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

### set_draw_option

```cpp
void datalogics_interface::WatermarkParams::set_draw_option(WatermarkDrawOption option)
```

**Parameters**

- `option` ([`WatermarkDrawOption`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/WatermarkDrawOption.md)): The watermark draw option.

**Returns:** `void`

Set the draw option to be used when adding the watermark to a page.

Controls whether the watermark is drawn as an annotation or form XObject.

### set_end_page

```cpp
void datalogics_interface::WatermarkParams::set_end_page(int page)
```

**Parameters**

- `page` (`int`)

**Returns:** `void`

The page range of the document to which the watermark should be added.

Defaults to all pages.

### set_horiz_alignment

```cpp
void datalogics_interface::WatermarkParams::set_horiz_alignment(HorizontalAlignment align)
```

**Parameters**

- `align` ([`HorizontalAlignment`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/HorizontalAlignment.md)): The horizontal alignment value.

**Returns:** `void`

Set the horizontal alignment to be used when adding the watermark to a page.

### set_horiz_value

```cpp
void datalogics_interface::WatermarkParams::set_horiz_value(float value)
```

**Parameters**

- `value` (`float`)

**Returns:** `void`

Watermark settings control the appearance of a watermark in a PDF.

### set_opacity

```cpp
void datalogics_interface::WatermarkParams::set_opacity(float opacity)
```

**Parameters**

- `opacity` (`float`)

**Returns:** `void`

Watermark settings control the appearance of a watermark in a PDF.

### set_page_spec

```cpp
void datalogics_interface::WatermarkParams::set_page_spec(PageSpec spec)
```

**Parameters**

- `spec` ([`PageSpec`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/PageSpec.md))

**Returns:** `void`

Set which pages the watermark targets.

### set_rotation

```cpp
void datalogics_interface::WatermarkParams::set_rotation(float degrees)
```

**Parameters**

- `degrees` (`float`)

**Returns:** `void`

Watermark settings control the appearance of a watermark in a PDF.

### set_scale

```cpp
void datalogics_interface::WatermarkParams::set_scale(float scale)
```

**Parameters**

- `scale` (`float`)

**Returns:** `void`

Watermark settings control the appearance of a watermark in a PDF.

### set_show_on_print

```cpp
void datalogics_interface::WatermarkParams::set_show_on_print(bool show)
```

**Parameters**

- `show` (`bool`)

**Returns:** `void`

Watermark settings control the appearance of a watermark in a PDF.

### set_show_on_screen

```cpp
void datalogics_interface::WatermarkParams::set_show_on_screen(bool show)
```

**Parameters**

- `show` (`bool`)

**Returns:** `void`

Watermark settings control the appearance of a watermark in a PDF.

### set_start_page

```cpp
void datalogics_interface::WatermarkParams::set_start_page(int page)
```

**Parameters**

- `page` (`int`)

**Returns:** `void`

The page range of the document to which the watermark should be added.

Defaults to all pages.

### set_vert_alignment

```cpp
void datalogics_interface::WatermarkParams::set_vert_alignment(VerticalAlignment align)
```

**Parameters**

- `align` ([`VerticalAlignment`](https://docs.datalogics.com/apdfl21/ModernCPP/21.4.0/enum/VerticalAlignment.md)): The vertical alignment value.

**Returns:** `void`

Set the vertical alignment to be used when adding the watermark to a page.

### set_vert_value

```cpp
void datalogics_interface::WatermarkParams::set_vert_value(float value)
```

**Parameters**

- `value` (`float`)

**Returns:** `void`

Watermark settings control the appearance of a watermark in a PDF.

### set_z_order_top

```cpp
void datalogics_interface::WatermarkParams::set_z_order_top(bool top)
```

**Parameters**

- `top` (`bool`)

**Returns:** `void`

Watermark settings control the appearance of a watermark in a PDF.
