Manuel - QRCode
Introduction
Le code QRCode fait partie de la famille des codes-barres en 2D. Il permet d'encoder beaucoup d'information en un seul code-barres.
Tous les caractères ASCII de 0 à 255 sont supportés. La taille du code sera déterminée en fonction du nombre de données entrées ainsi que du niveau d'erreur choisi. Vous pouvez forcer le code-barres à être généré dans une taille spécifique tant qu'il y a assez d'espace pour encoder les données.
Il est possible de passer en mode ECI avec la fonction SetAcceptECI().
Cette classe hérite de la classe BCGBarcode2D.
Exemple
Méthodes
Méthodes de BCGqrcode
- GetErrorLevel() — Retourne le niveau d'erreur du code-barres
-
SetErrorLevel(int
level ) — Fixe le niveau d'erreur du code-barres - GetSize() — Retourne la taille du code-barres
-
SetSize(int
value ) — Fixe la taille du code-barres -
SetStructuredAppend(int
snum , intst , stringsname ) — Spécifie que les données seront dispersées sur plusieurs codes-barres - GetFNC1() — Retourne si le FNC1 est activé
-
SetFNC1(int
fnc1Type , stringfnc1Id ) — Transforme votre code-barres en standard GS1 ou AIM - GetAcceptECI() — Retourne si les codes ECI sont acceptés
-
SetAcceptECI(bool
accept ) — Spécifie d'accepter les codes ECI - GetQuietZone() — Retourne si la zone muette sera dessinée
-
SetQuietZone(bool
quietZone ) — Spécifie de dessiner une zone muette autour du code-barres - GetMirror() — Retourne si le mode miroir est activé
-
SetMirror(bool
mirror ) — Spécifie de dessiner le code-barres en miroir - GetMask() — Retourne le masque choisi
-
SetMask(int
mask ) — Spécifie un masque plutôt que d'en calculer un -
SetQRSize(int
qrSize , boolqrMicro ) — Spécifie une taille à utiliser pour le code-barres
Méthodes de BCGBarcode2D
-
SetScaleX(int
scaleX ) — Spécifie la résolution du codes-barres en X -
SetScaleY(int
scaleY ) — Spécifie la résolution du codes-barres en Y
Méthodes de BCGBarcode
-
Parse(string
text ) — Analyse un messagetext pour dessiner par la suite -
Draw(Graphics
image ) — Dessine le code-barres sur l'imageimage -
GetDimension(int
width , intheight ) — Retourne un tableau concernant la taille de l'image requise - GetScale() — Retourne la résolution du code-barres
-
SetScale(int
scale ) — Fixe la résolution du code-barres - GetForegroundColor() — Retourne la couleur des barres
-
SetForegroundColor(BCGColor
color ) — Fixe la couleur des barres - GetBackgroundColor() — Retourne la couleur des espaces
-
SetBackgroundColor(BCGColor
color ) — Fixe la couleur des espaces -
SetColor(BCGColor
foregroundColor , BCGColorbackgroundColor ) — Fixe la couleur des barres et des espaces - GetOffsetX() — Retourne le décalage en X
-
SetOffsetX(int
value ) — Spécifie le décalage en X - GetOffsetY() — Retourne le décalage en Y
-
SetOffsetY(int
value ) — Spécifie le décalage en Y -
AddLabel(BCGLabel
label ) — Ajoute un texte qui accompagne le dessin -
RemoveLabel(BCGLabel
label ) — Supprime un texte qui accompagne le dessin - ClearLabels() — Supprime les textes qui accompagnent le dessin
Exemple de Code
var colorBlack = new BCGColor(Color.Black);
var colorWhite = new BCGColor(Color.White);
// Barcode Part
var code = new BCGqrcode();
code.SetScale(2);
code.SetForegroundColor(colorBlack);
code.SetBackgroundColor(colorWhite);
code.SetErrorLevel(1);
code.Parse("QRCode");
// Drawing Part
var drawing = new BCGDrawing(code, colorWhite);
var memoryStream = new MemoryStream();
await drawing
.FinishAsync(BCGDrawing.ImageFormat.Png, memoryStream);
Explications des Méthodes
-
GetErrorLevel()
—
Retourne le niveau d'erreur du code-barres
DescriptionRetourne le niveau de pourcentage de correction d'erreur.Retourne
int - valeur entre 0 et 3 -
SetErrorLevel(int
level ) — Fixe le niveau d'erreur du code-barresDescriptionIl s'agit du pourcentage de correction d'erreur défini avant de dessiner le code-barres.
Le niveau doit être un nombre entier de 0 à 3 ou les lettres correspondantes L, M, Q, H.
Le niveau d'erreur peut récupérer approximativement respectivement 7%, 15%, 25% et 30%.
La valeur par défaut est 1 (M). -
GetSize()
—
Retourne la taille du code-barres
DescriptionRetourne le code pour la taille du code-barres final.
Voyez aussi SetSize() pour plus de détails.Retourneint - constante définie àSetSize() -
SetSize(int
value ) — Fixe la taille du code-barresDescriptionLa taille du code-barres finale sera décidée automatiquement dépendamment du nombre de données que vous avez spécifié ainsi que le pourcentage de correction d'erreur à moins que vous spécifiez une valeur avec la méthodeSetQRSize() .
Vous pouvez spécifier différentes valeurs à cette méthode pour obtenir un code différent. Voici les valeurs possibles :
BCGqrcode.Size.Smallest : Le code sera le plus petit possible
BCGqrcode.Size.Micros : Le code sera en mode Micro
BCGqrcode.Size.Full : Le code sera en mode full
La valeur par défaut estBCGqrcode.Size.Full . -
SetStructuredAppend(int
snum , intst , stringsname ) — Spécifie que les données seront dispersées sur plusieurs codes-barresDescriptionLes données du code QRCode peuvent être séparées sur plusieurs codes-barres.
Le premier argument est le numéro du code-barres (commençant par 1), le deuxième argument est le nombre total de codes-barres que vous avez. Le dernier argument est un identifiant à votre groupe de code-barres. Celui-ci doit rester le même pour chaque code-barres.
La spécification indique que l'argument devrait être les données qui seront encodées sur tous les codes-barres.
Fournir une grande chaîne de caractères est extrêmement coûteux en termes de CPU. Rien ne vous empêche de fournir un identificateur différent si votre lecteur de codes-barres le supporte.
Il est possible d'encoder sur 16 codes-barres différents au maximum.Retournebool -true en cas de succès,false en cas d'échec -
GetFNC1()
—
Retourne si le FNC1 est activé
DescriptionRetourne si le FNC1 est activé.
Voyez aussi SetFNC1() pour plus de détails.Retourneint - constante définie àSetFNC1() -
SetFNC1(int
fnc1Type , stringfnc1Id ) — Transforme votre code-barres en standard GS1 ou AIMDescriptionCette méthode transformera votre code-barres pour accepter les FNC1 pour être au standard GS1 ou au standard AIM.
Le premier argument peut être :
-BCGqrcode.Fnc1.None : Le code ne suivra aucun standard.
-BCGqrcode.Fnc1.Gs1 : Le code suivra le standard GS1. Le second argument n'est pas utilisé. Séparez les identifiants GS1 par des %. Pour écrire un %, écrivez-le double %%.
-BCGqrcode.Fnc1.Aim : Le code suivra le standard AIM. Le second argument doit être utilisé, il s'agit de l'identificateur de l'application. Cela doit être une lettre (chaîne de caractères) ou 2 chiffres (entier).
La valeur par défaut estBCGqrcode.Fnc1.None . -
GetAcceptECI()
—
Retourne si les codes ECI sont acceptés
DescriptionRetourne si les codes ECI sont acceptés.
Voyez aussi SetAcceptECI() pour plus de détails.Retournebool -
SetAcceptECI(bool
accept ) — Spécifie d'accepter les codes ECIDescriptionEn mettanttrue à l'argument de cette méthode, les caractères antislash (ASCII 92 \) seront pris comme des caractères spéciaux. Voici les caractères spéciaux que vous pouvez écrire.
- \\ : Écrit un simple antislash
- \xxxxxx : Écrit le caractère ECI xxxxxx avec x pouvant varier de 0 à 9
La valeur par défaut est false. -
GetQuietZone()
—
Retourne si la zone muette sera dessinée
Retourne
bool -true si activé,false autrement -
SetQuietZone(bool
quietZone ) — Spécifie de dessiner une zone muette autour du code-barresDescriptionPour être lu correctement, le QRCode doit avoir une zone muette (quiet zone) autour de l'image. Vous pouvez cependant ne pas l'afficher.
La valeur par défaut est true. -
GetMirror()
—
Retourne si le mode miroir est activé
DescriptionRetourne si le mode miroir est activé.Retourne
bool -true si activé,false autrement -
SetMirror(bool
mirror ) — Spécifie de dessiner le code-barres en miroirDescriptionIl est possible de lire le code-barres en mode miroir. Si vous fixez cette variable à %1$s, le code-barres sera dessiné en miroir.
La valeur par défaut est false. -
GetMask()
—
Retourne le masque choisi
DescriptionRetourne le masque choisi.Retourne
int - valeur entre -1 et 8 -
SetMask(int
mask ) — Spécifie un masque plutôt que d'en calculer unDescriptionQRCode calcule 8 masques différents avant de dessiner le code. Un masque permet de changer l'apparence de votre code-barres afin qu'il soit lu plus facilement par votre lecteur de codes-barres. Des opérations mathématiques sont exécutées sur chaque masque pour vérifier lequel est le plus satisfaisant. Ces opérations sont extrêmement couteuses en termes de CPU. Si la vitesse de génération est importante pour vous, vous pourriez considérer de forcer un masque en particulier. Notez que votre code-barres peut devenir difficile ou impossible à lire.
Si votre code-barres est Micro, les valeurs valides pourmask sont 0 à 3.
Si votre code-barres est Complet, les valeurs valides pourmask sont 0 à 7.
Si vous spécifez -1, le masque sera choisi automatiquement.
La valeur par défaut est -1. -
SetQRSize(int
qrSize , boolqrMicro ) — Spécifie une taille à utiliser pour le code-barresDescriptionBarcode Bakery générera le plus petit code-barres basé sur les informations que vous fournissez.
Si vous souhaitez avoir une taille spécifique, vous pouvez la forcer avec cette méthode.
Le premier argument est la version du code-barres et le deuxième argument indique si vous souhaitez un mode Micro.
SiqrMicro est fixé àtrue , les valeurs valides pourqrSize sont 1 à 4.
SiqrMicro est fixé àfalse , les valeurs valides pourqrSize sont 1 à 40.
Si vous fixez -1, la taille du code-barres sera choisie automatiquement. Le deuxième argument n'est pas utilisé dans ce cas; si vous souhaitez avoir un mode Micro ou un mode Complet, voyez la méthodeSetSize() .
La valeur par défaut est -1.
-
SetScaleX(int
scaleX ) — Spécifie la résolution du codes-barres en XDescriptionLa largeur en pixel d'un module.
La valeur par défaut est 1.
Notez que cette méthode est protégée (protected). -
SetScaleY(int
scaleY ) — Spécifie la résolution du codes-barres en YDescriptionLa hauteur en pixel d'un module.
La valeur par défaut est 1.
Notez que cette méthode est protégée (protected).
-
Parse(string
text ) — Analyse un messagetext pour dessiner par la suiteDescriptionLes données que vous passez à l'argumenttext doivent être supportées par le type de code-barres que vous utilisez.
Référez-vous à l'introduction de chaque code-barres pour obtenir plus d'informations comment utiliser cette méthode pour chaque type de code-barres. -
Draw(Graphics
image ) — Dessine le code-barres sur l'imageimage DescriptionLa valeur de l'argumentimage doit être une image ressource. La taille de l'image peut être définie avec la valeur reçue deGetDimension() . -
GetDimension(int
width , intheight ) — Retourne un tableau concernant la taille de l'image requiseDescriptionRetourne un tableau dont le premier index est la largeur de l'image et le deuxième index est la hauteur de l'image.
Les arguments sont utilisés pour spécifier le point de départ du dessin. Ils devraient être 0.
La classeBCGDrawing utilise cette fonction pour créer la ressource d'image.Retournearray(int, int) - [0] étant la largeur, [1] étant la hauteur -
GetScale()
—
Retourne la résolution du code-barres
DescriptionRetourne la taille du code-barres. La valeur correspond à la "plus petite" unité exprimée en pixel.Retourne
int - valeur en pixels -
SetScale(int
scale ) — Fixe la résolution du code-barresDescriptionLe code-barres serax fois plus grand. Un pixel sera alors de taillex parx . -
GetForegroundColor()
—
Retourne la couleur des barres
DescriptionRetourne la couleur des barres du code-barres.Retourne
-
SetForegroundColor(BCGColor
color ) — Fixe la couleur des barres -
GetBackgroundColor()
—
Retourne la couleur des espaces
DescriptionRetourne la couleur des espaces du code-barres.Retourne
-
SetBackgroundColor(BCGColor
color ) — Fixe la couleur des espaces -
SetColor(BCGColor
foregroundColor , BCGColorbackgroundColor ) — Fixe la couleur des barres et des espacesDescriptionUne méthode plus rapide pour fixer la couleur de premier plan et de l'arrière-plan. Référez-vous àSetForegroundColor() etSetBackgroundColor() . -
GetOffsetX()
—
Retourne le décalage en X
DescriptionRetourne le décalage en X en pixel. Cette valeur n'est pas multipliée par la résolution.Retourne
int - valeur en pixels -
SetOffsetX(int
value ) — Spécifie le décalage en XDescriptionSpécifie le décalage en X du code-barres en pixel multiplié par la résolution. La taille requise retournée parGetDimension() sera modifiée en conséquence. -
GetOffsetY()
—
Retourne le décalage en Y
DescriptionRetourne le décalage en Y en pixel. Cette valeur n'est pas multipliée par la résolution.Retourne
int - valeur en pixels -
SetOffsetY(int
value ) — Spécifie le décalage en YDescriptionSpécifie le décalage en Y du code-barres en pixel multiplié par la résolution. La taille requise retournée parGetDimension() sera modifiée en conséquence. -
AddLabel(BCGLabel
label ) — Ajoute un texte qui accompagne le dessinDescriptionAjoute un objetBCGLabel au dessin. -
RemoveLabel(BCGLabel
label ) — Supprime un texte qui accompagne le dessinDescriptionSupprime un objetBCGLabel spécifique du graphique. -
ClearLabels()
—
Supprime les textes qui accompagnent le dessin
DescriptionSupprime tous les objets
BCGLabel du dessin.