Caractère UTF-8 QR Code Zen.Barcode

Résolu
clementekh
Messages postés
15
Date d'inscription
lundi 11 février 2019
Statut
Membre
Dernière intervention
7 mars 2019
- 6 mars 2019 à 15:31
vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022
- 7 mars 2019 à 15:26
Bonjour,

J'utilise le framework Zen.Barcode pour créer des qr codes cependant il ne prend pas en compte les caractères spéciaux (é,à,Ë etc) comment pourrais je procéder s'il vous plait ?

Voici mon code avec en commentaire ma partie pour essayer d'encoder la string nameAgent

string nameAgent = fileWExt.Substring(0, fileWExt.Length - 8);

                    //byte[] bytes = Encoding.Default.GetBytes(nameAgent);
                    //nameAgent = Encoding.UTF8.GetString(bytes);
                    String chaineCrypte = nameAgent + " " + cpCrypte;
                 

                    panel1.BackgroundImage = Image.FromFile("c:\\outils\\QrCodeGenerator\\GabaritBadge\\badgerondvierge.jpg");
                    Zen.Barcode.CodeQrBarcodeDraw qrcode = Zen.Barcode.BarcodeDrawFactory.CodeQr;
                    pictureBox4.BackgroundImage = qrcode.Draw(chaineCrypte, 60);
                    label2.Text = nameAgent;


Merci d'avance.
Clément
A voir également:

3 réponses

vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022
151
6 mars 2019 à 19:17
Ou même mieux avec Encoding.Unicode qui gère l'UTF16
1
vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022
151
Modifié le 6 mars 2019 à 17:13
bonjour
Pourquoi ne mets-tu pas les 2 Encoding sur Default pour tester ?
byte[] bytes = Encoding.Default.GetBytes(nameAgent);
nameAgent = Encoding.Default.GetString(bytes);


0
clementekh
Messages postés
15
Date d'inscription
lundi 11 février 2019
Statut
Membre
Dernière intervention
7 mars 2019

7 mars 2019 à 09:40
Merci mais je essayé les deux version et il me met ce message d'erreur
0
vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022
151 > clementekh
Messages postés
15
Date d'inscription
lundi 11 février 2019
Statut
Membre
Dernière intervention
7 mars 2019

7 mars 2019 à 10:25
A quoi correspond 60 ( le second paramètre de
Qrcode.Draw
?
De plus pour poster du code voit ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
0
clementekh
Messages postés
15
Date d'inscription
lundi 11 février 2019
Statut
Membre
Dernière intervention
7 mars 2019

7 mars 2019 à 14:30
Je ne sais pas du tout j'ai suivi le tuto suivant https://www.supinfo.com/articles/single/3975-generer-qr-code-c

Mais penses tu qu'il failles que je change quelque chose de se parametre ?

Oui je sais la bonne manière de poster du code c’était juste pour montrer l'erreur car c'est exactement le même code que mon premier post
0
vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022
151 > clementekh
Messages postés
15
Date d'inscription
lundi 11 février 2019
Statut
Membre
Dernière intervention
7 mars 2019

7 mars 2019 à 14:53
Il faudrait surtout savoir à quoi il correspond . Car dans la ligne de code où est l'erreur on parle d'index dans un tableau et on est en dehors des limites du tableau .
Peut-être la longueur de chaineCrype ?
Est-ce que cela fonctionnait sans les caractères spéciaux ( voir ton message d'origine ) ?
0
vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022
151 > vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022

7 mars 2019 à 15:20
bonjour
en essayant ceci avec un é ou un à dans la Textbox cela fonctionne !
Par contre je ne peux tester si le Qrcode est correct !
using System.Windows.Forms;

namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Button1_Click(object sender, System.EventArgs e)
        {
            Zen.Barcode.CodeQrBarcodeDraw qrcode = Zen.Barcode.BarcodeDrawFactory.CodeQr;
            pictureBox1.Image = qrcode.Draw(textBox1.Text, 60);
        }

        private void TextBox1_Click(object sender, System.EventArgs e)
        {
            textBox1.Text = string.Empty;
        }
    }
}

0
clementekh
Messages postés
15
Date d'inscription
lundi 11 février 2019
Statut
Membre
Dernière intervention
7 mars 2019

7 mars 2019 à 15:21
Du coup j'ai résous mon problème en changeant de framework j'utilise QR Code Generator qui prend en charge les caractères spéciaux.
0
vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022
151
7 mars 2019 à 15:26
Tant mieux !
Au plaisir
0