wujingjing
2024-12-13 d2da078b40578cf72901442c7a2b878dfc34cae5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// 页面添加水印效果
const setWatermark = (str: string) => {
    const id = '1.23452384164.123412416';
    if (document.getElementById(id) !== null) document.body.removeChild(<HTMLElement>document.getElementById(id));
    const can = document.createElement('canvas');
    can.width = 200;
    can.height = 130;
    const cans = <CanvasRenderingContext2D>can.getContext('2d');
    cans.rotate((-20 * Math.PI) / 180);
    cans.font = '12px Vedana';
    cans.fillStyle = 'rgba(200, 200, 200, 0.30)';
    cans.textBaseline = 'middle';
    cans.fillText(str, can.width / 10, can.height / 2);
    const div = document.createElement('div');
    div.id = id;
    div.style.pointerEvents = 'none';
    div.style.top = '0px';
    div.style.left = '0px';
    div.style.position = 'fixed';
    div.style.zIndex = '10000000';
    div.style.width = `${document.documentElement.clientWidth}px`;
    div.style.height = `${document.documentElement.clientHeight}px`;
    div.style.background = `url(${can.toDataURL('image/png')}) left top repeat`;
    document.body.appendChild(div);
    return id;
};
 
/**
 * 页面添加水印效果
 * @method set 设置水印
 * @method del 删除水印
 */
const watermark = {
    // 设置水印
    set: (str: string) => {
        let id = setWatermark(str);
        if (document.getElementById(id) === null) id = setWatermark(str);
    },
    // 删除水印
    del: () => {
        let id = '1.23452384164.123412416';
        if (document.getElementById(id) !== null) document.body.removeChild(<HTMLElement>document.getElementById(id));
    },
};
 
// 导出方法
export default watermark;