使用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利用div背景,做一个竖线的效果。
Nov 22 Javascript
javascript闭包的理解和实例
Aug 12 Javascript
jquery移动listbox的值原理及代码
May 03 Javascript
详解JavaScript函数绑定
Aug 18 Javascript
node.js中的fs.futimesSync方法使用说明
Dec 17 Javascript
EasyUI的DataGrid绑定Json数据源的示例代码
Dec 16 Javascript
微信小程序实现全国机场索引列表
Jan 31 Javascript
js中offset,client , scroll 三大元素知识点总结
Sep 11 Javascript
浅谈bootstrap layer.open中end的使用方法
Sep 12 Javascript
vue中keep-alive,include的缓存问题
Nov 26 Javascript
nuxt+axios实现打包后动态修改请求地址的方法
Apr 22 Javascript
vue组件中实现嵌套子组件案例
Aug 31 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
迅雷下载《中学科技》怀旧期刊下载
2021/02/27 无线电
php代码中使用换行及(\n或\r\n和br)的应用
2013/02/02 PHP
ThinkPHP CURD方法之where方法详解
2014/06/18 PHP
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
2014/09/24 PHP
php连接与操作PostgreSQL数据库的方法
2014/12/25 PHP
PHP查找与搜索数组元素方法总结
2015/06/12 PHP
Laravel框架路由和控制器的绑定操作方法
2018/06/12 PHP
jquery 事件对象属性小结
2010/04/27 Javascript
使用jquery实现select添加实现后台权限添加的效果
2011/05/28 Javascript
js快速排序的实现代码
2013/12/08 Javascript
js函数调用的方式
2014/05/06 Javascript
javascript中为某个元素指定事件的三种方式
2014/08/07 Javascript
详解JavaScript中this关键字的用法
2016/05/26 Javascript
JavaScript数组方法大全(推荐)
2016/07/05 Javascript
AngularJS压缩JS技巧分析
2016/11/08 Javascript
jQuery日程管理插件fullcalendar使用详解
2017/01/07 Javascript
Angular之toDoList的实现代码示例
2017/12/02 Javascript
vue.js仿hover效果的实现方法示例
2019/01/28 Javascript
Vue路由模块化配置的完整步骤
2019/08/14 Javascript
javascript设计模式 ? 解释器模式原理与用法实例分析
2020/04/17 Javascript
[02:43]DOTA2英雄基础教程 圣堂刺客
2013/12/09 DOTA
Python数据结构与算法之常见的分配排序法示例【桶排序与基数排序】
2017/12/15 Python
基于Python执行dos命令并获取输出的结果
2019/12/30 Python
HTML5表格_动力节点Java学院整理
2017/07/11 HTML / CSS
英国珠宝钟表和家居礼品精品店:David Shuttle
2018/02/24 全球购物
印尼购物网站:iLOTTE
2019/10/16 全球购物
高中生学习生活的自我评价
2013/10/09 职场文书
编辑找工作求职信分享
2014/01/03 职场文书
医学生自我评价
2014/01/27 职场文书
树转促学习心得体会
2014/09/10 职场文书
收入及婚姻状况证明
2014/11/20 职场文书
销售2014年度工作总结
2014/12/08 职场文书
小升初自荐信怎么写
2015/03/26 职场文书
小学班主任工作随笔
2015/08/15 职场文书
启迪人心的励志语录:脾气永远不要大于本事
2020/01/02 职场文书
MySQL数据管理操作示例讲解
2022/12/24 MySQL