PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile (précédentes versions) → Caractères accentués à la lecture d'un QR Code    Application Android
Caractères accentués à la lecture d'un QR Code Application Android
Débuté par Sauveur CONSALVI, 28 aoû. 2024 12:58 - 6 réponses
Membre enregistré
395 messages
Posté le 28 août 2024 - 12:58
Bonjour,
Pour apprendre la création et la lecture d'un QR Code, j'ai créé un projet tout simple sous Windev Mobile, Androit

J'ai un bouton qui créé et affiche le QR Code
MonQrCode.TypeCodeBarres = CB_QRCODE
MonQrCode.TypeContenu = cbTypeTexte
MonQrCode.Contenu = "Somone/Sénégal"
CBA_CodeBarre = MonQrCode
Info("Création QrCode "+MonQrCode.Contenu)

Dans "Info", j'ai bien Somone/Sénégal

J'ai fait une copie écran pour avoir une image jpg du QR Code généré

Je lis ensuite ce QR Code dans un champ Caméra
Procedure DécodeCodeBarre(cb est un CodeBarres)
sContenu est une chaîne UNICODE
sContenu = UTF8VersChaîne(cb.Contenu, alphabetAnsi)
Info("UTF8VersChaîne(cb.Contenu, alphabetAnsi) "+sContenu) /// Sngal
sContenu = ChaîneVersUTF8(cb.Contenu,alphabetDéfaut) // -************** S n gal
Info(" ChaîneVersUTF8(cb.Contenu,alphabetAnsi) "+sContenu)
sContenu = UnicodeVersAnsi(cb.Contenu,alphabetAnsi)
Info(" UnicodeVersAnsi(cb.Contenu,alphabetAnsi) "+sContenu) // rien
sContenu = AnsiVersUnicode(cb.Contenu,alphabetAnsi)
Info(" AnsiVersUnicode(cb.Contenu,alphabetAnsi) "+sContenu) // ******************** sContenu = ChaîneVersUTF8(cb.Contenu,alphabetD
sContenu = UTF8VersAnsi(cb.Contenu) // ******************** sContenu = ChaîneVersUTF8(cb.Contenu,alphabetDéfaut) // -************** S n gal
Info("UTF8VersAnsi(cb.Contenu)UTF8VersChaîne(cb.Contenu, alphabetAnsi) "+sContenu)
bufContenu est un Buffer
bufContenu = UTF8VersChaîne(cb.Contenu, alphabetAnsi)
Info("UTF8VersChaîne(cb.Contenu, alphabetAnsi) "+bufContenu) /// Sngal
bufContenu = ChaîneVersUTF8(cb.Contenu,alphabetDéfaut) // -************** S n gal
Info(" ChaîneVersUTF8(cb.Contenu,alphabetAnsi) "+bufContenu)
bufContenu = UnicodeVersAnsi(cb.Contenu,alphabetAnsi)
Info(" UnicodeVersAnsi(cb.Contenu,alphabetAnsi) "+bufContenu) // rien
bufContenu = AnsiVersUnicode(cb.Contenu,alphabetAnsi)
Info(" AnsiVersUnicode(cb.Contenu,alphabetAnsi) "+bufContenu) // ******************** bufContenu = ChaîneVersUTF8(cb.Contenu,alphabetD
bufContenu = UTF8VersAnsi(cb.Contenu) // ******************** bufContenu = ChaîneVersUTF8(cb.Contenu,alphabetDéfaut) // -************** S n gal
Info("UTF8VersAnsi(cb.Contenu)UTF8VersChaîne(cb.Contenu, alphabetAnsi) "+bufContenu)
CaméraArrêteDécodage(CAM_QrCode)


Je n'arrive pas à récupérer correctement Sénégal ....
J'ai passé le projet en ANSI, recompilé, testé, passé le projet en UNICODE, idem ...
J'ai essayé une chaine ANSI puis une chaine UNICODE ... Pareil

Comment faire pour "récupérer" correctement les caractères accentués !!!!
Merci de votre aide
Cordialement SC

--
Cordialement
SC
Membre enregistré
3 510 messages
Posté le 29 août 2024 - 01:07
Salut
As tu vérifier avec un autre logiciel si ton image QR code est correct ?
Pourquoi n'y a t'il pas de CaméraDémarreDécodage, je suppose que c'est un oubli
Dans le copier coller
Un info de Cb.Contenu au début de la procédure est la bienvenue
Message modifié, 29 août 2024 - 01:15
Membre enregistré
395 messages
Posté le 29 août 2024 - 13:00
Bonjour,
Merci de votre aide
Je viens de vérifier avec le logiciel Scanner installé sur on téléphone et le QR Code est correctement lu
CaméraDémarreDécodage(CAM_QrCode, CB_QRCODE)

Est dans un bouton pour lancer la lecture du QR Code
J'ai rajouter un info pour CB.Contenu en début de procédure, idem, les caractères accentués sont incorrectes

--
Cordialement
SC
Membre enregistré
395 messages
Posté le 05 septembre 2024 - 11:15
Personne pour m'aider ?
Personne n'a une idée ?

--
Cordialement
SC
Membre enregistré
3 510 messages
Posté le 15 septembre 2024 - 08:55
Salut,
Je croyais que le problème de QR code était résolu ?
https://www.developpez.net/forums/d2169278/environnements-developpement/windev/windev-mobile/caracteres-accentues-lecture-d-qr-code-application-android/
Et que maintenant c'était un problème de code barre.
Veux tu nous faire tourner en bourrique ?
En plus, tu t'es plaint que les liens que je t'ai proposé n'était que pour les QR code.
Membre enregistré
1 message
Posté le 03 octobre 2024 - 11:40
Sauveur CONSALVI escribió:
Bonjour,
Pour apprendre la création et la lecture d'un QR Code, j'ai créé un projet tout simple sous Windev Mobile, Androit

J'ai un bouton qui créé et affiche le QR Code
MonQrCode.TypeCodeBarres = CB_QRCODE
MonQrCode.TypeContenu = cbTypeTexte
MonQrCode.Contenu = "Somone/Sénégal"
CBA_CodeBarre = MonQrCode
Info("Création QrCode "+MonQrCode.Contenu)

Dans "Info", j'ai bien Somone/Sénégal

J'ai fait une copie écran pour avoir une image jpg du QR Code généré

Je lis ensuite ce QR Code dans un champ Caméra
Procedure DécodeCodeBarre(cb est un CodeBarres)
sContenu est une chaîne UNICODE
sContenu = UTF8VersChaîne(cb.Contenu, alphabetAnsi)
Info("UTF8VersChaîne(cb.Contenu, alphabetAnsi) "+sContenu) /// Sngal
sContenu = ChaîneVersUTF8(cb.Contenu,alphabetDéfaut) // -************** S n gal
Info(" ChaîneVersUTF8(cb.Contenu,alphabetAnsi) "+sContenu)
sContenu = UnicodeVersAnsi(cb.Contenu,alphabetAnsi)
Info(" UnicodeVersAnsi(cb.Contenu,alphabetAnsi) "+sContenu) // rien
sContenu = AnsiVersUnicode(cb.Contenu,alphabetAnsi)
Info(" AnsiVersUnicode(cb.Contenu,alphabetAnsi) "+sContenu) // ******************** sContenu = ChaîneVersUTF8(cb.Contenu,alphabetD
sContenu = UTF8VersAnsi(cb.Contenu) // ******************** sContenu = ChaîneVersUTF8(cb.Contenu,alphabetDéfaut) // -************** S n gal
Info("UTF8VersAnsi(cb.Contenu)UTF8VersChaîne(cb.Contenu, alphabetAnsi) "+sContenu)
bufContenu est un Buffer
bufContenu = UTF8VersChaîne(cb.Contenu, alphabetAnsi)
Info("UTF8VersChaîne(cb.Contenu, alphabetAnsi) "+bufContenu) /// Sngal
bufContenu = ChaîneVersUTF8(cb.Contenu,alphabetDéfaut) // -************** S n gal
Info(" ChaîneVersUTF8(cb.Contenu,alphabetAnsi) "+bufContenu)
bufContenu = UnicodeVersAnsi(cb.Contenu,alphabetAnsi)
Info(" UnicodeVersAnsi(cb.Contenu,alphabetAnsi) "+bufContenu) // rien
bufContenu = AnsiVersUnicode(cb.Contenu,alphabetAnsi)
Info(" AnsiVersUnicode(cb.Contenu,alphabetAnsi) "+bufContenu) // ******************** bufContenu = ChaîneVersUTF8(cb.Contenu,alphabetD
bufContenu = UTF8VersAnsi(cb.Contenu) // ******************** bufContenu = ChaîneVersUTF8(cb.Contenu,alphabetDéfaut) // -************** S n gal
Info("UTF8VersAnsi(cb.Contenu)UTF8VersChaîne(cb.Contenu, alphabetAnsi) "+bufContenu)
CaméraArrêteDécodage(CAM_QrCode)


Je n'arrive pas à récupérer correctement Sénégal ....
J'ai passé le projet en ANSI, recompilé, testé, passé le projet en UNICODE, idem ...
J'ai essayé une chaine ANSI puis une chaine UNICODE ... Pareil

Comment faire pour "récupérer" correctement les caractères accentués !!!!
Merci de votre aide
Cordialement SC

--
Cordialement
SC https://thevernt.com/retro-bowl-unblocked-77/


Bonjour SC,

Le problème semble lié à la gestion des encodages entre UTF-8, ANSI et Unicode. Pour récupérer correctement les caractères accentués comme "é" de "Sénégal", je vous recommande de vous assurer que vous travaillez bien avec l'encodage UTF-8 tout au long du processus, et non un mélange d'encodages.

Essayez ceci :

Assurez-vous que le QR Code est généré en UTF-8.
Utilisez exclusivement UTF8VersChaîne pour décoder le contenu du QR Code.
Évitez les conversions entre encodages (ANSI, Unicode) qui pourraient corrompre les caractères spéciaux.
Cordialement,
Membre enregistré
395 messages
Posté le 05 octobre 2024 - 12:49
Bonjour
Merci de vous intéresser à ce problème
Je répond tardivement car j'avoue que ce sujet m'épuise ...

Malheureusement je ne sais traduire en code ou description vos suggestions ...

--
Cordialement
SC