export default {
  addWatermark(imagePath: string, watermarkTxt: string) {
    //图片预览带水印
    const ctx = uni.createCanvasContext('myCanvas')

    // 获取图片信息
    uni.getImageInfo({
      src: imagePath,
      success: imageInfo => {
        const { width, height } = imageInfo
        console.log(imageInfo, 'imageInfo')
        // 计算等比缩放后的尺寸
        const canvasWidth = 390
        const canvasHeight = (height * canvasWidth) / width
        // 绘制原图片
        ctx.drawImage(imagePath, 0, 0, canvasWidth, canvasHeight) // 这里设置绘制的大小
        // 设置水印样式
        ctx.setFontSize(17)
        ctx.setFillStyle('#FFD415') // 设置字体颜色
        // 添加水印文字
        ctx.rotate(-Math.PI / 4) // 逆时针旋转 45 度
        ctx.fillText(watermarkTxt, -500, 400) // 设置水印位置
        ctx.fillText(watermarkTxt, -200, 200) // 设置水印位置
        ctx.fillText(watermarkTxt, -200, 300) // 设置水印位置
        ctx.fillText(watermarkTxt, -200, 400) // 设置水印位置
        ctx.fillText(watermarkTxt, -200, 600) // 设置水印位置
        ctx.fillText(watermarkTxt, -550, 800) // 设置水印位置
        // 绘制完成
        ctx.draw(false, () => {
          // 转换画布为图片
          uni.canvasToTempFilePath({
            canvasId: 'myCanvas',
            success: res => {
              console.log('水印图片地址:', res.tempFilePath)
              uni.hideLoading()
              uni.previewMedia({
                sources: [
                  {
                    url: res.tempFilePath,
                    type: 'image'
                  }
                ],
                current: 0
              })
              // 可以将水印图片的路径保存或显示在界面上
            },
            fail: err => {
              uni.showToast({
                title: '获取失败',
                duration: 1000
              })
              console.error(err)
            }
          })
        })
      }
    })
  }
}
