Skip to content

Commit

Permalink
Added changelog, podspec. Updated readme, release notes and transition
Browse files Browse the repository at this point in the history
guide
  • Loading branch information
Cerovec committed Jul 28, 2015
1 parent 3d8a959 commit e79b52b
Show file tree
Hide file tree
Showing 5 changed files with 232 additions and 27 deletions.
89 changes: 89 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
## 1.0.0

- Changes in Direct processing API
- You are no longer required to call `PPCoordinator initializeRecognizers` and `PPCoordinator terminateRecognizers`.
- Instead, `initializeRecognizers` is called lazily on first call of `processImage` method.
- `terminateRecognizers` is called automatically in `PPCoordinator` destructor

- Added support for autorotation of `PPScanningViewController`. To support autorotation, use `PPScanningViewController`'s new properties `autorotate` and `supportedOrientations`

- Added `didOutputMetadata:` callback method to `PPOverlayViewControllers`

- Fixed bug which caused Overlay events to be called when direct API is used. Direct API now only reports events to `PPScanDelegate` instance.

- Fixed bug which caused image property of `PPImageMetadata` not take the image orientation into account

- `PPMetadataSettings` cleanup

- `PPApp` class no longer part of public API

## 0.9.6

- US passport scanning now has less confusions between characters 0 and O
- Fixes for French passport format
- Fixed timeout bug which manifested between consecutive scans

## 0.9.5

- Added Direct processing API

## 0.9.4

- Added support for defining region for scaninng in `PPMrtdRecognizerSettings`

- For example, with this code you can specify bottom 25% of the image will be used for MRZ scanning.

```objective-c
PPMrtdRecognizerSettings *mrtdSettings = [[PPMrtdRecognizerSettings alloc] init];
mrtdSettings.mrtdRoi = CGRectMake(0.0, 0.75, 1.0, 0.25);
[settings.scanSettings addRecognizerSettings:mrtdSettings];
```
## 0.9.3
- Added support for scanning UK Driver's license. To scan them, add PPUkdlRecognizerSettings to `settings.scanSettings`
```objective-c
[settings.scanSettings addRecognizerSettings:[[PPUkdlRecognizerSettings alloc] init]];
```

- To collect UKDL results, look for `PPUkdlRecognizerResult` object in `scanningViewController:didOutputResults:` callback

```objective-c
for (PPRecognizerResult *result in results) {
if ([result isKindOfClass:[PPUkdlRecognizerResult class]]) {
PPUkdlRecognizerResult* ukdlResult = (PPUkdlRecognizerResult*)result;
[self processUkdlResult:ukdlResult scanningViewController:scanningViewController];
}
}
```
- License key format is now changed. If you use license keys generated pior to this version, please contact us so we can generate you a new license key

- Methods and properties in `PPCoordinator` class which were not meant to be part of the public API are now hidden.

## 0.9.2

- Naming changes in API (see Transition guide)
- `PPBaseResult` renamed to `PPRecognizerResult`
- `PPBaseResult` subclasses renamed accordingly
- `PPOcrResult` renamed to `PPOcrLayout`

- Each `PPRecognizerResult` now has implemented `description` method for easier debugging

- Fixed orientation handling for case when overlay autorotates.

- Scanning region is now a property of Scanning view controller, and overlay view controller now delegates to this property.

## 0.9.1

- API consolidation, Bugfixes and improvements

## 0.9.0

- Initial documentation added

## 0.6.0

- Initial USDL and MRZ scanning
57 changes: 57 additions & 0 deletions PPBlinkID.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
Pod::Spec.new do |s|

s.name = "PPBlinkID"
s.version = "1.0.0"
s.summary = "A delightful component for barcode scanning"
s.homepage = "http://microblink.com"

s.description = <<-DESC
BlinkID SDK is a delightful component for quick and easy scanning of ID cards, passports and drivers licenses. The SDK is powered with [MicroBlink's](http://www.microblink.com) industry-proven and world leading OCR and barcode scanning technology, and offers:
- integrated camera management
- layered API, allowing everything from simple integration to complex UX customizations.
- lightweight and no internet connection required
- enteprise-level security standards
- data parsing from ID barcode standards
BlinkID is a part of family of SDKs developed by [MicroBlink](http://www.microblink.com) for optical text recognition, barcode scanning, ID document scanning and many others.
DESC

s.license = {
:type => 'commercial',
:text => <<-LICENSE
© 2013-2015 MicroBlink Ltd. All rights reserved.
LICENSE
}

s.authors = {
"MicroBlink" => "[email protected]",
"Jurica Cerovec" => "[email protected]"
}

s.source = {
:git => 'https://github.com/BlinkID/blinkid-ios.git',
:tag => 'v1.0.0'
}

s.preserve_paths = 'MicroBlink.embeddedframework/*'

s.platform = :ios

# ――― MULTI-PLATFORM VALUES ――――――――――――――――――――――――――――――――――――――――――――――――― #

s.ios.deployment_target = '6.0.0'
s.ios.source_files = 'MicroBlink.embeddedframework/MicroBlink.framework/Versions/A/Headers/*.{h}'
s.ios.header_dir = 'MicroBlink'
s.ios.public_header_files = "MicroBlink.embeddedframework/MicroBlink.framework/Versions/A/Headers/*.h"
s.ios.resources = "MicroBlink.embeddedframework/MicroBlink.framework/Versions/A/Resources/*.{strings,wav,png,zzip}"
s.ios.requires_arc = false

s.ios.xcconfig = {
'FRAMEWORK_SEARCH_PATHS' => '"$(PODS_ROOT)/PPBlinkID/MicroBlink.embeddedframework"'
}

s.ios.frameworks = 'MicroBlink'
s.ios.libraries = 'c++'

end
18 changes: 18 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,29 @@ BlinkID is a part of family of SDKs developed by [MicroBlink](http://www.microbl
- [Generate](https://microblink.com/login?url=/customer/generatedemolicence) a **free demo license key** to start using the SDK in your app (registration required)
- [Contact us](http://www.microblink.com) to get pricing info
- Check out the [comprehensive documentation](http://cocoadocs.org/docsets/PPBlinkID/) of all APIs available in PDF417.mobi SDK
- If you're using CocoaPods, you can easily try our sample apps by running the following command in your terminal window:

```shell
pod try PPBlinkID
```

### Installation with CocoaPods

[CocoaPods](http://cocoapods.org) is a dependency manager for Objective-C, which automates and simplifies the process of using 3rd-party libraries like BlinkID in your projects. See the ["Getting Started" guide for more information](https://github.com/BlinkID/blinkid-ios/wiki/Getting-started).

#### Podfile

```ruby
platform :ios, '6.0'
pod 'PPBlinkID', '~> 1.0.0'
```

## Requirements

SDK package contains MicroBlink framework and one or more sample apps which demonstrate framework integration. Framework can be deployed on iOS 6.0 or later, iPhone 3GS or newer and iPad 2 or newer.

SDK performs significantly better when the images obtained from the camera are focused. Because of that, the SDK can have lower perfomance on iPad 2 and iPod Touch 4th gen devices, which [don't have camera with autofocus](http://www.adweek.com/socialtimes/ipad-2-rear-camera-has-tap-for-auto-exposure-not-auto-focus/12536).

## Important documents:

### ["Getting started" guide](https://github.com/BlinkID/blinkid-ios/wiki/Getting-started)
Expand Down
45 changes: 35 additions & 10 deletions Release notes.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,22 @@
## 1.0.0

- Changes in Direct processing API
- You are no longer required to call `PPCoordinator initializeRecognizers` and `PPCoordinator terminateRecognizers`.
- Instead, `initializeRecognizers` is called lazily on first call of `processImage` method.
- `terminateRecognizers` is called automatically in `PPCoordinator` destructor

- Added support for autorotation of `PPScanningViewController`. To support autorotation, use `PPScanningViewController`'s new properties `autorotate` and `supportedOrientations`

- Added `didOutputMetadata:` callback method to `PPOverlayViewControllers`

- Fixed bug which caused Overlay events to be called when direct API is used. Direct API now only reports events to `PPScanDelegate` instance.

- Fixed bug which caused image property of `PPImageMetadata` not take the image orientation into account

- `PPMetadataSettings` cleanup

- `PPApp` class no longer part of public API

## 0.9.6

- US passport scanning now has less confusions between characters 0 and O
Expand All @@ -14,25 +33,31 @@

- For example, with this code you can specify bottom 25% of the image will be used for MRZ scanning.

PPMrtdRecognizerSettings *mrtdSettings = [[PPMrtdRecognizerSettings alloc] init];
mrtdSettings.mrtdRoi = CGRectMake(0.0, 0.75, 1.0, 0.25);
[settings.scanSettings addRecognizerSettings:mrtdSettings];
```objective-c
PPMrtdRecognizerSettings *mrtdSettings = [[PPMrtdRecognizerSettings alloc] init];
mrtdSettings.mrtdRoi = CGRectMake(0.0, 0.75, 1.0, 0.25);
[settings.scanSettings addRecognizerSettings:mrtdSettings];
```
## 0.9.3
- Added support for scanning UK Driver's license. To scan them, add PPUkdlRecognizerSettings to `settings.scanSettings`
[settings.scanSettings addRecognizerSettings:[[PPUkdlRecognizerSettings alloc] init]];
```objective-c
[settings.scanSettings addRecognizerSettings:[[PPUkdlRecognizerSettings alloc] init]];
```

- To collect UKDL results, look for `PPUkdlRecognizerResult` object in `scanningViewController:didOutputResults:` callback

for (PPRecognizerResult *result in results) {
if ([result isKindOfClass:[PPUkdlRecognizerResult class]]) {
PPUkdlRecognizerResult* ukdlResult = (PPUkdlRecognizerResult*)result;
[self processUkdlResult:ukdlResult scanningViewController:scanningViewController];
}
```objective-c
for (PPRecognizerResult *result in results) {
if ([result isKindOfClass:[PPUkdlRecognizerResult class]]) {
PPUkdlRecognizerResult* ukdlResult = (PPUkdlRecognizerResult*)result;
[self processUkdlResult:ukdlResult scanningViewController:scanningViewController];
}
}
```
- License key format is now changed. If you use license keys generated pior to this version, please contact us so we can generate you a new license key

Expand Down
50 changes: 33 additions & 17 deletions Transition guide.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,45 @@
### Transition to 1.0.0

- If you're using direct API, just delete all calls to `PPCoordinator initializeRecognizers` and `PPCoordinator terminateRecognizers`. These calls are now performed internally

- `rotatedImage` property of `PPImageMetadata` no longer exists. Use `image` property instead, it correctly handles rotation.

- `PPApp` class is no longer a part of the API.

- `PPMetadataSettings` was cleaned up - use the alternative names provided listed in the header file.

## 0.9.6

- No changes

## 0.9.5

- No changes

## 0.9.4

- No changes

### Transition to 0.9.3

- This version uses a new license key format. If you had a license key generated prior to v0.9.3, contact us so we can regenerate the lincense key for you.

- UK Driver's license support added. To scan them, add PPUkdlRecognizerSettings to `settings.scanSettings`

[settings.scanSettings addRecognizerSettings:[[PPUkdlRecognizerSettings alloc] init]];
```objective-c
[settings.scanSettings addRecognizerSettings:[[PPUkdlRecognizerSettings alloc] init]];
```
- To collect UKDL results, look for `PPUkdlRecognizerResult` object in `scanningViewController:didOutputResults:` callback
for (PPRecognizerResult *result in results) {
if ([result isKindOfClass:[PPUkdlRecognizerResult class]]) {
PPUkdlRecognizerResult* ukdlResult = (PPUkdlRecognizerResult*)result;
[self processUkdlResult:ukdlResult scanningViewController:scanningViewController];
}
```objective-c
for (PPRecognizerResult *result in results) {
if ([result isKindOfClass:[PPUkdlRecognizerResult class]]) {
PPUkdlRecognizerResult* ukdlResult = (PPUkdlRecognizerResult*)result;
[self processUkdlResult:ukdlResult scanningViewController:scanningViewController];
}
}
```

- `PPCoordinator` class now exposes fewer public methods and properties.

Expand All @@ -22,16 +48,6 @@
- Classes representing scanning results were renamed. Renaming was performed to match naming convention of `PPRecognizerSettings` hierarcy: now each `PPRecognizerSettings` class has it's matching `PPRecognizerResult`. Replace all existing references to old class names with the new ones:

- `PPBaseResult` was renamed to `PPRecognizerResult`.

- `PPOcrScanResult` was renamed to `PPOcrRecognizerResult`, this is the result of a recognizer whose settings are given with `PPOcrRecognizerSettings.`

- `PPCroResult` renamed to `PPCroRecognizerResult`. This is a common superclass to `PPCroSlipRecognizerResult`, `PPCroPdf417RecognizerResult` and `PPCroQrRecognizerResult`.

- `PPCroSlipResult` renamed to `PPCroSlipRecognizerResult`, this is the result of a recognizer whose settings are given with `PPCroSlipRecognizerSettings.`

- `PPCroBarcodeResult` renamed to `PPCroPdf417RecognizerResult`, this is the result of a recognizer whose settings are given with `PPCroPdf417RecognizerSettings.`

- Introduced `PPCroQrRecognizerResult`, this is the result of a recognizer whose settings are given with `PPCroQrRecognizerSettings.`

- `PPOcrResult` (class representing a result of the OCR process, with individual characters, lines and blocks), was renamed to `PPOcrLayout`. Name change was introduced to further distinguish the class from `PPRecognizerResult` classes.

Expand Down

0 comments on commit e79b52b

Please sign in to comment.