欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用javascript解析二维码的三种方式

程序员文章站 2022-03-04 11:44:32
目录一、使用javascript解析二维码1、二维码是什么二、qrcode-parser1、安装方式2、使用方式三、ngx-qrcode21、安装方式2、使用方式四、前端生成二维码1、安装方式2、使用...

一、使用javascript解析二维码

1、二维码是什么

二维码就是将我们能看懂的文字语言,以机器语言的形式存储了起来。其中黑色小方块代表的是1,白色小方块代表的是0,黑白相间的图案其实就是一串编码,扫码的过程就是翻译这些编码的过程。还要值得注意的地方就是,在它的边上都有三个大方块,这主要是在起定位作用。三个点能确定一个面,这能保证我们在扫码时,不管手机怎样放置都能得到特定的信息

二、qrcode-parser

这是一个没有依赖的二维码前端解析工具。优点是包小,轻量级工具,缺点不会调用摄像头。需要编写调用摄像头的代码。

1、安装方式

npm add  qrcode-parser

2、使用方式

import qrcodeparser from 'qrcode-parser'

let img = '';
qrcodeparser().then(res =>{
    console.log(res)
})

三、ngx-qrcode2

一个集成到angular的二维码生成工具。只能生成,不能读取。

1、安装方式

npm add ngx-qrcode2

2、使用方式

appmodule 中导入模块:

import { browsermodule } from '@angular/platform-browser';
import { ngmodule } from '@angular/core';
import { ngxqrcodemodule } from 'ngx-qrcode2';

import { appcomponent } from './app.component';

@ngmodule({
  declarations: [
    appcomponent
  ],
  imports: [
    browsermodule,
    ngxqrcodemodule
  ],
  providers: [],
  bootstrap: [appcomponent]
})
export class appmodule { }

app.component.html 插入的模板:

<div style="text-align:center">
  <h1>ngx-qrcode2 demo</h1>
</div>

<ngx-qrcode
      [qrc-element-type]="elementtype"
      [qrc-value] = "value"
      qrc-class = "aclass"
      qrc-errorcorrectionlevel = "l">
</ngx-qrcode>

在app.component.ts 中添加代码:

import { component } from '@angular/core';

@component({
  selector: 'app-root',
  templateurl: './app.component.html',
  styleurls: ['./app.component.css']
})
export class appcomponent {
  title = 'app';
  elementtype = 'url';
  value = 'techiediaries';
}

四、前端生成二维码

1、安装方式

npm install @techiediaries/ngx-qrcode --save

2、使用方式

在appmodule中导入模块:

import { ngmodule } from '@angular/core';
import { commonmodule } from '@angular/common';
import { qrcodeallmodule } from 'ngx-qrcode-all';
import { appcomponent } from './app.component';

@ngmodule({
    imports: [
        commonmodule,
        qrcodeallmodule
    ],
    declarations: [
        appcomponent
    ]
})
export class appmodule {
    constructor() {}
}

3、案例一:生成二维码的代码模板

<div id="qrcodeid">
 <qr-code-all [qrcodetype]="url"
     [qrcodevalue]="'sk is the best in the world!'"
     [qrcodeversion]="'1'"
     [qrcodeeclevel]="'m'"
     [qrcodecolorlight]="'#ffffff'"
     [qrcodecolordark]="'#000000'"
     [width]="11"
     [margin]="4"
     [scale]="4"
     [scanqrcode]="false">
 </qr-code-all>
</div>

4、案例二:读取二维码

<div id="qrcodeid">
 <qr-code-all [canvaswidth]="640"
     [canvasheight]="480"
     [debug]="false"
     [stopafterscan]="true"
     [updatetime]="500"
     (oncapture)="captureimage($event)"
     [scanqrcode]="true">
 </qr-code-all>
</div>

到此这篇关于使用javascript解析二维码的三种方式的文章就介绍到这了,更多相关javascript解析二维码内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!