我们扫描
我们扫描让您轻松地将扫描功能添加到iOS应用中!它模仿了UIImagePickerController
,使用起来非常方便。
特性
- 快速且轻量级
- 实时文档扫描
- 编辑检测到的矩形
- 自动扫描和闪光灯支持
- 支持PDF和UIImage
- 翻译为英语、简体中文、意大利语、葡萄牙语和法语
- 批量扫描
示例
需求
- Swift 5.0
- iOS 10.0+
安装
Cocoapods
CocoaPods 是 Cocoa 项目的依赖管理器。
要使用 CocoaPods 将 WeScan 集成到您的 Xcode 项目中,请在您的 Podfile
中指定它
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!
target '<Your Target Name>' do
pod 'WeScan', '>= 0.9'
end
然后,运行以下命令
$ pod install
Carthage
Carthage 是一个去中心化的依赖管理器,它构建您的依赖并提供二进制框架。
要使用 Carthage 将 WeScan 集成到您的 Xcode 项目中,请在您的 Cartfile
中指定它
github "WeTransfer/WeScan" >= 0.9
运行 carthage update
命令来构建框架,并将构建好的 WeScan.framework
拖到您的 Xcode 项目中。
手动
只需下载项目,将 “WeScan” 文件夹拖到您的项目中。
只需在项目的嵌入式二进制和链接框架和库中添加 WeScan 框架。
使用方法
Swift
-
为了使框架可用,在 Swift 源代码文件顶部添加
import WeScan
-
在 Info.plist 中添加
NSCameraUsageDescription
键,并设置适当的值,您在此必须告知用户允许相机权限的原因 -
确保您的视图控制器符合
ImageScannerControllerDelegate
协议
class YourViewController: UIViewController, ImageScannerControllerDelegate {
// YourViewController code here
}
- 在您的视图控制器中实现代理函数
func imageScannerController(_ scanner: ImageScannerController, didFailWithError error: Error) {
// You are responsible for carefully handling the error
print(error)
}
func imageScannerController(_ scanner: ImageScannerController, didFinishScanningWithResults results: ImageScannerResults) {
// The user successfully scanned an image, which is available in the ImageScannerResults
// You are responsible for dismissing the ImageScannerController
scanner.dismiss(animated: true)
}
func imageScannerControllerDidCancel(_ scanner: ImageScannerController) {
// The user tapped 'Cancel' on the scanner
// You are responsible for dismissing the ImageScannerController
scanner.dismiss(animated: true)
}
- 最后,在视图控制器中的某处创建并显示一个
ImageScannerController
实例
let scannerViewController = ImageScannerController()
scannerViewController.imageScannerDelegate = self
present(scannerViewController, animated: true)
- 在你的项目中创建一个空的 Swift 类。当 Xcode 询问是否要创建桥接头文件时,请按“创建桥接头文件”
- 在新的头文件中,添加你想要使用 WeScan 的 Objective-C 类(
#import myClass.h
)
- 在你的类中,导入头文件(
import <yourProjectName.swift.h>
)
- 将 WeScan 文件夹拖放到项目中以添加
- 在你的类中添加
@Class ImageScannerController;
ImageScannerController *scannerViewController = [[ImageScannerController alloc] init];
[self presentViewController:scannerViewController animated:YES completion:nil];
#import myClass.h
)import <yourProjectName.swift.h>
)@Class ImageScannerController;
ImageScannerController *scannerViewController = [[ImageScannerController alloc] init];
[self presentViewController:scannerViewController animated:YES completion:nil];
作为此项目的创建者和维护者,我们很乐意邀请贡献者帮助我们保持最新的更新。请花点时间审查一下 贡献文件,以便使贡献过程变得简单而有效。
- 如果您 发现了 bug,请打开一个 issue。
- 如果您 有功能请求,请打开一个 issue。
- 如果您 想要做出贡献,提交一个 pull request。
WeScan 在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。