前端VUE实现电子签名

这篇具有很好参考价值的文章主要介绍了前端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图片,文章来源地址https://www.toymoban.com/news/detail-609984.html

到了这里,关于前端VUE实现电子签名的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于VUE3+Layui从头搭建通用后台管理系统(前端篇)七:工作台界面实现

      本章实现工作台界面相关内容,包括echart框架引入,mock框架引入等,实现工作台界面框架搭建,数据加载。 1. 详细课程地址: https://edu.csdn.net/course/detail/38183 2. 源码下载地址: 点击下载 基于VUE3+Layui从头搭建通用后台管理系统合集-工作台界面布局实现 echart官网:https

    2024年02月14日
    浏览(67)
  • Vue前端的工作需求

    加油,新时代打工人! 需求: 实现带树形结构的表格,父数据显示新增下级,和父子都显示编辑。 技术: Vue3 +Element Plus

    2024年03月17日
    浏览(43)
  • vue前端开发准备工作ing...

    在项目开始前需要将项目的包管理工具问题解决,这里我使用的包管理工具是yarn。 安装yarn 在你的vue文件目录下的终端安装 npm i -g yarn 创建项目 如果你使用的npm包管理工具就使用如下命令创建项目 如果是yarn: 安装依赖 在你创建的项目文件下的终端安装 npm: npm install yarn:

    2024年01月17日
    浏览(54)
  • SpringBoot+Vue项目中遇到Not allowed to load local resource图片路径问题的两种解决方案(在后端映射本地路径或将图片转base64返回给前端)

    后端映射本地路径 转base64格式返回 如果是少量图片可以这么操作,不然图片多的话返回base64由于字符太长,传输速度很慢,会导致卡顿现象、加载慢、加载异常等情况出现。 图片转base64 base64转图片保存 headPhotoPath = “D:yangleProjectImageLocationheadPhoto” userPhotoPath = “nologin”

    2024年02月06日
    浏览(50)
  • Echarts遇到Vue3时遇到的问题

    将vue2的Echarts代码迁移到了vue3项目上,引发的问题 1. 点击图例legend时刻度轴偏移,图像不展示,以及报错  初始chart正常.图 点击图例后的chart和报错.图 2. 调用resize()不生效且报错 初始正常.图 修改屏幕尺寸调用resize及报错.图 Vue3使用了proxy,Echarts无法从中获取内部变量;所

    2024年02月10日
    浏览(36)
  • 组件开发遇到的问题(vue的问题)

    组件的开发和引用 当我们将项目中公用的块,或者页面中多处样式一样,只是数据展示不同的地方抽取出一个个公用组件时,可以提高我们的开发效率,避免重复的工作,只需要在不同的页面引入公用的组件即可。创建一个viewMore.vue文件,定义一个组件块。 这样就可以在其

    2024年01月20日
    浏览(43)
  • Vue3.0使用vue-cropper遇到的问题

    在使用vue-cropper工具过程当中遇到这样一个问题,开发环境启动运行之后,截图功能可以正常使用,但是重新打包部署至服务器以后,报错:cropper未定义。 TypeError: Cannot read properties of undefined (reading \\\'cropper\\\')     at C (StepUpdate.9f3efc2b.js:1:29993)     at gr (@vue.1c4bc3aa.js:1:47798)    

    2023年04月08日
    浏览(42)
  • 学习Vue过程中遇到的问题汇总

    在页面的body标签或head标签中加入如下代码 刷新页面,看看行不行,若不行,找到你引用的vue.js文件,查找productionTip,找到后将其值改为false,再次刷新试试 使用Object.defineProperty() 定义对象属性时,若已设置 set 或 get, 就不能设置 writable 和 value 中的任何一个了,因为关于v

    2024年02月12日
    浏览(33)
  • vue2项目打包遇到的问题(记录)

    临时纯手工搭建开发了个vue2小项目,打包后出现了很多问题 一、打包后index.html打开空白 打包后整个页面空白,是因为打包后资源路径不对,需要修改config-index.js下, build 属性中assetsPublicPath值为 ./ 二、打包后图片等静态资源无法显示 需要修改build下utils.js文件,新增一句话

    2024年02月16日
    浏览(43)
  • vue2watch监听遇到的问题

    1 vue 父组件里引入子组件 显示与隐藏是v-if控制时 父传入子的参数通过watch 监听请求接口时 watch 时而监听不到 请求接口的参数就不对 如图 父组件这么引入子组件v-show 和v-if 是有区别的 2 子组件通过watch 监听后 清空页面要展示的列表数据 重新从第一页加载数据,如果在mou

    2024年02月16日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包