private async void OnAnalyzeText(object sender, EventArgs e)
        {
            if (_photo == null)
            {
                return;
            }
            EnableAllButtons(false);
            try
            {
                RecognitionResult result = await ComputerVision.MakeTextRequest(_photo);

                ActivityIndicator.IsRunning = false;
                if (result == null)
                {
                    await DisplayAlert("Text Result", "No text found", "OK");

                    return;
                }

                var text = new StringBuilder();
                foreach (var line in result.Lines)
                {
                    text.AppendLine(string.Join(" ", line.Text));
                }
                await DisplayAlert("Text Result", text.ToString(), "OK");
            }
            catch (Exception ex)
            {
                await DisplayAlert("Text Error", ex.Message, "OK");
            }
            finally
            {
                EnableAllButtons(true);
            }
        }
        private async void OnAnalyzeOcr(object sender, EventArgs e)
        {
            if (_photo == null)
            {
                return;
            }
            EnableAllButtons(false);
            try
            {
                OcrResult result = await ComputerVision.MakeOcrRequest(_photo);

                ActivityIndicator.IsRunning = false;
                if ((result?.Regions.Count ?? 0) == 0)
                {
                    await DisplayAlert("OCR Result", "No text found", "OK");

                    return;
                }

                var text = new StringBuilder();
                foreach (var region in result.Regions)
                {
                    foreach (var line in region.Lines)
                    {
                        text.AppendLine(string.Join(" ", line.Words.Select(w => w.Text)));
                    }
                    text.AppendLine();
                }

                await DisplayAlert("OCR Result", text.ToString(), "OK");
            }
            catch (Exception ex)
            {
                await DisplayAlert("OC Error", ex.Message, "OK");
            }
            finally
            {
                EnableAllButtons(true);
            }
        }
        private async void OnAnalyzePhoto(object sender, EventArgs e)
        {
            if (_photo == null)
            {
                return;
            }
            EnableAllButtons(false);
            try
            {
                ImageAnalysis analysis = await ComputerVision.MakeAnalysisRequest(_photo);

                ActivityIndicator.IsRunning = false;
                await DisplayAlert("Image Analysis", analysis?.Description.Captions.FirstOrDefault()?.Text, "OK");
            }
            catch (Exception ex)
            {
                await DisplayAlert("Analysis Error", ex.Message, "OK");
            }
            finally
            {
                EnableAllButtons(true);
            }
        }