js水印

作者: Eden0204 | 来源:发表于2022-03-07 10:31 被阅读0次
    // 水印
    let watermark = {}
    
    let setWatermark = str => {
      let id = '1.23452384164.123412415'
    
      if (document.getElementById(id) !== null) {
        document.body.removeChild(document.getElementById(id))
      }
    
      let can = document.createElement('canvas')
      can.width = 180
      can.height = 180
    
      let cans = can.getContext('2d')
      cans.rotate((-30 * Math.PI) / 180)
      cans.font = '16px Vedana'
      cans.fillStyle = 'rgba(0, 0, 0, 0.08)'
      cans.textAlign = 'left'
      cans.textBaseline = 'Middle'
      cans.fillText(str, 0, 100)
    
      let 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 = '100000'
      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
    }
    
    // 该方法只允许调用一次
    watermark.set = str => {
      let id = setWatermark(str)
      setInterval(() => {
        if (document.getElementById(id) === null) {
          id = setWatermark(str)
        }
      }, 2000)
      window.onresize = () => {
        setWatermark(str)
      }
    }
    export default watermark
    

    相关文章

      网友评论

          本文标题:js水印

          本文链接:https://www.haomeiwen.com/subject/lengrrtx.html