DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions d'impression
  • Codes-barres UPC et EAN : Taille des codes-barres
  • Taille des codes-barres
  • Impression d'un code-barres de type DataMatrix ou PDF417
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
Imprime un code-barres (à l'intérieur d'un rectangle).
Remarque : L'impression est envoyée au spooler d'imprimante. Pour imprimer réellement la page, utilisez la fonction iFinImprime.
Exemple
// Impression de codes-barres
// Code-barres de type Interleaved 2 of 5
iImprimeCodeBarre("12345678905", CB_INTER2OF5, 10, 10, 23, 50)
// Code-barres de type UPCA
iImprimeCodeBarre("12345678905+22", CB_UPCA, 10, 10, 23, 50)
MonQRCode est un CodeBarres
MonQRCode.Contenu = "http://www.pcsoft.fr"
MonQRCode.TypeContenu = cbTypeTexte
MonQRCode.TypeCodeBarres = CB_QRCODE
iImprimeCodeBarre(MonQRCode, 10, 20, 50, 60)
WINDEV
iDestination(iVisualisateur)
MonCode est un CodeBarres
MonCode.Contenu = "1234567"
MonCode.TypeCodeBarres = CB_EAN8
MonCode.Options = CB_Gauche + CB_SansTexte
iCadre(10, 20, 100 ,60)
iImprimeCodeBarre(MonCode, 10, 20, 100, 60)
 
iFinImprime()
Syntaxe

Imprimer un code-barres Masquer les détails

iImprimeCodeBarre(<Valeur du code-barres> , <Type> , <X1> , <Y1> , <X2> , <Y2> [, <Code étendu>])
<Valeur du code-barres> : Chaîne de caractères
Chaîne de caractères à représenter sous forme de code-barres.
<Type> : Constante de type entier
Type du code-barres à représenter (les différents types de codes-barres gérés par WINDEV sont présentés dans la page Gestion des codes-barres).
CB_AZTECCode-barres de type Aztec.
CB_CODE128Code-barres de type Code128.
CB_CODE39Code-barres de type Code39.Code-barres utilisable avec <Code Étendu> correspondant à CB_Etendu ou CB_Vérification
La valeur du code-barres peut contenir les caractères de début et de fin (caractère "*"). Dans ce cas, ces caractères seront ajoutés dans le dessin du code-barres et imprimés dans le texte sous le code-barres.
Si ces caractères ne sont pas présents dans la valeur du code-barres, ils seront automatiquement ajoutés dans le dessin du code-barres.
Par contre, ils n'apparaîtront pas dans le texte affiché sous le code-barres.
CB_CODE93Code-barres de type Code93.Code-barres utilisable avec <Code Étendu> correspondant à CB_Etendu ou CB_Vérification).
CB_CODE11Code-barres de type Code11.Ce type de code-barres n'est pas disponible.
CB_INTER2OF5Code-barres de type Interleaved 2 of 5.Code-barres utilisable avec <Code Étendu> correspondant à CB_Vérification.
CB_CODABARCode-barres de type Codabar.Code-Barres utilisable avec <Code Étendu> correspondant à CB_Vérification.
CB_DATAMATRIXCode-barres de type Data Matrix.
CB_EAN128Code-barres de type EAN-128.Ce type de code-barres n'est pas disponible.
CB_EAN13Code-barres de type EAN-13.Valeurs possibles du code-barres :
  • 12 caractères,
  • 12 caractères + 2 caractères supplémentaires (exemple "012345678912+22")
  • 12 caractères + 5 caractères supplémentaires (exemple "01234567891+22335")
Un caractère de contrôle est automatiquement inséré après le 12ème caractère.
CB_EAN8Code-barres de type EAN-8.Valeurs possibles du code-barres :
  • 7 caractères,
  • 7 caractères + 2 caractères supplémentaires (exemple "0123456+22")
  • 12 caractères + 5 caractères supplémentaires (exemple "0123456+22335")
Un caractère de contrôle est automatiquement inséré après le 7ème caractère.
CB_GS1_128Code-barres de type GS1-128 (nouveau nom du code-barres EAN-128).
CB_MAXICODECode-barres de type MaxiCode.
CB_MSICode-barres de type MSI.Ce type de code-barres n'est pas disponible.
CB_PDF417Code-barres de type PDF417.
CB_UPCACode-barres de type UPC-A.Valeurs possibles du code-barres :
  • 11 caractères,
  • 11 caractères + 2 caractères supplémentaires (exemple "01234567891+22")
  • 11 caractères + 5 caractères supplémentaires (exemple "01234567891+22335")
Un caractère de contrôle est automatiquement inséré après le 11ème caractère.
CB_UPCECode-barres de type UPC-E.Valeurs possibles du code-barres :
  • 11 caractères,
  • 11 caractères + 2 caractères supplémentaires (exemple "01234567891+22")
  • 11 caractères + 5 caractères supplémentaires (exemple "01234567891+22335")
Un caractère de contrôle est automatiquement inséré après le 11ème caractère.
<X1> : Réel
Coordonnée horizontale (colonne ou abscisse) du coin haut gauche du rectangle dans lequel le code-barres va être dessiné (en millimètres).
Valeur comprise entre 0 et la largeur de la page (donnée par iLargeurPage).
<Y1> : Réel
Coordonnée verticale (ligne ou ordonnée) du coin haut gauche du rectangle dans lequel le code-barres va être dessiné (en millimètres).
Valeur comprise entre 0 et la hauteur de la page (donnée par iHauteurPage).
<X2> : Réel
Coordonnée horizontale (colonne ou abscisse) du coin bas droit du rectangle dans lequel le code-barres va être dessiné (en millimètres).
Valeur comprise entre 0 et la largeur de la page (donnée par iLargeurPage).
<Y2> : Réel
Coordonnée verticale (ligne ou ordonnée) du coin bas droit du rectangle dans lequel le code-barres va être dessiné (en millimètres).
Valeur comprise entre 0 et la hauteur de la page (donnée par iHauteurPage).
<Code étendu> : Constante (ou combinaison de constantes) optionnelle de type entier
Caractéristiques du code-barres.
CB_90Imprime le code-barres verticalement.
Codes-barres concernés : tous
CB_180Imprime le code-barres en faisant une rotation à 180 degrés.
Codes-barres concernés : tous
CB_270Imprime le code-barres en faisant une rotation à 270 degrés.
Codes-barres concernés : tous
CB_BasCode-barres positionné en bas du rectangle destination.
Codes-barres concernés : tous
CB_CaractèreControleCode-barres contenant des caractères de contrôle. Par défaut, les caractères de contrôle sont encadrés par les caractères "<" et ">". Pour ne pas interpréter ces caractères comme caractères de contrôle, il suffit de doubler le premier "<" :
  • "<C40>" = caractère de contrôle
  • "<<AB>" = chaîne <AB> à encoder dans le code-barres.
Pour plus de détails sur les caractères acceptés, consultez Les différents types de codes-barres.
Codes-barres concernés : codes-barres de type CB_CODE128, CB_DATAMATRIX, CB_EAN128, CB_GS1_128, CB_PDF417.
CB_CaractèreVérificationCode-barres contenant des caractères de vérification.
Si cette option est sélectionnée, les constantes CB_CaractèreControle et CB_JeuxCaractères sont automatiquement prises en compte.
Codes-barres concernés : codes-barres de type CB_CODE128, CB_DATAMATRIX, CB_EAN128, CB_GS1_128, CB_PDF417.
CB_CentreHCentrage horizontal du code-barres dans le rectangle destination.
Codes-barres concernés : tous
CB_CentreVCentrage vertical du code-barres dans le rectangle destination.
Codes-barres concernés : tous
CB_DroiteCode-barres aligné à droite dans le rectangle destination.
Codes-barres concernés : tous
CB_EtenduCode-barres étendu.
Codes-barres concernés : codes-barres de type CB_CODE39 et CB_CODE93.
CB_FormateTexteFormate le texte affiché : des parenthèses sont ajoutées autour des AIs dans le texte imprimé.
Codes-barres concernés : codes-barres de type EAN 128 ou GS1-128.
CB_GaucheCode-barres aligné à gauche dans le rectangle destination.
Codes-barres concernés : tous
CB_HautCode-barres positionné en haut du rectangle destination.
Codes-barres concernés : tous
CB_IgnoreFormatageIgnore les parenthèses d'un code 128, EAN-128 ou GS1-128.
Les parenthèses sont utilisées pour rendre le code-barres plus lisible par un humain, mais ne sont pas dessinées dans le code.
Codes-barres concernés : codes-barres de type CB_CODE128, CB_EAN128 et CB_GS1_128.
CB_JeuxCaractèresCode-barres utilisant un ou plusieurs jeux de caractères utilisés pour la compression du code-barres. Ce jeu de caractères doit être défini dans la valeur du code-barres.
Pour plus de détails sur les jeux de caractères, consultez Les différents types de codes-barres.
Codes-barres concernés : tous
CB_NonProportionnelAjuste le code-barres à la taille du rectangle destination.
Codes-barres concernés : tous
CB_SansTexte N'affiche pas le texte sous le code-barres.
Codes-barres concernés : codes-barres de type CB_UPCA, CB_UPCB, CB_EAN13 et CB_EAN8.
CB_TexteAffiche le texte sous le code-barres.
Le texte est normalisé pour les codes-barres de type CB_UPCA, CB_UPCE, CB_EAN13 et CB_EAN8.
Pour les autres types de codes-barres, le texte peut dépasser du cadre d'affichage du code-barres.
Codes-barres concernés : tous
CB_TexteCentreCentre le texte sous le code-barres.
Codes-barres concernés : codes-barres de type CB_CODE128, CB_CODE93, CB_CODE11, CB_EAN128, CB_CODE39, CB_INTER2OF5, CB_CODABAR, CB_MSI.
CB_TexteDroiteAligne à droite le texte sous le code-barres.
Codes-barres concernés : codes-barres de type CB_CODE128, CB_CODE93, CB_CODE11, CB_EAN128, CB_CODE39, CB_INTER2OF5, CB_CODABAR, CB_MSI.
CB_TexteGaucheAligne à gauche le texte sous le code-barres.
Codes-barres concernés : codes-barres de type CB_CODE128, CB_CODE93, CB_CODE11, CB_EAN128, CB_CODE39, CB_INTER2OF5, CB_CODABAR, CB_MSI.
CB_VérificationCode-barres avec caractères de vérification.
Codes-barres concernés : codes-barres de type CB_CODE39, CB_CODE93, CB_INTER2OF5 et CB_CODABAR.
CB_Vertical Imprime le code-barres verticalement.
Codes-barres concernés : tous

Imprimer un code-barres (variable de type CodeBarres) Masquer les détails

iImprimeCodeBarre(<Code-barres> , <X1> , <Y1> , <X2> , <Y2>)
<Code-barres> : Variable de type CodeBarres
Nom de la variable de type CodeBarres contenant la description du code-barres à imprimer.
<X1> : Réel
Coordonnée horizontale (colonne ou abscisse) du coin haut gauche du rectangle dans lequel le code-barres va être dessiné (en millimètres).
Valeur comprise entre 0 et la largeur de la page (donnée par iLargeurPage).
<Y1> : Réel
Coordonnée verticale (ligne ou ordonnée) du coin haut gauche du rectangle dans lequel le code-barres va être dessiné (en millimètres).
Valeur comprise entre 0 et la hauteur de la page (donnée par iHauteurPage).
<X2> : Réel
Coordonnée horizontale (colonne ou abscisse) du coin bas droit du rectangle dans lequel le code-barres va être dessiné (en millimètres).
Valeur comprise entre 0 et la largeur de la page (donnée par iLargeurPage).
<Y2> : Réel
Coordonnée verticale (ligne ou ordonnée) du coin bas droit du rectangle dans lequel le code-barres va être dessiné (en millimètres).
Valeur comprise entre 0 et la hauteur de la page (donnée par iHauteurPage).
Remarques

Codes-barres UPC et EAN : Taille des codes-barres

La norme des codes UPC et EAN fixe les proportions hauteur/largeur des codes-barres. Par défaut, les dessins de ces codes-barres respectent cette norme. Il est toutefois possible de dessiner des codes-barres "non conformes" en utilisant la constante CB_NonProportionnel.
Remarque : L'espace donné pour dessiner le code-barres peut ne pas être occupé à 100%. En effet, la taille de chaque barre est calculée afin d'obtenir un code-barres toujours lisible.

Taille des codes-barres

La largeur effective du dessin d'un code-barres peut-être inférieure à la largeur spécifiée.
En effet, la largeur de chaque barre composant un code-barres est calculée à partir de la largeur de la barre la plus étroite du code-barres. La largeur de chaque barre doit être un nombre entier de pixels.
Exemple de calcul de la largeur du code-barres :
  • La largeur du dessin doit être de 130 pixels.
  • Le dessin contient 10 barres étroites de largeur 1 et 5 barres larges de largeur 2.
  • Calcul de la largeur d'une barre étroite = 110 / (10 + 5*2) = 5 pixels
  • Calcul de la largeur totale du dessin = 5 * (10 +5*2) = 100 pixels
Avec l'utilisation de la constante CB_CentreH, le dessin commencera donc à (110-100) /2 = 5 pixels du bord gauche et se terminera à 5 pixels du bord droit.

Impression d'un code-barres de type DataMatrix ou PDF417

Lors de l'impression d'un code-barres DataMatrix ou PDF417 avec la fonction iImprimeCodeBarre, les options suivantes sont prises en compte :
Data Matrix
  • Taille de la matrice calculée en fonction de la taille de la chaîne et optimisée pour obtenir une matrice carrée.
  • Jeu de caractères : WINDEV optimise le choix des jeux de caractères afin d'écrire le code-barres le plus petit possible.
PDF417
  • Taille de la matrice calculée en fonction de la chaîne
  • Niveau de correction calculé selon la longueur (après compression) des données à encoder :
    • de 1 à 40 caractères : niveau 2
    • de 41 à 160 caractères : niveau 3
    • de 161 à 320 caractères : niveau 4
    • à partir de 321 caractères : niveau 5
  • Hauteur de ligne : 4
  • Jeu de caractères : WINDEV optimise le choix des jeux de caractères afin d'écrire le code-barres le plus petit possible.
Pour plus de détails sur les jeux de caractères pris en compte et les caractères de contrôle, consultez Les différents types de codes-barres.
Composante : wd290prn.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 21/06/2023

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