PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE


  • 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/iPadApple WatchUniversal Windows 10 AppWindows Mobile
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.
Versions 18 et supérieures
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
WEBDEV - Code ServeurLinux Cette fonction est désormais disponible pour les sites Linux.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Nouveauté 18
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
WEBDEV - Code ServeurLinux Cette fonction est désormais disponible pour les sites Linux.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
WEBDEV - Code ServeurLinux Cette fonction est désormais disponible pour les sites Linux.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Versions 21 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Versions 24 et supérieures
Android Cette fonction est désormais disponible pour les applications Android.
Nouveauté 24
Android Cette fonction est désormais disponible pour les applications Android.
Android Cette fonction est désormais disponible pour les applications Android.
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)
Versions 16 et supérieures
MonQRCode est un CodeBarres
MonQRCode..Contenu = "http://www.pcsoft.fr"
MonQRCode..TypeContenu = cbTypeTexte
MonQRCode..TypeCodeBarres = CB_QRCODE
iImprimeCodeBarre(MonQRCode, 10, 20, 50, 60)
Nouveauté 16
MonQRCode est un CodeBarres
MonQRCode..Contenu = "http://www.pcsoft.fr"
MonQRCode..TypeContenu = cbTypeTexte
MonQRCode..TypeCodeBarres = CB_QRCODE
iImprimeCodeBarre(MonQRCode, 10, 20, 50, 60)
MonQRCode est un CodeBarres
MonQRCode..Contenu = "http://www.pcsoft.fr"
MonQRCode..TypeContenu = cbTypeTexte
MonQRCode..TypeCodeBarres = CB_QRCODE
iImprimeCodeBarre(MonQRCode, 10, 20, 50, 60)
Versions 16 et supérieures
iAperçu()
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()
Nouveauté 16
iAperçu()
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()
iAperçu()
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 (entre guillemets)
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).
Versions 21 et supérieures
CB_AZTEC
Nouveauté 21
CB_AZTEC
CB_AZTEC
Code-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.
Versions 24 et supérieures
Ce type de code-barres n'est pas disponible.
Nouveauté 24
Ce type de code-barres n'est pas disponible.
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.
Versions 24 et supérieures
Ce type de code-barres n'est pas disponible.
Nouveauté 24
Ce type de code-barres n'est pas disponible.
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.
Versions 18 et supérieures
CB_GS1_128
Nouveauté 18
CB_GS1_128
CB_GS1_128
Code-barres de type GS1-128 (nouveau nom du code-barres EAN-128).
Versions 21 et supérieures
CB_MAXICODE
Nouveauté 21
CB_MAXICODE
CB_MAXICODE
Code-barres de type MaxiCode.
CB_MSICode-barres de type MSI.
Versions 24 et supérieures
Ce type de code-barres n'est pas disponible.
Nouveauté 24
Ce type de code-barres n'est pas disponible.
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_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 les doubler.
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.
Versions 18 et supérieures
CB_FormateTexte
Nouveauté 18
CB_FormateTexte
CB_FormateTexte
Formate 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_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
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
Versions 24 et supérieures
Android Ce paramètre est ignoré.
Nouveauté 24
Android Ce paramètre est ignoré.
Android Ce paramètre est ignoré.
Versions 16 et supérieures

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).
Nouveauté 16

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).

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 : wd240prn.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire