public static async Task <string> GetRecognizeTextOperationResultsFromFile(string imageLocation, string computerVisionKey) { var cogSvcUrl = visionEndPoint + "vision/v2.0/recognizeText?mode=Printed"; HttpClient client = new HttpClient(); client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", computerVisionKey); HttpResponseMessage response; byte[] byteData = GetImageAsByteArray(imageLocation); using (ByteArrayContent content = new ByteArrayContent(byteData)) { content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); response = await client.PostAsync(cogSvcUrl, content); } RecognizeTextResult results = null; if (response.IsSuccessStatusCode) { var data = await response.Content.ReadAsStringAsync(); results = JsonConvert.DeserializeObject <RecognizeTextResult>(data); } var headers = response.Headers; var locationHeaders = response.Headers.GetValues("Operation-Location"); string locationAddress = ""; IEnumerable <string> values; if (headers.TryGetValues("Operation-Location", out values)) { locationAddress = values.First(); } return(locationAddress); }
public static async Task <RecognizeTextResult> GetRecognizeTextOperationResults(string locationAddress, string computerVisionKey) { var client = new HttpClient(); client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", computerVisionKey); var response = await client.GetAsync(locationAddress); RecognizeTextResult results = null; if (response.IsSuccessStatusCode) { var data = await response.Content.ReadAsStringAsync(); results = JsonConvert.DeserializeObject <RecognizeTextResult>(data); } return(results); }
private async Task DisplayText(RecognizeTextResult results) { var sb = new StringBuilder(); sb.Append("Status: "); sb.Append(results.Status); sb.Append("\r\n\r\n"); var lines = results.RecognitionResult.Lines; foreach (Line line in lines) { sb.Append(line.Text); sb.Append("\r\n"); } ResultsTextbox.Text = sb.ToString(); }
private async void GetTextButton_Click(object sender, EventArgs e) { RecognizeTextResult results = await TextService.GetRecognizeTextOperationResults(_locationAddress, _computerVisionKey); await DisplayText(results); }