コード例 #1
0
        private async void ImageA_Clicked(object sender, EventArgs e)
        {
            try
            {
                var file = await CrossFilePicker.Current.PickFile();

                if (file == null)
                {
                    return;
                }
                //byte[] byteArray = null;
                // GET A PIC STREAM FROM CROSSFILEPICKER
                Stream fileData = file.GetStream();
                //GET AN IMAGE SOURCE FROM LOCAL FILES
                //ImageSource imgSource = ImageSource.FromResource(@"MasterDetailDemo.Resources.Drawable.about.png");
                //GET STREAM FROM IMAGESOURCE FOR LOCAL FILES
                //Stream stream = ImgConverter.GetStreamFromImageSource(imgSource);
                //GET STREAM FROM IMAGE SOURCE
                //Stream stream = ImgConverter.GetStreamFromImageSource(this.ImageA.Source);
                // CONVERT STREAM TO BYTE[]
                byte[] byteArray = ImgConverter.GetByteArrayFromStream(fileData);
                // READ QR CODE DATA FROM PICS
                string result = DependencyService.Get <IZxingService>().GetDecodedValue(byteArray);
                ResultText.Text = result;
                HandleResult(result);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
            }
        }