EFQRCODE est une bibliothèque légère et pure-swift pour générer des images QRCODE stylisées avec un filigrane ou une icône, et pour reconnaître QRCode à partir d'images, inspirée par QRCODE. Basé sur CoreGraphics , CoreImage et ImageIO , EFQRCODE vous fournit un meilleur moyen de gérer QRCode dans votre application, peu importe si elle se trouve sur iOS, MacOS, WatchOS et / ou TVOS. Vous pouvez intégrer EFQRCODE via Cocoapods, Carthage et / ou Swift Package Manager.
中文介绍
Vous pouvez cliquer sur le bouton App Store ci-dessous pour télécharger la démo, prendre en charge iOS, TVOS et Watchos:
Vous pouvez également cliquer sur le bouton Mac App Store ci-dessous pour télécharger la démo pour macOS:
Pour exécuter l'exemple du projet manuellement, clonez le repo, les démos sont dans le dossier 'Exemples', n'oubliez pas d'exécuter la commande sh Startup.sh dans le terminal pour obtenir toutes les dépendances en premier, puis ouvrez EFQRCode.xcworkspace avec xcode et sélectionnez la cible que vous souhaitez, exécutez.
Ou vous pouvez exécuter la commande suivante dans le terminal:
git clone [email protected]:EFPrefix/EFQRCode.git ; cd EFQRCode ; sh Startup.sh ; open ' EFQRCode.xcworkspace ' | Version | Besoins |
|---|---|
| 1.x | Xcode 8.0+ Swift 3.0+ iOS 8.0+ / macOs 10.11+ / tvos 9.0+ |
| 4.x | Xcode 9.0+ Swift 4.0+ iOS 8.0+ / macOs 10.11+ / tvos 9.0+ / watchos 2.0+ |
| 5.x | Xcode 11.1+ Swift 5.0+ iOS 8.0+ / macOs 10.11+ / tvos 9.0+ / watchos 2.0+ |
| 6.x | Xcode 12.0+ iOS 9.0+ / macOs 10.10+ / tvos 9.0+ / watchos 2.0+ |
EFQRCODE est disponible via Cocoapods. Pour l'installer, ajoutez simplement la ligne suivante à votre podfile:
pod 'EFQRCode' , '~> 6.2.2'Ensuite, exécutez la commande suivante:
$ pod installImportant : cette solution de contournement est nécessaire pour que Carthage fonctionne quelque peu dans Xcode 12.
Carthage est un gestionnaire de dépendances décentralisé qui construit vos dépendances et vous fournit des cadres binaires.
Vous pouvez installer Carthage avec Homebrew en utilisant la commande suivante:
$ brew update
$ brew install carthage Pour intégrer EFQRCODE dans votre projet Xcode à l'aide de Carthage, spécifiez-le dans votre Cartfile :
github "EFPrefix/EFQRCode" ~> 6.2.2
Exécutez carthage update pour construire le cadre et faites glisser le EFQRCode.framework construit dans votre projet Xcode.
Le Swift Package Manager est un outil pour automatiser la distribution du code SWIFT et est intégré dans le compilateur Swift.
Une fois que vous avez configuré votre package SWIFT, l'ajout d'efqrcode en tant que dépendance est aussi simple que de l'ajouter à la valeur dependencies de votre Package.swift .
dependencies: [
. package ( url : " https://github.com/EFPrefix/EFQRCode.git " , . upToNextMinor ( from : " 6.2.2 " ) )
] Importez le module efqrcode où vous souhaitez l'utiliser:
import EFQRCode Un tableau de chaînes est renvoyé car il pourrait y avoir plusieurs codes QR dans un seul CGImage :
if let testImage = UIImage ( named : " test.png " ) ? . cgImage {
let codes = EFQRCode . recognize ( testImage )
if !codes . isEmpty {
print ( " There are ( codes . count ) codes " )
for (index , code ) in codes . enumerated ( ) {
print ( " The content of QR Code ( index ) is ( code ) . " )
}
} else {
print ( " There is no QR Codes in testImage. " )
}
} Créer l'image du code QR, utilisation de base:
| Paramètre | Description |
|---|---|
content | Requis , contenu du code QR |
size | Largeur et hauteur de l'image |
backgroundColor | Couleur d'arrière-plan de QRCODE |
foregroundColor | Couleur de premier plan de QRCODE |
watermark | Image d'arrière-plan de QRCODE |
if let image = EFQRCode . generate (
for : " https://github.com/EFPrefix/EFQRCode " ,
watermark : UIImage ( named : " WWF " ) ? . cgImage
) {
print ( " Create QRCode image success ( image ) " )
} else {
print ( " Create QRCode image failed! " )
}Résultat:
Utilisez EFQRCode.generateGIF pour créer GIF QRCODE.
| Paramètre | Description |
|---|---|
generator | Requis , une instance EFQRCodeGenerator avec d'autres paramètres |
data | GIF d'entrée obligatoire et codé |
delay | SORTIE QRCODE GIF DELAGE, émis signifie aucun changement |
loopCount | Fois en boucle en gif, émis signifie aucun changement |
if let qrCodeData = EFQRCode . generateGIF (
using : generator , withWatermarkGIF : data
) {
print ( " Create QRCode image success. " )
} else {
print ( " Create QRCode image failed! " )
}Vous pouvez obtenir plus d'informations à partir de la démo, le résultat aimera ceci:
En savoir plus sur le guide de l'utilisateur.
size ou évoluer en utilisant magnification (à la place);Issue et Pull request sont les bienvenues. PS de PS: Je souhaite que vous puissiez cliquer sur le bouton Star si cet outil vous est utile, merci, QAQ ...
| Plates-formes / langues | Lien |
|---|---|
| Objectif-c | https://github.com/z624821876/ysqrcode |
| Java | https://github.com/sumimakito/awesomeqrcode |
| Javascrip | https://github.com/sumimakito/aweson-qr.js |
| Kotlin | https://github.com/sumimakito/awesomeqrcode-kotlin |
| Python | https://github.com/sylnsfar/qrcode |
Ce projet existe grâce à toutes les personnes qui ont déjà contribué à nous. [Contribuer]
Si vous pensez que ce projet vous a apporté de l'aide, vous pouvez m'acheter une tasse de café. Si vous aimez ce projet et que vous êtes prêt à fournir un soutien supplémentaire à son développement, vous pouvez choisir de devenir Backer dans Open Collective. Merci à tous nos bailleurs de fonds! [Devenez un bailleur de fonds]
Une partie des images du projet et du guide de démonstration provient d'Internet. S'il y a une violation de vos droits et intérêts légitimes, veuillez nous contacter pour supprimer.
Courriel: [email protected]
EFQRCODE est disponible sous la licence MIT. Voir le fichier de licence pour plus d'informations.