watermark object is an instance accessible from the main MuPDFWebViewer instance as follows:
const watermark = webViewer.watermark;
This assumes you have returned your instance name as
webViewer from the initMuPDFWebViewer() promise!watermark
Thewatermark object has the following methods:
create
create(config: { watermarks: (TextWatermark | ImageWatermark)[] }): Promise<undefined>;
Parameters
object
required
An object containing an array of text or image watermarks.
Show config properties
Show config properties
(TextWatermark | ImageWatermark)[]
required
Array of text or image watermarks.
Show TextWatermark properties
Show TextWatermark properties
'Text'
required
Watermark type.
number
required
Opacity.
WatermarkAlignment
Watermark alignment.
number
required
Rotation angle.
number
required
X coordinate.
number
required
Y coordinate.
boolean
Whether visible in viewer.
boolean
Whether printed.
string
Page range.
string
required
Watermark text.
number
required
Font size.
string
required
Text color.
string
required
Font family name.
boolean
Bold style.
boolean
Italic style.
object
Optional border config.
number
Vertical repeat interval.
number
Horizontal repeat interval.
Show TextWatermark.border properties
Show TextWatermark.border properties
Show ImageWatermark properties
Show ImageWatermark properties
'Image'
required
Watermark type.
number
required
Opacity.
WatermarkAlignment
Watermark alignment.
number
required
Rotation angle.
number
required
X coordinate.
number
required
Y coordinate.
boolean
Whether visible in viewer.
boolean
Whether printed.
string
Page range.
number
required
Image scale.
string
required
Image path.
number
Vertical repeat interval.
number
Horizontal repeat interval.
Returns
Promise<undefined>
required
A Promise.
webViewer.watermark.create({
watermarks: [
{
type: 'Text',
opacity: 0.2,
align: 'CENTER',
rotate: 45,
x: 0,
y: 0,
text: 'CONFIDENTIAL',
size: 32,
color: '#ff0000',
fontName: 'Helvetica',
allowView: true,
allowPrint: true
},
{
type: 'Image',
opacity: 0.4,
align: 'BOTTOM_RIGHT',
rotate: 0,
x: 0,
y: 0,
scale: 0.5,
imagePath: '/watermark.png'
}
]
});
Supporting Types
WatermarkAlignment
export enum WatermarkAlignment {
CENTER = 'CENTER',
TOP_LEFT = 'TOP_LEFT',
TOP = 'TOP',
TOP_RIGHT = 'TOP_RIGHT',
LEFT = 'LEFT',
RIGHT = 'RIGHT',
BOTTOM_LEFT = 'BOTTOM_LEFT',
BOTTOM = 'BOTTOM',
BOTTOM_RIGHT = 'BOTTOM_RIGHT'
}
TextWatermark
export interface TextWatermark {
type: 'Text';
opacity: number;
align?: WatermarkAlignment;
rotate: number;
x: number;
y: number;
allowView?: boolean;
allowPrint?: boolean;
range?: string;
text: string;
size: number;
color: string;
fontName: string;
bold?: boolean;
italic?: boolean;
border?: {
width?: number;
height?: number;
color: string;
strokeWidth: number;
horizontalPadding?: number;
verticalPadding?: number;
};
repeatHeight?: number;
repeatWidth?: number;
}
ImageWatermark
export interface ImageWatermark {
type: 'Image';
opacity: number;
align?: WatermarkAlignment;
rotate: number;
x: number;
y: number;
allowView?: boolean;
allowPrint?: boolean;
range?: string;
scale: number;
imagePath: string;
repeatHeight?: number;
repeatWidth?: number;
}