You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+17-17Lines changed: 17 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,18 +2,18 @@
2
2
3
3
## What is this?
4
4
5
-
Acx.Forms.Barcode is a **Xamarin.Forms view for scanning barcodes**[based on](https://github.com/rebuy-de/rb-forms-barcode)
6
-
It provides continuous scanning, aims to give high control to the user combined with high stability.
5
+
Acx.Forms.Barcode is a **Xamarin.Forms view for scanning barcodes**that are based on [based on RB.Forms.Barcode](https://github.com/rebuy-de/rb-forms-barcode)
6
+
It provides continuous scanning and aims to give high control to the user along with high stability.
7
7
8
-
[Available via Nuget](https://www.nuget.org/packages/Acx.Forms.Barcode), full of awesomeness and also unicorns.
8
+
[Available via Nuget](https://www.nuget.org/packages/Acx.Forms.Barcode), full of awesomeness and unicorns.
9
9
10
10
**Please note** that the library currently supports Android and iOS.
11
11
12
12
We are very eager about your feedback, so do not hesitate to create an issue or feel free to improve our code via a contribution.
13
13
14
14
### Features
15
15
16
-
* Fully Xamarin.Forms compatible. Add elements on top and adapt the ui to your needs.
16
+
* Fully Xamarin.Forms compatible. Add elements on top and adapt the UI to your needs.
17
17
* Lots of configuration options, bindable properties and events: Torch control, rotation support, preview freezing and other fine grained controls.
18
18
* Build for continuous scanning!
19
19
* Utilizing [Google Play Services Vision API](https://developers.google.com/vision/) on Android for best possible barcode scanning performance.
@@ -26,7 +26,7 @@ We are very eager about your feedback, so do not hesitate to create an issue or
26
26
4. Add the registration call `BarcodeScannerRenderer.Init();` to your platform specific Main class.
27
27
4. Use the `BarcodeScanner` class in your c# or xaml code.
28
28
29
-
Example Android implementation of the Init call:
29
+
Example of Android implementation of the Init call:
1. Create an instance of the `BarcodeScanner` class. Dont forget to give it a height and width.
71
+
1. Create an instance of the `BarcodeScanner` class. Don't forget to give it a height and width.
72
72
2. Register an EventHandler for the `BarcodeScanner.BarcodeChanged` event to receive the detected barcodes.
73
73
74
-
For a hands-on experience it is recommended to [take a look at the sample application](#sample).
74
+
For a hands-on experience, it is recommended to [take a look at the sample application](#sample).
75
75
76
76
### Please note
77
77
78
-
**Since beta 0.5.0** the library only handles the most basic camera controls. The scanning starts as soon as the element is visible on screen and stops when the view element gets removed from the stack.
78
+
**Since beta 0.5.0**, the library only handles the most basic camera controls. The scanning starts as soon as the element is visible on the screen and stops when the view element gets removed from the stack.
79
79
80
-
Given the complexity of apps there are a lot of combinations that prevent a reasonable automatic control of the camera. For example when [sleeping](Sample/Sample.Pcl/Pages/ScannerPage.xaml.cs#L18)/[resuming](Sample/Sample.Pcl/Pages/ScannerPage.xaml.cs#L19) the device, when the [page gets disposed](Sample/Sample.Pcl/Pages/ScannerPage.xaml.cs#L74-L76) without notifying the view or another page get pushed onto the stack.
80
+
Given the complexity of apps, there are a lot of combinations that prevent a reasonable automatic control of the camera. For example, when [sleeping](Sample/Sample.Pcl/Pages/ScannerPage.xaml.cs#L18)/[resuming](Sample/Sample.Pcl/Pages/ScannerPage.xaml.cs#L19) the device, when the [page gets disposed](Sample/Sample.Pcl/Pages/ScannerPage.xaml.cs#L74-L76) without notifying the view or another page get pushed onto the stack.
81
81
82
-
Thats why you should weave in camera control code into the logic of your app by utilizing the offered bindings. Not doing so might lead to bad performance or unexpected camera exceptions.
82
+
That's why you should weave in camera control code into the logic of your app by utilizing the offered bindings. Not doing so might lead to bad performance or unexpected camera exceptions.
83
83
84
84
Android Do's:
85
85
86
86
* Disable the preview when you add a page to the navigation stack.
87
87
* Disable the camera when the page gets removed from the stack.
88
88
* Disable the camera when sleeping the device.
89
-
* Ensure that only one instance at at time is active.
89
+
* Ensure that only one instance currently is active.
90
90
91
91
### Bindable properties and events
92
92
@@ -95,22 +95,22 @@ All events are also available as `Command`s, the appropriate fields are suffixed
95
95
What | Type | Description
96
96
---- | ---- | -----------
97
97
`BarcodeScanner.BarcodeChanged` | EventHandler | Raised only when the barcode text changes.
98
-
`BarcodeScanner.BarcodeDecoded` | EventHandler | Raised every time when a barcode is decoded from the preview, even if the value is the same as the previews one.
98
+
`BarcodeScanner.BarcodeDecoded` | EventHandler | Raised every time when a barcode is decoded from the preview, even if the value is the same as the preview one.
99
99
`BarcodeScanner.PreviewActivated` | EventHandler | Raised after the preview image gets active.
100
100
`BarcodeScanner.PreviewDeactivated` | EventHandler | Raised after the preview image gets deactivated.
101
101
`BarcodeScanner.CameraOpened` | EventHandler | Raised after the camera was obtained.
102
102
`BarcodeScanner.CameraReleased` | EventHandler | Raised after the camera was released.
103
103
`BarcodeScanner.Barcode` | Property | Holds the value of the last found barcode.
104
104
`BarcodeScanner.IsEnabled` | Property | If `true` opens the camera and activates the preview. `false` deactivates the preview and releases the camera.
105
-
`BarcodeScanner.PreviewActive` | Property | If `true` the preview image gets updated. `false` no preview for you!
105
+
`BarcodeScanner.PreviewActive` | Property | If `true` the preview image gets updated. `false`means no preview for you!
106
106
`BarcodeScanner.BarcodeDecoder` | Property | If `true` the decoder is active and tries to decode barcodes out of the image. `false` turns the decoder off, the preview is still active but barcodes will not be decoded.
107
107
`BarcodeScanner.Torch` | Property | Controls the camera flashlight if available and accessible. `true` sets the camera to torch mode (always on), `false` turns the flashlight off.
108
108
109
109
### Configuration
110
110
111
111
Configuration can be applied by passing a `Configuration` object to the `BarcodeScannerRenderer.Init()` method. As the available options are platform specific, the configuration has to be done in the according platform solution. The corresponding [Android](Acx.Forms.Barcode.Droid/Configuration.cs) class documentation should give you a solid understanding of the available options.
112
112
113
-
By default the compatibility mode is enabled to ensure the highest device compatibility.
113
+
The compatibility mode is enabled to ensure the highest device compatibility by default.
114
114
115
115
Simple example:
116
116
@@ -123,7 +123,7 @@ Simple example:
123
123
124
124
### Debugging
125
125
126
-
Acx.Forms.Barcode provides you with a tremendous amount of debug information, so check your application log if anything goes wrong:
126
+
Acx.Forms.Barcode provides you with a tremendous amount of debug information, so check your application logs if anything goes wrong:
0 commit comments