private void InitializeDecoder(PhotoConfirmationCapturedEventArgs photoResult) { _image = new BitmapImage(); _reader = new ZXing.BarcodeReader(); Task.Run(delegate() { _reader.Options.TryHarder = false; _reader.TryInverted = false; _reader.AutoRotate = false; _image.SetSource(photoResult.Frame); ZXing.Result result = _reader.Decode(new WriteableBitmap(_image.PixelWidth, _image.PixelHeight)); if (result != null) { AddBarcodeToResults(result); } else { SetActivityMessage("No barcode detected", false); } }).ConfigureAwait(false).GetAwaiter().GetResult(); }
//</SnippetEnablePhotoConfirmation> //<SnippetPhotoConfirmationCaptured> void PhotoConfirmationCaptured(MediaCapture sender, PhotoConfirmationCapturedEventArgs args) { using (ManualResetEventSlim evt = new ManualResetEventSlim(false)) { CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async() => { try { WriteableBitmap bmp = new WriteableBitmap(unchecked ((int)args.Frame.Width), unchecked ((int)args.Frame.Height)); using (var istream = args.Frame.AsStream()) using (var ostream = bmp.PixelBuffer.AsStream()) { await istream.CopyStreamToAsync(ostream); } } finally { evt.Set(); } }); evt.Wait(); } }
private void MediaCapture_PhotoConfirmationCaptured(MediaCapture sender, PhotoConfirmationCapturedEventArgs args) { }
public AsyncPictureDecoderExtension(ScanResult result, PhotoConfirmationCapturedEventArgs photoResult) { this.result = result; InitializeDecoder(photoResult); }
private void MediaCapture_PhotoConfirmationCaptured(MediaCapture sender, PhotoConfirmationCapturedEventArgs args) { PhotoConfirmationCaptured?.Invoke(sender, args); }
private void captureTask_Completed(MediaCapture sender, PhotoConfirmationCapturedEventArgs e) { asyncPictureDecoder = new WindowsPhone8Demo.Extensions.AsyncPictureDecoderExtension(result, e); }
public AsyncPictureDecoderExtension(ScanResult result, PhotoConfirmationCapturedEventArgs photoResult) { this.result = result; InitializeDecoder(photoResult); }
private void InitializeDecoder(PhotoConfirmationCapturedEventArgs photoResult) { _image = new BitmapImage(); _reader = new ZXing.BarcodeReader(); Task.Run(delegate() { _reader.Options.TryHarder = false; _reader.TryInverted = false; _reader.AutoRotate = false; _image.SetSource(photoResult.Frame); ZXing.Result result = _reader.Decode(new WriteableBitmap(_image.PixelWidth, _image.PixelHeight)); if (result != null) { AddBarcodeToResults(result); } else { SetActivityMessage("No barcode detected", false); } }).ConfigureAwait(false).GetAwaiter().GetResult(); }