All Projects → EFPrefix → Efqrcode

EFPrefix / Efqrcode

Licence: mit
A better way to operate QR Code in Swift, support iOS, macOS, watchOS and tvOS.

Programming Languages

swift
15916 projects
objective c
16641 projects - #2 most used programming language
ruby
36898 projects - #4 most used programming language
shell
77523 projects
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Efqrcode

barcode-server
Barcode Server for Barcode Client-Server android application
Stars: ✭ 40 (-99.03%)
Mutual labels:  qrcode, barcode, qrcode-scanner, qrcode-reader, barcode-scanner
barcode-detector
Spec compliant polyfill of the Barcode Detection API 🤳
Stars: ✭ 31 (-99.25%)
Mutual labels:  qrcode, barcode, qrcode-scanner, qrcode-reader, barcode-scanner
ai barcode
Barcode generation,Barcode scanning,qrcode,qrcode generation,qrcode creator,flutter barcode,flutter qrcode,support android iOS web platform
Stars: ✭ 99 (-97.6%)
Mutual labels:  barcode-generator, qrcode-scanner, qrcode-generator, qrcode-reader, barcode-scanner
BarcodeReader
Simple multi-format barcode reader for Windows
Stars: ✭ 26 (-99.37%)
Mutual labels:  qrcode, barcode, qrcode-scanner, qrcode-reader, barcode-scanner
barcode scan2
[reborned barcode_scan] A flutter plugin for reading 2D barcodes and QR codes.
Stars: ✭ 43 (-98.96%)
Mutual labels:  qrcode, barcode, qrcode-scanner, qrcode-reader, barcode-scanner
Czxing
C++ port of ZXing and ZBar for Android.
Stars: ✭ 854 (-79.28%)
Mutual labels:  qrcode-generator, qrcode-scanner, qrcode, barcode
Qr Code Scanner
📠 A simple, fast and useful progressive web application
Stars: ✭ 982 (-76.17%)
Mutual labels:  qrcode-scanner, barcode-scanner, qrcode, barcode
android-zbar-sdk
🔗 android-zbar-sdk, provide jni source, so file and jar file used alone, gradle/maven remote dependencies.
Stars: ✭ 311 (-92.45%)
Mutual labels:  qrcode, barcode, qrcode-scanner, barcode-scanner
Barcodescanner.xf
Barcode Scanner using GoogleVision API for Xamarin Form
Stars: ✭ 82 (-98.01%)
Mutual labels:  qrcode-scanner, barcode-scanner, qrcode, barcode
Scannermapp
A QR-code and barcode acanner app built in Delphi using ZXing and TFrameStand
Stars: ✭ 65 (-98.42%)
Mutual labels:  qrcode-scanner, barcode-scanner, qrcode, barcode
Zxinglite
🔥 ZXing的精简版,优化扫码和生成二维码/条形码,内置闪光灯等功能。扫描风格支持:微信的线条样式,支付宝的网格样式。几句代码轻松拥有扫码功能 ,ZXingLite让集成更简单。(扫码识别速度快如微信)
Stars: ✭ 2,117 (-48.63%)
Mutual labels:  qrcode-scanner, barcode-scanner, qrcode, barcode
Swiftscan
A barcode and qr code scanner( 二维码/条形码扫描、生成,仿微信、支付宝)
Stars: ✭ 293 (-92.89%)
Mutual labels:  qrcode-generator, qrcode-scanner, qrcode, barcode
BGAQRCode-Android
QRCode 扫描二维码、扫描条形码、相册获取图片后识别、生成带 Logo 二维码、支持微博微信 QQ 二维码扫描样式
Stars: ✭ 7,714 (+87.19%)
Mutual labels:  qrcode, qrcode-scanner, qrcode-generator
flutter qr code scanner generator sharing
Flutter App For Scanning, Generating, Sharing QR Code
Stars: ✭ 137 (-96.68%)
Mutual labels:  qrcode, qrcode-scanner, qrcode-generator
qrrs
CLI QR code generator and reader written in rust
Stars: ✭ 29 (-99.3%)
Mutual labels:  qrcode, qrcode-scanner, qrcode-generator
QRCode
A QRCode Generator in Swift
Stars: ✭ 67 (-98.37%)
Mutual labels:  qrcode, qrcodes, qrcode-generator
qrcodescan.in
📠 A simple, fast, and useful progressive web application.
Stars: ✭ 144 (-96.51%)
Mutual labels:  qrcode, qrcode-scanner, qrcodes
qikQR
minimal desktop app to create QR codes.
Stars: ✭ 20 (-99.51%)
Mutual labels:  qrcode, qrcode-generator, qrcode-reader
quagga2-reader-qr
Quagga2 sample external reader for QR codes
Stars: ✭ 20 (-99.51%)
Mutual labels:  qrcode, qrcode-scanner, qrcode-reader
qr-code-unity-3d-read-generate
Generating a QR code / Scanning a QR code in Unity 3D. Pre-build DLL and sample code from old Unity
Stars: ✭ 70 (-98.3%)
Mutual labels:  qrcode, qrcode-scanner, qrcode-generator

Compatible with all Platforms

EFQRCode is a lightweight, pure-Swift library for generating stylized QRCode images with watermark or icon, and for recognizing QRCode from images, inspired by qrcode. Based on CoreGraphics, CoreImage, and ImageIO, EFQRCode provides you a better way to handle QRCode in your app, no matter if it is on iOS, macOS, watchOS, and/or tvOS. You can integrate EFQRCode through CocoaPods, Carthage, and/or Swift Package Manager.

中文介绍

Examples

Demo Projects

TestFlight

You can click the TestFlight button below to download demo with TestFlight:

App Store

You can click the App Store button below to download demo, support iOS, tvOS and watchOS:

You can also click the Mac App Store button below to download demo for macOS:

Compile Demo Manually

To run the example project manually, clone the repo, demos are in the 'Examples' folder, remember run command sh Startup.sh in terminal to get all dependencies first, then open EFQRCode.xcworkspace with Xcode and select the target you want, run.

Or you can run the following command in terminal:

git clone [email protected]:EFPrefix/EFQRCode.git; cd EFQRCode; sh Startup.sh; open 'EFQRCode.xcworkspace'

Requirements

Version Needs
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+
latest Swift
iOS 9.0+ / macOS 10.10+ / tvOS 9.0+ / watchOS 2.0+

Installation

CocoaPods

EFQRCode is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'EFQRCode', '~> 6.2.0'

Then, run the following command:

$ pod install

Carthage

IMPORTANT: this workaround is necessary for Carthage to somewhat work in Xcode 12.

Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.

You can install Carthage with Homebrew using the following command:

$ brew update
$ brew install carthage

To integrate EFQRCode into your Xcode project using Carthage, specify it in your Cartfile:

github "EFPrefix/EFQRCode" ~> 6.2.0

Run carthage update to build the framework and drag the built EFQRCode.framework into your Xcode project.

Swift Package Manager

The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the Swift compiler.

Once you have your Swift package set up, adding EFQRCode as a dependency is as easy as adding it to the dependencies value of your Package.swift.

dependencies: [
    .package(url: "https://github.com/EFPrefix/EFQRCode.git", .upToNextMinor(from: "6.2.0"))
]

Quick Start

1. Import EFQRCode

Import EFQRCode module where you want to use it:

import EFQRCode

2. Recognition

A String Array is returned as there might be several QR Codes in a single 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.")
    }
}

3. Generation

Create QR Code image, basic usage:

Parameter Description
content REQUIRED, content of QR Code
size Width and height of image
backgroundColor Background color of QRCode
foregroundColor Foreground color of QRCode
watermark Background image of 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!")
}

Result:

4. Generation from GIF

Use EFQRCode.generateGIF to create GIF QRCode.

Parameter Description
generator REQUIRED, an EFQRCodeGenerator instance with other settings
data REQUIRED, encoded input GIF
delay Output QRCode GIF delay, emitted means no change
loopCount Times looped in GIF, emitted means no change
if let qrCodeData = EFQRCode.generateGIF(
    using: generator, withWatermarkGIF: data
) {
    print("Create QRCode image success.")
} else {
    print("Create QRCode image failed!")
}

You can get more information from the demo, result will like this:

5. Next

Learn more from User Guide.

Recommendations

  1. Please select a high contrast foreground and background color combinations;
  2. To improve the definition of QRCode images, increase size, or scale up using magnification (instead);
  3. Magnification too high/size too large/contents too long may cause failure;
  4. It is recommended to test the QRCode image before put it into use;
  5. You can contact me if there is any problem, both Issue and Pull request are welcome.

PS of PS: I wish you can click the Star button if this tool is useful for you, thanks, QAQ...

Other Platforms/Languages

Platforms/Languages Link
Objective-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

Contributors

This project exists thanks to all the people who contribute. [Contribute]

PS: We use QRCodeSwift to generate QR code on watchOS, thanks to ApolloZhu.

Donations

If you think this project has brought you help, you can buy me a cup of coffee. If you like this project and are willing to provide further support for it's development, you can choose to become Backer or Sponsor in Open Collective.

Backers

Thank you to all our backers! 🙏 [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

Thanks for your support, 🙏

Thanks

Apps using EFQRCode

Other

Part of the pictures in the demo project and guide come from the internet. If there is any infringement of your legitimate rights and interests, please contact us to delete.

Contact

Email: [email protected]

License

EFQRCode is available under the MIT license. See the LICENSE file for more info.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].