Table des matières
Code QR.
1. Préface
Introduire le package
1 Présentez QRCoder via NuGet
Classe de génération de code QR
1. Préparation
2. Encodage
Préparer le formulaire
. 1. Apparence
Code
Maison développement back-end Tutoriel C#.Net La dernière solution pour générer des codes QR en C#, explication détaillée et exemples (QRCoder)

La dernière solution pour générer des codes QR en C#, explication détaillée et exemples (QRCoder)

Jul 26, 2018 pm 04:09 PM
c# 二维码

Je me demande si quelqu'un a créé plusieurs codes QR ? Dans cet article, je vais vous présenter comment utiliser C# pour générer des codes QR. Tout d'abord, je parlerai des trois classes QRCodeGenerator, QRCodeData et QRCode requises pour générer des codes QR. Pour une compréhension facile plus tard. Quelles sont leurs responsabilités ? QRCodeGenerator : utilisé pour générer l'objet de données stocké dans le code QR via la méthode spécifiée, qui est la matrice au milieu du code QR dans QRCodeData. Ensuite, QRCode obtient le QRCodeData et génère le code QR

Code QR.

1. Préface

Récemment, j'ai travaillé sur certaines choses liées aux codes QR, donc je suis entré en contact avec certains codes QR, donc depuis que je les ai utilisés, je pense qu'ils ont été utilisé

En fait, il existe d'innombrables articles sur les codes QR, et beaucoup d'entre eux sont écrits très sérieusement et sont très bons, mais c'est comme apprendre. Ce n'est pas parce que les autres le savent. vous n'avez aucune valeur dans l'apprentissage et l'enregistrement, donc l'apprentissage ne vient pas tôt ou tard

Introduire le package

1 Présentez QRCoder via NuGet

a) Tout d'abord, nous créons un. nouveau projet Class Library, nommé ici chestnut_qrcode

b) Ensuite, introduisez le package QRCoder via NuGet

c) Voir l'image pour le fonctionnement

La dernière solution pour générer des codes QR en C#, explication détaillée et exemples (QRCoder)

La dernière solution pour générer des codes QR en C#, explication détaillée et exemples (QRCoder)

d) Après une installation réussie, la référence du QRCoder apparaîtra dans la référence du projet

e) À l'heure actuelle, le travail d'introduction est terminé, mais il peut être facilement Créer un Encoder.cs 静态公共类

Classe de génération de code QR

1. Préparation

Nous parlons d'abord ici des conditions requises pour générer du code QR Trois classes :

  • QRCodeGenerator

  • QRCodeData

  • QRCode

Quelles sont leurs responsabilités ?

QRCodeGenerator : utilisé pour générer l'objet de données stocké dans le code QR d'une manière spécifiée, c'est-à-dire QRCodeData Matrix au milieu du QR code , puis QRCode récupère QRCodeData et génère le QR code

2. Encodage

Encoder.cs Le l'intégralité du code est la suivante :

using System.Drawing;

namespace chestnut_qrcode
{
    /// <summary>
    /// 二维码编码器
    /// </summary>
    public static class Encoder
    {
        /// <summary>
        /// 生成二维码
        /// </summary>
        /// <param name="msg">信息</param>
        /// <param name="version">版本 1 ~ 40</param>
        /// <param name="pixel">像素点大小</param>
        /// <param name="icon_path">图标路径</param>
        /// <param name="icon_size">图标尺寸</param>
        /// <param name="icon_border">图标边框厚度</param>
        /// <param name="white_edge">二维码白边</param>
        /// <returns>位图</returns>
        public static Bitmap code(string msg, int version, int pixel, string icon_path, int icon_size, int icon_border, bool white_edge)
        {

            QRCoder.QRCodeGenerator code_generator = new QRCoder.QRCodeGenerator();

            QRCoder.QRCodeData code_data = code_generator.CreateQrCode(msg, QRCoder.QRCodeGenerator.ECCLevel.M/* 这里设置容错率的一个级别 */, true, true, QRCoder.QRCodeGenerator.EciMode.Utf8, version);

            QRCoder.QRCode code = new QRCoder.QRCode(code_data);

            Bitmap icon = new Bitmap(icon_path);

            Bitmap bmp = code.GetGraphic(pixel, Color.Black, Color.White, icon, icon_size, icon_border, white_edge);

            return bmp;

        }
    }
}
Copier après la connexion

Les paramètres entre tolérance aux pannes et version sont liés au format d'encodage. Certains formats ne supportent pas le chinois

Préparer le formulaire

. 1. Apparence

Ici, seaconch utilise le projet winform, prenez simplement une capture d'écran

La dernière solution pour générer des codes QR en C#, explication détaillée et exemples (QRCoder)

Code

using System;
using System.Drawing;
using System.Windows.Forms;

namespace chestnut_form
{
    public partial class frm_qrcode : Form
    {
        public frm_qrcode()
        {
            InitializeComponent();
        }

        // 窗体加载
        private void frm_qrcode_Load(object sender, EventArgs e)
        {
            cb_version.SelectedIndex = 1;

            cb_pixel.SelectedIndex = 0;

            cb_icon_size.SelectedIndex = 0;

            cb_icon_border.SelectedIndex = 1;
        }

        // 编码
        private void btn_encode_Click(object sender, EventArgs e)
        {
            int version = Convert.ToInt16(cb_version.Text);

            int pixel = Convert.ToInt16(cb_pixel.Text);

            string str_msg = tb_msg.Text;

            int int_icon_size = Convert.ToInt16(cb_icon_size.Text);

            int int_icon_border = Convert.ToInt16(cb_icon_border.Text);

            bool b_we = rb_we_y.Checked ? true : false;

            Bitmap bmp = chestnut_qrcode.Encoder.code(str_msg, version, pixel, "E:/seaconch/git/1.jpg", int_icon_size, int_icon_border, b_we);

            pb_qrcode.Image = bmp;
        }

        // 保存
        private void btn_save_Click(object sender, EventArgs e)
        {
            if (pb_qrcode.Image != null)

                using (SaveFileDialog sfd = new SaveFileDialog())
                {
                    sfd.Filter = "(*.png)|*.png|(*.bmp)|*.bmp";

                    if (sfd.ShowDialog() == DialogResult.OK) pb_qrcode.Image.Save(sfd.FileName);

                }
        }
    }
}
Copier après la connexion
2.

Regardez l'effet de génération de code QR C#

La dernière solution pour générer des codes QR en C#, explication détaillée et exemples (QRCoder)

Articles connexes :

[Tutoriel c#】Type de données C#

Vidéos associées :

Tutoriel vidéo C# de la Geek Academy

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Active Directory avec C# Active Directory avec C# Sep 03, 2024 pm 03:33 PM

Guide d'Active Directory avec C#. Nous discutons ici de l'introduction et du fonctionnement d'Active Directory en C# ainsi que de la syntaxe et de l'exemple.

Générateur de nombres aléatoires en C# Générateur de nombres aléatoires en C# Sep 03, 2024 pm 03:34 PM

Guide du générateur de nombres aléatoires en C#. Nous discutons ici du fonctionnement du générateur de nombres aléatoires, du concept de nombres pseudo-aléatoires et sécurisés.

Vue Grille de données C# Vue Grille de données C# Sep 03, 2024 pm 03:32 PM

Guide de la vue Grille de données C#. Nous discutons ici des exemples de la façon dont une vue de grille de données peut être chargée et exportée à partir de la base de données SQL ou d'un fichier Excel.

Modificateurs d'accès en C# Modificateurs d'accès en C# Sep 03, 2024 pm 03:24 PM

Guide des modificateurs d'accès en C#. Nous avons discuté de l'introduction Types de modificateurs d'accès en C# ainsi que d'exemples et de résultats.

Sérialisation C# Sérialisation C# Sep 03, 2024 pm 03:30 PM

Guide de sérialisation C#. Nous discutons ici de l'introduction, des étapes de l'objet de sérialisation C#, du fonctionnement et de l'exemple respectivement.

Modèles en C# Modèles en C# Sep 03, 2024 pm 03:33 PM

Guide des modèles en C#. Nous discutons ici de l'introduction et des 3 principaux types de modèles en C# ainsi que de ses exemples et de l'implémentation du code.

Nombres premiers en C# Nombres premiers en C# Sep 03, 2024 pm 03:35 PM

Guide des nombres premiers en C#. Nous discutons ici de l'introduction et des exemples de nombres premiers en c# ainsi que de l'implémentation du code.

Factorielle en C# Factorielle en C# Sep 03, 2024 pm 03:34 PM

Guide de Factorial en C#. Nous discutons ici de l'introduction de factorial en c# ainsi que de différents exemples et de l'implémentation du code.

See all articles