使用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 相关文章推荐
Javascript 变量作用域 两个可能会被忽略的小特性
Mar 23 Javascript
学习JavaScript的最佳方法分享
Oct 21 Javascript
JQuery判断子iframe何时加载完成解决方案
Aug 20 Javascript
javascript实现锁定网页、密码解锁效果(类似系统屏幕保护效果)
Aug 15 Javascript
通过JS动态创建一个html DOM元素并显示
Oct 15 Javascript
js随机生成网页背景颜色的方法
Feb 26 Javascript
javascript图片延迟加载实现方法及思路
Dec 31 Javascript
基于d3.js实现实时刷新的折线图
Aug 03 Javascript
浅谈js中StringBuffer类的实现方法及使用
Sep 02 Javascript
javaScript和jQuery自动加载简单代码实现方法
Nov 24 jQuery
解决vue项目中type=”file“ change事件只执行一次的问题
May 16 Javascript
微信小程序 flexbox layout快速实现基本布局的解决方案
Mar 24 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中的strtr函数使用介绍(str_replace)
2011/10/20 PHP
php中使用preg_match_all匹配文章中的图片
2013/02/06 PHP
php计算title标题相似比的方法
2015/07/29 PHP
php readfile()修改文件上传大小设置
2017/08/11 PHP
PHP长连接实现与使用方法详解
2018/02/11 PHP
JavaScript创建类/对象的几种方式概述及实例
2013/05/06 Javascript
自定义ExtJS控件之下拉树和下拉表格附源码
2013/10/15 Javascript
jQuery插件Slider Revolution实现响应动画滑动图片切换效果
2015/06/05 Javascript
js控制多图左右滚动切换效果代码分享
2015/08/26 Javascript
JavaScript简单下拉菜单特效
2016/09/13 Javascript
AngularJS实现星星等级评分功能
2016/09/24 Javascript
jQuery实现两个select控件的互移操作
2016/12/22 Javascript
javascript中json基础知识详解
2017/01/19 Javascript
Angular.js中ng-include用法及多标签页面的实现方式详解
2017/05/07 Javascript
Bootstrap Table从零开始
2017/06/30 Javascript
jQuery删除/清空指定元素的所有子节点实例代码
2019/07/04 jQuery
如何在selenium中使用js实现定位
2020/08/18 Javascript
从零开始用webpack构建一个vue3.0项目工程的实现
2020/09/24 Javascript
[05:05]第三天的dota2
2013/07/29 DOTA
[06:59]DOTA2-DPC中国联赛3月7日Recap集锦
2021/03/11 DOTA
python模块简介之有序字典(OrderedDict)
2016/12/01 Python
Python模块搜索路径代码详解
2018/01/29 Python
Django forms组件的使用教程
2018/10/08 Python
如何通过雪花算法用Python实现一个简单的发号器
2019/07/03 Python
numpy.array 操作使用简单总结
2019/11/08 Python
关于Pytorch的MNIST数据集的预处理详解
2020/01/10 Python
Python连接SQLite数据库并进行增册改查操作方法详解
2020/02/18 Python
python爬虫开发之使用python爬虫库requests,urllib与今日头条搜索功能爬取搜索内容实例
2020/03/10 Python
详解使用python爬取抖音app视频(appium可以操控手机)
2021/01/26 Python
如何在C# winform中异步调用web services
2015/09/21 面试题
2015年幼儿园毕业感言
2014/02/12 职场文书
婚礼司仪主持词
2014/03/14 职场文书
装饰工程师岗位职责
2014/06/08 职场文书
大学生入党自荐书
2015/03/05 职场文书
2016年会开场白台词
2015/06/01 职场文书
Python深度学习之Pytorch初步使用
2021/05/20 Python