private void OnResultsObtained(RGLDocReaderAction action, RGLDocumentReaderResults result, NSError error) { DocReaderScannerEvent readerScannerEvent = null; if (action == RGLDocReaderAction.Complete) { if (result == null) { readerScannerEvent = new DocReaderScannerEvent() { IsSuccess = false, Error = "Document Reader results is empty" }; } else { if (IsReadRfid) { ReadRfid(); } else { readerScannerEvent = GenerateDocReaderScannerEvent(result); } } } if (readerScannerEvent != null) { ResultsObtained(this, readerScannerEvent); } }
private DocReaderScannerEvent GenerateDocReaderScannerEvent(RGLDocumentReaderResults result) { DocReaderScannerEvent readerScannerEvent = new DocReaderScannerEvent() { IsSuccess = true }; var name = result.GetTextFieldValueByType(RGLFieldType.Surname_And_Given_Names); if (!System.String.IsNullOrEmpty(name)) { readerScannerEvent.SurnameAndGivenNames = name; } // through all available text fields foreach (var textField in result.TextResult.Fields) { var value = result.GetTextFieldValueByType(textField.FieldType, textField.Lcid); if (value != null) { Console.WriteLine("Field type name: {0}, value: {1}", textField.FieldName, value); } } using (var portraitImage = result.GetGraphicFieldImageByType(RGLGraphicFieldType.Portrait)) { if (portraitImage != null) { readerScannerEvent.PortraitField = ConvertImage(portraitImage); } } using (var documentImage = result.GetGraphicFieldImageByType(RGLGraphicFieldType.DocumentImage, RGLResultType.RawImage)) { if (documentImage != null) { readerScannerEvent.DocumentField = ConvertImage(documentImage); } } return(readerScannerEvent); }