DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer une application ou un site / Champs, fenêtres et pages / Champs : Types disponibles / Champ Caméra
  • Présentation
  • Créer et configurer le champ Caméra pour décoder les codes-barres
  • Créer un champ Caméra
  • Configurer le champ Caméra
  • Traitement "Décodage d'un code-barres"
  • Remarque
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
Sous iOS et Android, il est possible de décoder les codes-barres via le champ Caméra via la fonction CBCapture. Cette fonction ouvre une fenêtre système pour décoder le code-barres. Cette fenêtre système n'est pas personnalisable.
Une autre solution consiste à utiliser le champ Caméra. Il est ainsi possible d'intégrer le champ et le décodage des codes-barres dans des UI complexes.
Créer et configurer le champ Caméra pour décoder les codes-barres

Créer un champ Caméra

Pour créer un champ Caméra :
  1. Sous le volet "Création", dans le groupe "Champs graphiques", cliquez sur "Caméra".
  2. Cliquez dans la fenêtre à la position où le champ doit être créé. Le champ apparaît en création.

Configurer le champ Caméra

Pour configurer le champ Caméra :
  1. Affichez la fenêtre de description du champ (option "Description" du menu contextuel).
  2. Dans l'onglet "Détail", configurez le paramétrage du champ :
    • Type de décodage  :
      • Aucun : Pas de décodage du code-barres.
      • Code-barres : Décodage sans zone de visée.
      • Code-barres avec zone de visée : Une zone de visée permet de visualiser la zone dans laquelle le code-barres doit être placé.
      • Code-barres avec zone de visée contrastée : Une zone de visée permet de visualiser la zone dans laquelle le code-barres doit être placé et les sections en dehors de cette zone sont floutées.
    • Type de code-barres : Type de code-barres à décoder. Il est possible de gérer tous les codes-barres.
    • Taille de la zone de visée : Taille de la zone de visée, exprimée en pourcentage de la zone visible. Cette option est disponible uniquement si une zone de visée a été demandée.
Traitement "Décodage d'un code-barres"
Lorsque le décodage des codes-barres est activé sur le champ Vidéo, l'événement "Décodage d'un code-barres" associé au champ Caméra permet de traiter le code-barres lu via le champ.
Cet événement est exécuté lorsque le code-barres est détecté.
Cet événement est de la forme :
PROCEDURE DécodeCodeBarre(cb est un CodeBarres)
Il est possible de récupérer les informations lues via la variable de type CodeBarres passée en paramètre.
Si cet événement renvoie :
Remarque
  • La fonction CaméraDemandePermission (ou la fonction VidéoDemandePermission) permet de savoir si l'appareil utilisé est autorisé à utiliser la caméra.
  • Attention : Si la prévisualisation du champ Caméra est déformée, l'image à décoder sera également déformée.
  • Décodage et prise de photos :
    • Si le champ Caméra est en mode "Compatible 26" : La prise de photos et l'enregistrement de vidéos sont interdits si la détection de codes-barres est activée (la fonction <Caméra>.Capture renvoie une erreur dans ce cas).
    • Android Si le champ Caméra est en mode 27 :
      • Il est possible de prendre une photo pendant que le décodage de code-barres est actif.
      • Il n'est pas possible d'enregistrer une vidéo pendant que le décodage de code-barres est actif.
        • Si le décodage est actif lors de l'appel de la fonction <Caméra>.VidéoDémarre, il sera arrêté et automatiquement relancé à la fin de l'enregistrement.
        • Si la fonction CaméraDémarreDécodage est appelée alors qu'une vidéo est en cours d'enregistrement, le décodage sera activé à la fin de l'enregistrement.
    • iPhone/iPad Si le champ Caméra est en mode 27 :
      • Il est possible de prendre une photo pendant que le décodage de code-barres est actif.
      • Il est possible d'enregistrer une vidéo pendant que le décodage de code-barres est actif.
  • Lorsque le champ Caméra est configuré pour autoriser le décodage de code-barres (dans la fenêtre de description), le décodage démarre automatiquement à l'ouverture de la fenêtre.
    Pour empêcher ce comportement, il est possible d'appeler la fonction CaméraArrêteDécodage (ou la fonction <Caméra>.ArrêteDécodage) dans l'événement "Initialisation" du champ Caméra. Le décodage des codes-barres pourra être relancé grâce à la fonction CaméraDémarreDécodage (ou la fonction <Caméra>.DémarreDécodage).
  • iPhone/iPad Cette fonctionnalité est disponible à partir de iOS 7.
Version minimum requise
  • Version 23
Commentaires
Décodage code barre EAN13
Merci à Nicolas :

https://forum.pcsoft.fr//en-US/pcsoft.fr.windevmobile/28106-camera-mode-portrait-29977/read.awp

Si celui-ci est un rectangle verticale (portrait) dans mon application en mode portrait, il lit correctement mes EAN13 mis horizontalement.
Si celui-ci est un rectangle horizontale (paysage) ou un carré dans mon application en mode portrait, il lit les EAN13 mis à la verticale uniquement...
Gilles GUICHARD
11 déc. 2019

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale