# EFQRCode **Repository Path**: venetocode/EFQRCode ## Basic Information - **Project Name**: EFQRCode - **Description**: EFQRCode 是一个轻量级的、用来生成和识别二维码的纯 Swift 库,可根据输入的水印图和图标产生艺术二维码,基于 CoreGraphics、CoreImage 和 ImageIO 进行开发。EFQRCode 为你提供了一种更好的在你的 App 中操作二维码的方式,它能够运行于 iOS、macOS、watchOS 和 tvOS 平台,并且支持通过 CocoaPods、Carthage 和 Swift Package Manager 获取。 - **Primary Language**: Swift - **License**: MIT - **Default Branch**: main - **Homepage**: https://github.com/EFPrefix/EFQRCode - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 6 - **Created**: 2025-01-06 - **Last Updated**: 2025-01-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 
EFQRCode 是一个轻量级的、用来生成和识别二维码的纯 Swift 库,可根据输入的水印图和图标产生艺术二维码,基于 `CoreGraphics`、`CoreImage` 和 `ImageIO` 进行开发。EFQRCode 为你提供了一种更好的在你的 App 中操作二维码的方式,它能够运行于 iOS、macOS、watchOS 和 tvOS 平台,并且支持通过 CocoaPods、Carthage 和 Swift Package Manager 获取。本项目受 [qrcode](https://github.com/sylnsfar/qrcode) 启发。 > [English Introduction](https://github.com/EFPrefix/EFQRCode/blob/main/README.md) ## 概述 ||| :---------------------:|:---------------------:|:---------------------:|:---------------------: ||| ## 示例 ### 应用商店 你可以点击下方的 App Store 按钮从应用商店下载示例程序,支持 iOS、tvOS 和 watchOS:
#### 4. 动态二维码
可通过 EFQRCode 的类方法 `generateGIF` 来创建 GIF 二维码,使用方式如下:
|参数|作用描述|
|-:|:-|
|`generator`|[**必填**] 一个用来获取设置的 `EFQRCodeGenerator` 对象|
|`data`|[**必填**] 输入的 GIF 图片的数据|
|`delay`|输出的动态 QRCode 的帧间延时,默认从输入的 GIF 图片获取|
|`loopCount`|输出的动态 QRCode 的循环次数,默认从输入的 GIF 图片获取|
```swift
if let qrCodeData = EFQRCode.generateGIF(
using: generator, withWatermarkGIF: data
) {
print("Create QRCode image success.")
} else {
print("Create QRCode image failed!")
}
```
你可以通过查看 Demo 代码的方式来获取更多信息,结果预览:
#### 5. 接下来
查看 [用户手册](https://github.com/EFPrefix/EFQRCode/blob/main/USERGUIDE_CN.md) 了解更多细节。
您也可以查看下列非官方的使用说明:
- [不用请设计师,你也能做出个性二维码:EFQRCode](https://sspai.com/post/43211)
- [想更优雅地分享 Wi-Fi 密码,只需一枚二维码](https://sspai.com/post/43097)
## 备注
1. 请选用对比度较高的前景色和背景色组合;
2. 想要提高生成二维码的清晰度可以选择使用 `magnification` 替代 `size`,或适当提高它们的数值;
3. 放大倍数过高/边长过大/二维码内容过多可能会导致生成失败;
4. 建议对生成的二维码进行测试后投入使用,例如微信能够扫描成功并不代表支付宝也能成功扫描,请务必根据您的具体业务需要做有针对性的测试;
5. 若有任何问题,期待得到您的反馈,`Issue` 和 `Pull request` 都是受欢迎的。
备注的备注:好用的话可以给个`星星`,蟹蟹,QAQ...
## 其它平台/语言
平台/语言|链接
:-------------------------|:-------------------------
Objective-C|[https://github.com/z624821876/YSQRCode](https://github.com/z624821876/YSQRCode)
Java|[https://github.com/SumiMakito/AwesomeQRCode](https://github.com/SumiMakito/AwesomeQRCode)
JavaScript|[https://github.com/SumiMakito/Awesome-qr.js](https://github.com/SumiMakito/Awesome-qr.js)
Kotlin|[https://github.com/SumiMakito/AwesomeQRCode-Kotlin](https://github.com/SumiMakito/AwesomeQRCode-Kotlin)
Python|[https://github.com/sylnsfar/qrcode](https://github.com/sylnsfar/qrcode)
## 贡献者
这个项目的存在多亏了所有贡献的人。[[参与贡献](https://github.com/EFPrefix/EFQRCode/blob/main/.github/CONTRIBUTING.md)]
- 感谢 JetBrains 的 [开源支持计划](https://www.jetbrains.com/community/opensource/?from=EFQRCode) 对本项目的帮助。