自助柜机前端开发【身份证、人脸】

2021-07-08  本文已影响0人  找不到昵称来绑定了

背景需求:自助查询柜机开发,访客来大厅验证时,使用身份证查询、人脸验证功能。在此记录一下各个环节所使用的方法。

身份证读卡器

      <OBJECT
          ref="rdcard"
          classid="clsid:F1317711-6BDE-4658-ABAA-39E31D3704D3"
          codebase="SDRdCard.cab#version=2,0,1,0"
          width=0
          height=0
          align=center
          hspace=0
          vspace=0
          id=idcard
          name=rdcard
      >
      </OBJECT>

script部分:
其中this.readIDShensi()方法是身份证读卡器读取身份证信息成功后的回调方法

    init(){
      this.rdcard = document.getElementById("idcard")
      this.rdcard.openport()  // 打开机具
      const read = this.rdcard.ReadCard2()  //开始自动读卡
      if(read === 0){
        console.log('开始读卡成功')
      }else this.$message.error('读卡失败')
      document.getElementById('idcard').addEventListener("Readed", this.readIDShensi);
      document.getElementById('idcard').attachEvent("Readed", this.readIDShensi);
    },

人脸拍照

<script src="webcam.js"></script>

template部分

      <div class="video-box">
        <div id="my_camera"></div>
        <canvas id="canvas"></canvas>
      </div>

script部分

    // 初始化Webcam配置
    init(){
      Webcam.set({
        width: 460,
        height: 542,
        image_format: 'jpeg',
        jpeg_quality: 90
      });
      Webcam.attach('#my_camera');
      ......
    },
    // 截图处理
    drawImage() {
      Webcam.snap(function (dataurl) {
        ...截图返回base64字符串处理逻辑
      });
    },

其他

项目中还用到了指纹、打印热敏小票功能:

虽然在这个项目中走了一些弯路,但是有时候,恰好是那些弯路,让自己获取到了更多的知识,扩宽了自己解决问题的思路。即便是在解决问题的过程中经历了挣扎、怀疑、烦躁的不良情绪,但解决完问题如释重负的那刻,我相信这也是每位开发者最喜欢的时刻。

上一篇 下一篇

猜你喜欢

热点阅读