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


Posted in Javascript onNovember 11, 2021

一、使用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解析二维码内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
JS 实现Json查询的方法实例
Apr 12 Javascript
详解AngularJS中的作用域
Jun 17 Javascript
js数组常见操作及数组与字符串相互转化实例详解
Nov 10 Javascript
js编写贪吃蛇的小游戏
Aug 24 Javascript
简单的JS轮播图代码
Jul 18 Javascript
微信小程序之页面跳转和参数传递的实现
Sep 29 Javascript
浅谈 Vue 项目优化的方法
Dec 16 Javascript
详解React 的几种条件渲染以及选择
Oct 23 Javascript
详解vue项目中调用百度地图API使用方法
Apr 25 Javascript
微信小程序后台持续定位功能使用详解
Aug 23 Javascript
jquery实现吸顶导航效果
Jan 08 jQuery
深入理解redux之compose的具体应用
Jan 12 Javascript
实现一个简单得数据响应系统
Nov 11 #Javascript
JavaScript函数柯里化
Nov 07 #Javascript
JS数组去重详情
Nov 07 #Javascript
手写实现JS中的new
Nov 07 #Javascript
用JS写一个发布订阅模式
Nov 07 #Javascript
浅谈JavaScript浅拷贝和深拷贝
JavaScript严格模式不支持八进制的问题讲解
You might like
适用于php-5.2 的 php.ini 中文版[金步国翻译]
2011/04/17 PHP
laravel 框架配置404等异常页面
2019/01/07 PHP
php求斐波那契数的两种实现方式【递归与递推】
2019/09/09 PHP
IE6下通过a标签点击切换图片的问题
2010/11/14 Javascript
基于JavaScript 下namespace 功能的简单分析
2013/07/05 Javascript
js 使FORM表单的所有元素不可编辑的示例代码
2013/10/17 Javascript
Extjs 4.x 得到form CheckBox 复选框的值
2014/05/04 Javascript
jquery中push()的用法(数组添加元素)
2014/11/25 Javascript
js实现禁止中文输入的方法
2015/01/14 Javascript
ztree获取选中节点时不能进入可视区域出现BUG如何解决
2015/12/03 Javascript
利用Angularjs和bootstrap实现购物车功能
2016/08/31 Javascript
微信小程序之购物车功能
2020/09/23 Javascript
vue 获取元素额外生成的data-v-xxx操作
2020/09/09 Javascript
[00:29]2019完美世界全国高校联赛(秋季赛)总决赛海口落幕
2019/12/10 DOTA
python基础教程之面向对象的一些概念
2014/08/29 Python
Python计算回文数的方法
2015/03/11 Python
探究Python多进程编程下线程之间变量的共享问题
2015/05/05 Python
python常见数制转换实例分析
2015/05/09 Python
Python list操作用法总结
2015/11/10 Python
Python操作csv文件实例详解
2017/07/31 Python
pyQT5 实现窗体之间传值的示例
2019/06/20 Python
python的移位操作实现详解
2019/08/21 Python
python 3.74 运行import numpy as np 报错lib\site-packages\numpy\__init__.py
2019/10/06 Python
python 的numpy库中的mean()函数用法介绍
2020/03/03 Python
Python semaphore evevt生产者消费者模型原理解析
2020/03/18 Python
python调用摄像头的示例代码
2020/09/28 Python
使用Python通过oBIX协议访问Niagara数据的示例
2020/12/04 Python
美国奢侈品在线团购网站:Gilt City
2017/11/16 全球购物
Farfetch香港官网:汇集全球时尚奢侈品购物平台
2017/11/26 全球购物
美国演唱会和体育门票购买网站:Ticketnetwork
2018/10/19 全球购物
德国药房apodiscounter中文官网:德国排名前三的网上药店
2019/06/03 全球购物
怎样让char类型的东西转换成int类型
2013/12/09 面试题
饭店工作计划书
2014/01/10 职场文书
党员三严三实对照检查材料
2014/10/13 职场文书
学习作风建设心得体会
2014/10/22 职场文书
Nginx设置日志打印post请求参数的方法
2021/03/31 Servers