JavaScript を使用して QR コードを解析する 3 つの方法

JavaScript を使用して QR コードを解析する 3 つの方法

1. JavaScriptを使用してQRコードを解析する

1. QR コードとは何ですか?

QR コードには、人間が理解できるテキスト言語が機械言語の形式で保存されています。黒い四角は 1 を表し、白い四角は 0 を表し、白黒のパターンは実際にはコードの文字列です。コードをスキャンするプロセスは、これらのコードを変換するプロセスです。注目すべきもう 1 つの点は、側面に 3 つの大きな四角形があり、主に位置決め機能として機能することです。 3 つのポイントで表面を判断できるため、コードをスキャンすると、携帯電話の配置に関係なく特定の情報を取得できます。

2.qrコードパーサー

これは依存関係のない QR コード フロントエンド解析ツールです。利点は、小型パッケージで軽量なツールであることです。欠点は、カメラを呼び出せないことです。カメラを呼び出すためのコードを記述する必要があります。

1. インストール方法

npm に QR コード パーサーを追加します

2. 使用方法

'qrcode-parser' から qrcodeParser をインポートします

img = '' とします。
qrcodeParser().then(res =>{
    コンソール.log(res)
})

3. ngx-qrcode2

angularに統合された QR コード生成ツール。生成のみ可能で、読み取ることはできません。

1. インストール方法

npm に ngx-qrcode2 を追加します

2. 使用方法

Appmodule にモジュールをインポートします。

'@angular/platform-b​​rowser' から BrowserModule をインポートします。
'@angular/core' から NgModule をインポートします。
'ngx-qrcode2' から { NgxQRCodeModule } をインポートします。

'./app.component' から { AppComponent } をインポートします。

@Ngモジュール({
  宣言: [
    アプリコンポーネント
  ]、
  輸入: [
    ブラウザモジュール、
    NgxQRコードモジュール
  ]、
  プロバイダー: [],
  ブートストラップ: [AppComponent]
})
クラス AppModule をエクスポートします { }

app.component.html 挿入されたテンプレート:

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

<ngx-qrコード
      [qrc-element-type]="要素タイプ"
      [qrc-value] = "値"
      qrc-class = "aclass"
      qrc-errorCorrectionLevel = "L">
</ngx-qrcode>

app.component.ts に次のコードを追加します。

'@angular/core' から Component をインポートします。

@成分({
  セレクタ: 'app-root',
  テンプレート URL: './app.component.html',
  スタイル URL: ['./app.component.css']
})
クラスAppComponentをエクスポートします。
  タイトル = 'アプリ';
  要素タイプ = 'url';
  値 = 'Techiediaries';
}

4. フロントエンドでQRコードを生成する

1. インストール方法

npm をインストール @techiediaries/ngx-qrcode --save

2. 使用方法

Appmodule にモジュールをインポートします。

'@angular/core' から NgModule をインポートします。
'@angular/common' から CommonModule をインポートします。
'ngx-qrcode-all' から QrCodeAllModule をインポートします。
'./app.component' から { AppComponent } をインポートします。

@Ngモジュール({
    輸入: [
        共通モジュール、
        Qrコード全モジュール
    ]、
    宣言: [
        アプリコンポーネント
    ]
})
クラスAppModuleをエクスポートする{
    コンストラクタ() {}
}

3. ケース1: QRコードを生成するためのコードテンプレート

<div id="qrcodeid">
 <qr-code-all [qrCodeType]="url"
     [qrCodeValue]="'SKは世界一だ!'"
     [qrコードバージョン]="'1'"
     [qrCodeECLevel]="'M'"
     [qrCodeColorLight]="'#ffffff'"
     [qrCodeColorDark]="'#000000'"
     [幅]="11"
     [余白]="4"
     [スケール]="4"
     [スキャンQrコード]="false">
 </qr-code-all>
</div>

4. ケース2: QRコードの読み取り

<div id="qrcodeid">
 <qr-code-all [キャンバス幅]="640"
     [キャンバスの高さ]="480"
     [デバッグ]="false"
     [stopAfterScan]="true"
     [更新時間]="500"
     (onCapture)="キャプチャ画像($event)"
     [スキャンQrコード]="true">
 </qr-code-all>
</div>

これで、JavaScript を使用して QR コードを解析する 3 つの方法についての記事は終了です。JavaScript による QR コードの解析の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JavaScript+html はフロントエンドページでランダム QR コード検証を実装します
  • js QRコードスキャンログインの原理についての簡単な説明
  • js を使用して QR コードを生成するサンプル コード
  • 動的 QR コードを作成するための Three.js サンプル コード
  • QRコードを生成するときにqrcode.jsが空のdivを定義する必要があるという問題を解決する
  • WeChatのQRコードスキャン機能をjsで呼び出す実装コード
  • JSはバーコードスキャナでQRコードをスキャンする機能を実現します
  • ネイティブ JavaScript に基づいて画像付きの QR コードを生成する方法

<<:  Dockerコンテナの原理の分析

>>:  ウェブページサイズに関する調査

推薦する

Packetdrillの簡潔なユーザーガイド

1. Packetdrillのコンパイルとインストールソースコードリンク https://githu...

Vueのフロントエンドとバックエンドのデータのやり取りと表示を理解する方法

目次1. 技術概要2. 技術的な詳細1. インターフェースからバックエンドデータを取得する2. フロ...

HTML要素を非表示にするいくつかの方法

1. CSSを使用するコードをコピーコードは次のとおりです。スタイル="display:n...

MySQLデータベースの管理者パスワードを忘れた場合の解決策

1. コマンド mysqld --skip-grant-tables を入力します (前提条件: m...

MySQLコマンドラインでSQLファイルを実行するいくつかの方法

目次最初の方法: MySQLデータベースが接続されていない場合2 番目の方法: データベースがすでに...

Vue3ルーティングVueRouter4を使用する簡単な例

ルーティングvue-router4 では API の大部分は変更されていないため、変更点のみに焦点を...

MySQLの詳細な説明Explain

日常業務では、実行に時間のかかる SQL ステートメントを記録するために、スロー クエリを実行するこ...

Linux における $ 記号の基本的な使い方のまとめ

Linuxバージョン: CentOS 7 [root@azfdbdfsdf230lqdg1ba91 ...

vueを使用して登録ページの効果を実現し、vueを使用してSMS認証コードログインを実現します

この記事の例では、登録ページの効果を実現するためのVueの具体的なコードを参考までに共有しています。...

ウェブフロントエンドウェブ開発の一般的なプロセスの簡単な紹介

フロントエンド開発を行っている初心者の学生を多く見かけますが、彼らの効率は比較的遅いです。常にコード...

MySQL で null 値と空文字 ('') を区別する

日常の開発では、データベースの追加、削除、変更、クエリが一般的に行われるため、Mysql で NUL...

alpineをベースにdockerfileで作成したクローラーScrapyイメージの実装

1.アルパインイメージをダウンロードする [root@DockerBrian ~]# docker ...

HTMLの基本概念の詳細な説明

HTMLとは何ですか? HTML は Web ページを記述するために使用される言語です。 •HTML...

ARM64アーキテクチャでmysql5.7.22をインストールするプロセス全体

MySQLダウンロードアドレス: https://obs.cn-north-4.myhuaweicl...