EFQRCODE ist eine leichte, reine Swift-Bibliothek zur Erzeugung stilisierter QRCode-Bilder mit Wasserzeichen oder Symbol und zum Erkennen von QRCode aus Bildern, inspiriert von QRCode. Basierend auf CoreGraphics , CoreImage und ImageIO bietet EFQRCode Ihnen eine bessere Möglichkeit, QRCode in Ihrer App zu verarbeiten, egal ob es sich um iOS, macOS, watchos und/oder tvOS handelt. Sie können EFQRCode über Cocoapods, Karthago und/oder Swift -Paketmanager integrieren.
中文介绍
Sie können unten auf den App Store -Button klicken, um Demo, IOS, TVOS und WATCHOS zu unterstützen:
Sie können auch auf die Schaltfläche Mac App Store unten klicken, um Demo für macOS herunterzuladen:
Um das Beispielprojekt manuell auszuführen, klonen Sie das Repo, Demos befinden sich im Ordner "Beispiele". Denken Sie daran, den Befehl sh Startup.sh in der Terminal zu erstellen, um zuerst alle Abhängigkeiten zu erhalten, und öffnen Sie dann EFQRCode.xcworkspace mit Xcode und wählen Sie das gewünschte Ziel aus, das Sie ausführen möchten.
Oder Sie können den folgenden Befehl in Terminal ausführen:
git clone [email protected]:EFPrefix/EFQRCode.git ; cd EFQRCode ; sh Startup.sh ; open ' EFQRCode.xcworkspace ' | Version | Bedürfnisse |
|---|---|
| 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 ist über Cocoapods erhältlich. Um es zu installieren, fügen Sie einfach die folgende Zeile zu Ihrem Podfile hinzu:
pod 'EFQRCode' , '~> 6.2.2'Führen Sie dann den folgenden Befehl aus:
$ pod installWichtig : Diese Problemumgehung ist erforderlich, damit Karthago in Xcode 12 etwas funktioniert.
Karthago ist ein dezentraler Abhängigkeitsmanager, der Ihre Abhängigkeiten erstellt und Ihnen binäre Rahmenbedingungen bietet.
Sie können Carthago mit Homebrew mit dem folgenden Befehl installieren:
$ brew update
$ brew install carthage Um EFQRCode mit Karthago in Ihr Xcode -Projekt zu integrieren, geben Sie diese in Ihrem Cartfile an:
github "EFPrefix/EFQRCode" ~> 6.2.2
Führen Sie carthage update aus, um das Framework zu erstellen und den erstellten EFQRCode.framework in Ihr Xcode -Projekt zu ziehen.
Der Swift -Paket -Manager ist ein Tool zur Automatisierung der Verteilung des Swift -Codes und ist in den Swift -Compiler integriert.
Sobald Sie Ihr Swift -Paket eingerichtet haben, ist das Hinzufügen von EFQRCode als Abhängigkeit so einfach wie das Hinzufügen zum dependencies Ihres Package.swift .
dependencies: [
. package ( url : " https://github.com/EFPrefix/EFQRCode.git " , . upToNextMinor ( from : " 6.2.2 " ) )
] Importieren Sie das EFQRCode -Modul, wo Sie es verwenden möchten:
import EFQRCode Ein String -Array wird zurückgegeben, da in einem einzelnen CGImage mehrere QR -Codes vorhanden sind:
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. " )
}
} Erstellen Sie das QR -Code -Bild, grundlegende Verwendung:
| Parameter | Beschreibung |
|---|---|
content | Erforderlich , Inhalt des QR -Codes |
size | Breite und Bildhöhe |
backgroundColor | Hintergrundfarbe von QRCode |
foregroundColor | Vordergrundfarbe von QRCode |
watermark | Hintergrundbild von 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! " )
}Ergebnis:
Verwenden Sie EFQRCode.generateGIF , um GIF -QRCode zu erstellen.
| Parameter | Beschreibung |
|---|---|
generator | Erforderlich , eine EFQRCodeGenerator -Instanz mit anderen Einstellungen |
data | Erforderlich , codierte Eingabe GIF |
delay | Ausgabe qrcode GIF -Verzögerung, emittiert bedeutet keine Änderung |
loopCount | Times in GIF geschaltet, emittiert bedeutet keine Veränderung |
if let qrCodeData = EFQRCode . generateGIF (
using : generator , withWatermarkGIF : data
) {
print ( " Create QRCode image success. " )
} else {
print ( " Create QRCode image failed! " )
}Sie können weitere Informationen von der Demo erhalten. Das Ergebnis wird Folgendes mögen:
Erfahren Sie mehr vom Benutzerhandbuch.
size oder skalieren Sie sie mit magnification (Stattdessen).Issue als auch Pull request sind willkommen. PS von PS: Ich wünschte, Sie können auf die Star klicken, wenn dieses Tool für Sie nützlich ist, danke, QAQ ...
| Plattformen/Sprachen | Link |
|---|---|
| Ziel-C | https://github.com/z624821876/ysqrcode |
| Java | https://github.com/sumimakito/awesomeqrcode |
| JavaScript | https://github.com/sumimakito/awesome-qr.js |
| Kotlin | https://github.com/sumimakito/awesomeqrcode-kotlin |
| Python | https://github.com/sylnsfar/qrcode |
Dieses Projekt besteht dank aller Personen, die bereits bei uns beigetragen haben. [Beitragen]
Wenn Sie der Meinung sind, dass dieses Projekt Ihnen Hilfe gebracht hat, können Sie mir eine Tasse Kaffee kaufen. Wenn Sie dieses Projekt mögen und bereit sind, seine Entwicklung weiter zu unterstützen, können Sie sich dafür entscheiden, Backer im offenen Kollektiv zu werden. Vielen Dank an alle unsere Unterstützer! [Backer werden]
Ein Teil der Bilder im Demo -Projekt und im Leitfaden stammen aus dem Internet. Wenn Ihre legitimen Rechte und Interessen verletzt werden, kontaktieren Sie uns bitte, um zu löschen.
E -Mail: [email protected]
EFQRCODE ist unter der MIT -Lizenz verfügbar. Weitere Informationen finden Sie in der Lizenzdatei.