EFQRCodeは、透かし式またはアイコンを使用して様式化されたQRcode画像を生成し、QRCodeに触発された画像からQRCodeを認識するための軽量で純粋なスイフトライブラリです。 CoreGraphics 、 CoreImage 、およびImageIOに基づいて、efqrcodeは、iOS、macos、watchos、および/またはtvosに関係なく、アプリのqrcodeを処理するためのより良い方法を提供します。ココアポッド、カルタゴ、および/またはSwiftパッケージマネージャーを介してEFQRCodeを統合できます。
中文介绍
下のApp Storeボタンをクリックして、Demoをダウンロードしたり、iOS、TVOS、WatchOSをサポートしたりできます。
また、下のMac App Storeボタンをクリックして、MacOSのデモをダウンロードすることもできます。
プロジェクトのサンプルを手動で実行するには、リポジトリをクローン、デモは「Examples」フォルダーにあります。すべての依存関係を最初に取得するには、ターミナルでcommand sh Startup.shを覚えておいてから、xcodeでEFQRCode.xcworkspaceを開き、必要なターゲットを選択します。
または、端末で次のコマンドを実行できます。
git clone [email protected]:EFPrefix/EFQRCode.git ; cd EFQRCode ; sh Startup.sh ; open ' EFQRCode.xcworkspace ' | バージョン | ニーズ |
|---|---|
| 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は、cocoapodsから入手できます。インストールするには、次の行をPodfileに追加するだけです。
pod 'EFQRCode' , '~> 6.2.2'次に、次のコマンドを実行します。
$ pod install重要:この回避策は、CarthageがXcode 12でやや機能するために必要です。
Carthageは、依存関係を構築し、バイナリフレームワークを提供する分散型依存関係マネージャーです。
次のコマンドを使用して、HomeBrewでCarthageをインストールできます。
$ brew update
$ brew install carthage efqrcodeをCarthageを使用してXcodeプロジェクトに統合するには、 Cartfileで指定します。
github "EFPrefix/EFQRCode" ~> 6.2.2
carthage updateを実行してフレームワークを構築し、構築されたEFQRCode.frameworkをXcodeプロジェクトにドラッグします。
Swift Package Managerは、Swiftコードの配布を自動化するためのツールであり、Swiftコンパイラに統合されています。
Swiftパッケージをセットアップしたら、efqrcodeを依存関係として追加することは、 Package.swiftのdependencies値に追加するのと同じくらい簡単です。
dependencies: [
. package ( url : " https://github.com/EFPrefix/EFQRCode.git " , . upToNextMinor ( from : " 6.2.2 " ) )
] EFQRCODEモジュールを使用する場所でインポートします。
import EFQRCode単一のCGImageにいくつかのQRコードがある可能性があるため、文字列アレイが返されます。
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. " )
}
} QRコード画像、基本的な使用法を作成します。
| パラメーター | 説明 |
|---|---|
content | QRコードのコンテンツが必要です |
size | 画像の幅と高さ |
backgroundColor | qrcodeの背景色 |
foregroundColor | qrcodeの前景色 |
watermark | 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! " )
}結果:
EFQRCode.generateGIFを使用して、gif qrcodeを作成します。
| パラメーター | 説明 |
|---|---|
generator | 必須、他の設定を備えたEFQRCodeGeneratorインスタンス |
data | 必須、エンコードされた入力GIF |
delay | 出力QRCODE GIF遅延、放出されたことは、変化がないことを意味します |
loopCount | gifでループした時間は、放出されたことは変化を意味しません |
if let qrCodeData = EFQRCode . generateGIF (
using : generator , withWatermarkGIF : data
) {
print ( " Create QRCode image success. " )
} else {
print ( " Create QRCode image failed! " )
}デモからより多くの情報を入手できます。結果は次のようになります。
ユーザーガイドから詳細をご覧ください。
sizeを増やすか、 magnificationを使用してスケールアップします(代わりに)。IssueとPull request両方が大歓迎です。 PSのPS:このツールがあなたに役立つ場合は、 Starボタンをクリックしてください。ありがとう、QAQ ...
| プラットフォーム/言語 | リンク |
|---|---|
| Objective-C | https://github.com/z624821876/ysqrcode |
| Java | https://github.com/sumimakito/awesomeqrcode |
| JavaScript | https://github.com/sumimakito/awesome-qr.js |
| コトリン | https://github.com/sumimakito/awesomeqrcode-kotlin |
| Python | https://github.com/sylnsfar/qrcode |
このプロジェクトは、すでに私たちに貢献してくれたすべての人々のおかげで存在します。 [貢献する]
このプロジェクトがあなたに助けをもたらしたと思うなら、あなたは私に一杯のコーヒーを買うことができます。このプロジェクトが気に入っていて、その開発をさらにサポートすることをいとわない場合は、Open CollectiveのBackerになることを選択できます。すべての支援者に感謝します! [支援者になる]
デモプロジェクトとガイドの写真の一部は、インターネットから入手しています。正当な権利と利益の侵害がある場合は、削除するにはお問い合わせください。
EFQRCodeはMITライセンスで利用できます。詳細については、ライセンスファイルを参照してください。