QR.flutter est une bibliothèque Flutter pour un rendu de code QR simple et rapide via un widget ou un peintre personnalisé.
Veuillez ne pas soumettre de problème pour un "comment puis-je ..?" ou "Quel est le problème ..?" Type Question. Ils seront à peu près fermés instantanément. Si vous avez des questions, veuillez les poser sur le tableau des discussions ou sur Stack Overflow. Ils y verront une réponse.
L'utilisation de problèmes crée une grande quantité de bruit et entraîne des problèmes réels qui se fixent plus lentement.
Compatibilité de la version : 4.0.0+ prend en charge la sécurité nul et nécessite une version de Flutter qui est compatible. Si vous utilisez une version incompatible de Flutter, veuillez utiliser une version 3.x de cette bibliothèque.
Vous devez ajouter ce qui suit à votre fichier pubspec.yaml :
dependencies :
qr_flutter : ^4.1.0 Remarque : Si vous utilisez la chaîne master Flutter, si vous rencontrez des problèmes de construction ou si vous souhaitez essayer le dernier et le meilleur, vous devez utiliser la branche master et non une version de version spécifique. Pour ce faire, utilisez la configuration suivante dans votre pubspec.yaml :
dependencies :
qr_flutter :
git :
url : https://github.com/theyakka/qr.flutter Gardez à l'esprit que la branche master pourrait être instable.
Après avoir ajouté la dépendance à votre pubspec.yaml , vous pouvez exécuter: flutter packages get ou mettez à jour vos packages à l'aide de votre IDE.
Pour commencer, importez la dépendance dans votre code:
import 'package:qr_flutter/qr_flutter.dart' ;Ensuite, pour rendre un code QR de base, vous pouvez utiliser le code suivant (ou quelque chose comme celui-ci):
QrImageView (
data : '1234567890' ,
version : QrVersions .auto,
size : 200.0 ,
),Selon vos exigences de données, vous souhaiterez peut-être modifier la sortie du code QR. Les options suivantes sont disponibles:
| Propriété | Taper | Description |
|---|---|---|
version | int | QrVersions.auto ou une valeur comprise entre 1 et 40. Voir http://www.qrcode.com/en/about/version.html pour les limitations et les détails. |
errorCorrectionLevel | int | Une valeur définie sur QrErrorCorrectLevel . EG: QrErrorCorrectLevel.L . |
size | double | La taille (carrée) de l'image. Si cela n'est pas donné, la taille automatique de la taille la plus courte. |
padding | Pondérations | Rembourrage entourant les données du code QR. |
backgroundColor | Couleur | La couleur d'arrière-plan (par défaut n'est pas). |
eyeStyle | Qreyestyle | Configure la forme et la couleur du code QR (Corners '). |
dataModuleStyle | Qrdatamodulestyle | Configure la forme et la couleur des points. |
gapless | bool | Ajoute une taille de pixel supplémentaire pour éviter les lacunes (la valeur par défaut est vraie). |
errorStateBuilder | QRERRORBUILDER | Vous permet d'afficher un Widget d'état d'erreur dans le cas où une erreur a rendu le code QR (par exemple: la version est trop faible, l'entrée est trop longue, etc.). |
constrainErrorBounds | bool | Si c'est vrai, le Widget d'erreur sera limité au carré que le code QR allait être dessiné. Si faux, le Widget d'état d'erreur se développera / rétrécira à la taille dont il a besoin. |
embeddedImage | ImageProvider | Un ImageProvider qui définit une image à superposée au centre du code QR. |
embeddedImageStyle | Qremeddedimagestyle | Propriétés pour coiffer l'image intégrée. |
embeddedImageEmitsError | bool | Si elle est vraie, tout échec à charger l'image embarquée déclenchera l' errorStateBuilder ou rendra un Container vide. Si faux, le code QR sera rendu et l'image intégrée sera ignorée. |
semanticsLabel | Chaîne | semanticsLabel sera utilisé par les lecteurs d'écran pour décrire le contenu du code QR. |
borderRadius | double | Réglage de l'arrondissement du coin pour les types de forme QrEyeShape.square , QrDataModuleShape.square , EmbeddedImageShape.square . Définir les styles appropriés. |
roundedOutsideCorners | bool | Si cela est vrai, les coins extérieurs des données sont arrondis. Réglé sur QrDataModuleStyle . Arrondi à borderRadius par défaut. Seulement QrDataModuleShape.square . |
outsideBorderRadius | double | Il est réglé si l'arrondi extérieur outsideBorderRadius Borderradius devrait différer de la borderRadius intérieure. Pas plus que borderRadius . Seulement QrDataModuleShape.square |
gradient | Pente | Changer la couleur unie du code en un dégradé, par exemple LinearGradient . |
safeArea | bool | Si elle est vraie, les données sont cachées derrière l' embeddedImage . Réglé sur QrEmbeddedImageStyle . |
safeAreaMultiplier | double | Taille safeArea multiplicatrice. |
Il existe une application Flutter simple et fonctionnelle dans le répertoire /example . Vous pouvez l'utiliser pour jouer avec toutes les options.
De plus, les exemples suivants vous donnent un aperçu rapide de la façon d'utiliser la bibliothèque.
Un code QR de base ressemblera à quelque chose:
QrImageView (
data : 'This is a simple QR code' ,
version : QrVersions .auto,
size : 320 ,
gapless : false ,
)Un code QR avec une image (à partir des actifs de votre application) ressemblera à:
QrImageView (
data : 'This QR code has an embedded image as well' ,
version : QrVersions .auto,
size : 320 ,
gapless : false ,
embeddedImage : AssetImage ( 'assets/images/my_embedded_image.png' ),
embeddedImageStyle : QrEmbeddedImageStyle (
size : Size ( 80 , 80 ),
),
)Pour afficher un état d'erreur dans le cas où le code QR ne peut pas être validé:
QrImageView (
data : 'This QR code will show the error state instead' ,
version : 1 ,
size : 320 ,
gapless : false ,
errorStateBuilder : (cxt, err) {
return Container (
child : Center (
child : Text (
'Uh oh! Something went wrong...' ,
textAlign : TextAlign .center,
),
),
);
},
)Un code QR avec des coins intérieurs et extérieurs et une zone sûre de l'image intégrée:
QrImageView (
data : 'London is the capital of Great Britain' ,
version : QrVersions .auto,
size : 320 ,
eyeStyle : const QrEyeStyle (
borderRadius : 10 ,
),
dataModuleStyle : const QrDataModuleStyle (
borderRadius : 5 ,
roundedOutsideCorners : true ,
),
embeddedImage : AssetImage ( 'assets/images/my_embedded_image.png' ),
embeddedImageStyle : QrEmbeddedImageStyle (
size : Size . square ( 40 ),
color : Colors .white,
safeArea : true ,
safeAreaMultiplier : 1.1 ,
embeddedImageShape : EmbeddedImageShape .square,
borderRadius : 10 ,
),
)Un code QR avec gradient:
QrImageView (
data : 'Rainbow after the rain' ,
version : QrVersions .auto,
size : 320 ,
gradient : LinearGradient (
begin : Alignment .bottomLeft,
end : Alignment .topRight,
colors : [
Color ( 0xffff0000 ),
Color ( 0xffffa500 ),
Color ( 0xffffff00 ),
Color ( 0xff008000 ),
Color ( 0xff0000ff ),
Color ( 0xff4b0082 ),
Color ( 0xffee82ee ),
],
),
)Merci à Kevin Moore pour sa superbe bibliothèque QR - Dart. C'est le cœur de cette bibliothèque.
Pour les informations d'auteur / contributeur, consultez le fichier AUTHORS .
QR.Fluffer est libéré sous une licence BSD-3. Voir LICENSE pour plus de détails.