前端VUE实现电子签名

1,引入第三方库来实现

// 安装fabric.js
npm install fabric --save

2,代码实现
在页面引入

import { fabric } from "fabric";
<template>
<canvas id="canvas" width="450" height="240"></canvas>
<button @click="saveSignature">保存签名</button>
<img :src="dataUrls" />//在这里就能预览签名的图片了
</template>

 data() {
    return {
      dataUrls: "",
    };
  },
 mounted() {
    // 实例化fabric canvas
    this.canvas = new fabric.Canvas("canvas", {
      isDrawingMode: true,//表示可以进行绘图操作。
    });
  },
   methods: {
    // 保存签名
    saveSignature() {
      const dataUrl = this.canvas.toDataURL({
        format: "png",
        quality: 1,
        enableRetinaScaling: 1,
        multiplier: 1,
      });
      // 签名数据保存为图片
      this.dataUrls = dataUrl;
      this.changeToImage(this.dataUrls);
      // console.log(dataUrl);
    },

    changeToImage(base64) {
      return `data:image/png;base64,${base64}`;
    },
  },

首先在template中添加了一个div,用来显示签名区域。然后通过fabric库实例化了一个canvas,设置isDrawingMode为true,表示可以进行绘图操作。

methods中,实现了保存签名的方法,通过canvas.toDataURL()方法将签名数据转化为base64编码的png图片,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值