/// <summary>
 /// 二维码解码
 /// </summary>
 /// <param name="filePath">图片路径</param>
 /// <returns></returns>
 public static string CodeDecoder(string filePath)
 {
     if (string.IsNullOrEmpty(filePath))
     {
         throw new ArgumentNullException(filePath);
     }
     try
     {
         if (!File.Exists(filePath))
         {
             return(null);
         }
         var myBitmap      = new Bitmap(Image.FromFile(filePath));
         var decoder       = new QRCodeDecoder();
         var decodedString = decoder.decode(new QRCodeBitmapImage(myBitmap));
         return(decodedString);
     }
     catch (IOException ioex)
     {
         throw ioex;
     }
     catch
     {
         throw;
     }
 }
Exemple #2
0
        /// <summary>
        /// 识别二维码图片中的信息
        /// </summary>
        /// <param name="img"></param>
        /// <returns></returns>
        public static string FromQRCode(Bitmap img)
        {
            QRCodeDecoder decoder       = new QRCodeDecoder();
            String        decodedString = decoder.decode(new QRCodeBitmapImage(img), Encoding.Default);

            return(decodedString);
        }
Exemple #3
0
        private void qrDecode_Click(object sender, EventArgs e)
        {
            using (OpenFileDialog ofd1 = new OpenFileDialog())
            {
                try
                {
                    ofd1.Filter        = @"JPEG files|*.jpg;*.jpeg;";
                    ofd1.ValidateNames = true;
                    ofd1.Multiselect   = false;
                    if (ofd1.ShowDialog() == DialogResult.OK)
                    {
                        qrPicture.Image = Image.FromFile(ofd1.FileName);
                        QRCodeDecoder decoder = new QRCodeDecoder();

                        string password        = qrSecret.Text;
                        string encryptedstring = decoder.Decode(new QRCodeBitmapImage(qrPicture.Image as Bitmap));
                        string decryptedstring = StringCipher.Decrypt(encryptedstring, password);
                        qrOutput.Text = decryptedstring;
                    }
                }
                catch
                {
                    MessageBox.Show("An error in the decoding has occurred!");
                    Environment.Exit(0);
                }
            }
        }
Exemple #4
0
 /// <summary>
 /// Расшифровка QR-code
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void decryptQRcode_Click(object sender, EventArgs e)
 {
     try
     {
         String decrStr = String.Empty;
         if (QRcode.Image != null)
         {
             QRCodeDecoder QRdecoder = new QRCodeDecoder();
             decrStr = QRdecoder.Decode(new QRCodeBitmapImage(QRcode.Image as Bitmap));
         }
         else
         {
             MessageBox.Show("Загрузите QR-code для расшифровки", "Предупреждение", MessageBoxButtons.OK, MessageBoxIcon.Information);
             return;
         }
         if (decrStr.Equals(String.Empty))
         {
             MessageBox.Show("Ошибка расшифровки", "Предупреждение", MessageBoxButtons.OK, MessageBoxIcon.Information);
             return;
         }
         generText.Text = decrStr;
     }
     catch (Exception ex)
     {
         MessageBox.Show("Ошибка подключения", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
         return;
     }
     //MessageBox.Show(decrStr, "Расшифровка", MessageBoxButtons.OK, MessageBoxIcon.Information);
 }
        public string DecodeQRCode(Image img)
        {
            QRCodeDecoder decoder       = new QRCodeDecoder();
            String        decodedString = decoder.decode(new QRCodeBitmapImage(new Bitmap(img)));

            return(decodedString);
        }
Exemple #6
0
        /// <summary>
        /// 解析二维码
        /// </summary>
        /// <param name="bitmap">要解析的二维码位图</param>
        /// <returns>解析后的字符串</returns>
        public static string QRCodeDecoderUtil(Bitmap bitmap)
        {
            QRCodeDecoder decoder       = new QRCodeDecoder();
            string        decodedString = decoder.decode(new QRCodeBitmapImage(bitmap), Encoding.UTF8);//指定utf-8编码, 支持中文

            return(decodedString);
        }
Exemple #7
0
        /// <summary>
        /// analysis QRCode
        /// </summary>
        /// <param name="bitmap">QRCode Bitmap should be analysis</param>
        /// <returns>content of QRCode</returns>
        private static string QRCodeDecoderUtil(Bitmap bitmap)
        {
            QRCodeDecoder decoder       = new QRCodeDecoder();
            string        decodedString = decoder.decode(new QRCodeBitmapImage(bitmap), Encoding.UTF8);//Use UTF-8 to support chinese

            return(decodedString);
        }
        /// <summary>
        /// 返回二维码定义的字符串
        /// </summary>
        public static string Decode(Bitmap image)
        {
            var qrCodeBitmapImage = new QRCodeBitmapImage(image);
            var qrCodeDecoder     = new QRCodeDecoder();

            return(qrCodeDecoder.decode(qrCodeBitmapImage));;
        }
Exemple #9
0
        private void button3_Click(object sender, EventArgs e)
        {
            QRCodeDecoder decoder = new QRCodeDecoder();                                                // создаём новое раскодирование qr-кода
            string        s       = decoder.decode(new QRCodeBitmapImage(pictureBox1.Image as Bitmap)); //добавляем в стринговскую переменную s результат раскодирования изображения из pictureBox1

            if (textBox1.Text == s)                                                                     //если строка, которую введёт пользователь, равна раскодированной с pictureBox1 строке.
            {
                this.Height         = 101;                                                              //уменьшаем высоту окна формы до изначальной
                pictureBox1.Visible = !pictureBox1.Visible;                                             //скрываем pictureBox1
                label2.Visible      = !label2.Visible;                                                  //показываем текст "Вы успешно авторизировались".
            }
            else //иначе
            {
                MessageBox.Show("Вы ввели неверное число. Авторизируйтесь заново."); //появится MessageBox с данным сообщением
                this.Height         = 101;                                           //уменьшаем высоту окна формы до изначальной
                pictureBox1.Visible = !pictureBox1.Visible;                          //скрываем pictureBox1
                button1.Visible     = !button1.Visible;                              //отображаем кнопку "Авторизироваться", чтобы начать авторизацию заново, пользователю снова придётся её нажать, и снова сработает код из button1_Click
                Random        rand    = new Random();                                //снова создаём генератор рандомных чисел и переводим это число в изображение qr-кода
                int           i       = rand.Next(100000, 999999);
                string        qrimage = Convert.ToString(i);
                QRCodeEncoder encoder = new QRCodeEncoder();
                Bitmap        qrcode  = encoder.Encode(qrimage);
                pictureBox1.Image = qrcode as Image;
                textBox1.Text     = ""; //стираем прошлое значение, которое заносил в textBox пользователь.
            }
        }
Exemple #10
0
        public static string Decode(Bitmap bitmap)
        {
            var decoder = new QRCodeDecoder();
            var image   = new QRCodeBitmapImage(bitmap);

            return(decoder.Decode(image));
        }
Exemple #11
0
        public void Initialize()
        {
            ThreadPool.QueueUserWorkItem(state =>
            {
                while (true)
                {
                    QRCodeDecoder decoder = new QRCodeDecoder();
                    Frame frame           = _frameSource.Pick();
                    if (frame == null)
                    {
                        continue;
                    }
                    byte[] decodeBytes = null;
                    try
                    {
                        decodeBytes = decoder.DecodeBytes(new QRCodeBitmapImage(frame.RawData)).Select(s => (byte)s).ToArray();
                    }
                    catch (Exception e)
                    {
                        continue;
                    }
                    var index     = BitConverter.ToInt32(decodeBytes, 0);
                    frame.Content = decodeBytes.Skip(sizeof(int)).ToArray();

                    _frames.TryAdd(index, frame);
                    TryFinalize();

                    Thread.Sleep(100);
                }
            });
        }
Exemple #12
0
        private void decode_Qr()
        {
            QRCodeBitmapImage qbm      = new QRCodeBitmapImage(de_bmp);
            QRCodeDecoder     decodeer = new QRCodeDecoder();

            textBox1.Text = decodeer.Decode(qbm);
        }
Exemple #13
0
        private Server GetFromImage(string url)
        {
            Server server = null;

            try
            {
#if USE_QRCODE
                QRCodeDecoder decoder     = new QRCodeDecoder();
                var           pictureBox1 = new PictureBox();
                pictureBox1.Load(url);
                var    input         = (Bitmap)pictureBox1.Image;
                string decodedString = decoder.decode(new QRCodeBitmapImage(input));
                var    text          = Encoding.ASCII.GetString(Convert.FromBase64String(decodedString.Substring(5))).Trim();

                server = new Server();

                var key1 = text.Split(new[] { ":@" }, StringSplitOptions.RemoveEmptyEntries);

                server.method      = key1[0];
                server.server      = key1[1].Split(':')[0];
                server.password    = key1[1].Split(':')[1];
                server.server_port = 443;
#endif
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

            return(server);
        }
Exemple #14
0
        private void btnDecode_Click(object sender, RoutedEventArgs e)
        {
            //var start = DateTime.Now;
            //var result = reader.Decode((BitmapSource)imageBarcode.Source);
            //labDuration.Content = (DateTime.Now - start).Milliseconds + " ms";
            //if (result != null)
            //{
            //    txtBarcodeType.Text = result.BarcodeFormat.ToString();
            //    txtBarcodeContent.Text = result.Text;
            //}
            //else
            //{
            //    txtBarcodeType.Text = "";
            //    txtBarcodeContent.Text = "No barcode found.";
            //}

            QRCodeDecoder oQrCodeDecoder = new QRCodeDecoder();
            Bitmap        oBitmap        = new Bitmap(txtBarcodeImageFile.Text);
            QRCodeImage   oCodeImage     = new QRCodeBitmapImage(oBitmap);
            string        sResult        = oQrCodeDecoder.decode(oCodeImage);

            if (!String.IsNullOrEmpty(sResult))
            {
                txtBarcodeContent.Text = sResult;
            }
            else
            {
                txtBarcodeContent.Text = "No found";
            }
        }
Exemple #15
0
        private string DecodeBitmap(Bitmap bitmap)
        {
            QRCodeDecoder decoder = new QRCodeDecoder();
            string        result  = decoder.Decode(new QRCodeBitmapImage(bitmap));

            return(result);
        }
Exemple #16
0
        /// <summary>
        /// 根据二维码链接扫码获取二维码图片中的URL;
        /// </summary>
        /// <param name="url"></param>
        /// <returns></returns>
        public static string Scan(string url)
        {
            var bytes = HttpUtil.ReadBinary(url);

            using (var ms = new MemoryStream(bytes))
            {
                Bitmap map = new Bitmap(ms);
                if (map == null)
                {
                    return(null);
                }
                QRCodeDecoder decoder = new QRCodeDecoder();//实例化QRCodeDecoder
                //通过.decoder方法把颜色信息转换成字符串信息
                var decoderStr = decoder.decode(new ThoughtWorks.QRCode.Codec.Data.QRCodeBitmapImage(map), System.Text.Encoding.UTF8);
                return(decoderStr);

                /*
                 * //LuminanceSource source = new RGBLuminanceSource(bytes, map.Width, map.Height);
                 * //BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
                 * //Result result;
                 * //result = new MultiFormatReader().decode(bitmap);
                 * return result.Text;
                 */
            }
        }
Exemple #17
0
        /// <summary>
        /// 解析二维码
        /// </summary>
        /// <param name="bitmap"></param>
        /// <returns></returns>
        public static string QRCodeDecodeUtil(Bitmap bitmap)
        {
            QRCodeDecoder decoder      = new QRCodeDecoder();
            string        decodeString = decoder.decode(new QRCodeBitmapImage(bitmap), Encoding.UTF8);

            return(decodeString);
        }
Exemple #18
0
        /// <summary>
        /// 解码
        /// </summary>
        /// <param name="path">图片地址</param>
        /// <returns></returns>
        public static string ImgToStr(string path)
        {
            try
            {
                Bitmap        bm;
                QRCodeDecoder qrCodeDecoder = new QRCodeDecoder();


                Image img = Image.FromFile(path);
                bm = new Bitmap(img);


                string decodeStr = qrCodeDecoder.decode(new ThoughtWorks.QRCode.Codec.Data.QRCodeBitmapImage(bm));

                byte[] bpath = Convert.FromBase64String(decodeStr);
                decodeStr = System.Text.ASCIIEncoding.UTF8.GetString(bpath);
                img.Dispose();
                bm.Dispose();
                return(decodeStr);
            }
            catch
            {
                throw;
            }
        }
        private void btnDecode_Click(object sender, EventArgs e)
        {
            try
            {
                QRCodeDecoder decoder = new QRCodeDecoder();

                /*
                 * sbyte[] data = decoder.decodeBytes(new QRCodeBitmapImage(new Bitmap(picDecode.Image)));
                 * byte[] byteData = new byte[data.Length];
                 *
                 * Buffer.BlockCopy(data, 0, byteData, 0, byteData.Length);
                 * if (QRCodeUtility.IsUniCode(byteData))
                 * {
                 *  MessageBox.Show("Unicode");
                 * }
                 * else
                 * {
                 *  MessageBox.Show("Not unicode");
                 * }
                 */
                //QRCodeDecoder.Canvas = new ConsoleCanvas();
                String decodedString = decoder.decode(new QRCodeBitmapImage(new Bitmap(picDecode.Image)));
                txtDecodedData.Text = decodedString;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Exemple #20
0
        /// <summary>
        /// 二维码解码
        /// </summary>
        /// <param name="myBitmap">位图图片</param>
        /// <returns>返回解码字符串</returns>
        public static string CodeDecoder(Bitmap myBitmap)
        {
            QRCodeDecoder decoder       = new QRCodeDecoder();
            string        decodedString = decoder.decode(new QRCodeBitmapImage(myBitmap));

            return(decodedString);
        }
Exemple #21
0
        protected void test4_Click(object sender, EventArgs e)
        {
            string domain = "/UL/HaydenTestingPageURLIN.aspx";

            string IDnumber = "?=ID10008";


            string url = "www.etabletap.com";

            string cUrl = url + domain + IDnumber;


            QRCodeEncoder encoder = new QRCodeEncoder();

            Bitmap img = encoder.Encode(cUrl);

            Response.ContentType = "image/png";
            img.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Png);

            //Change to your own location if you want to store a copy-- not needed
            //img.Save("D:\\MyDocuments\\GitHub\\TableTap\\TableTap\\TestQR\\LastQRCodeCreated.png", ImageFormat.Png);
            //QRImage.ImageUrl = "LastQRCodeCreated.png";

            QRCodeDecoder decoder = new QRCodeDecoder();
        }
Exemple #22
0
        private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();

            {
                ofd.Filter           = "Imagen png|*.png";
                ofd.InitialDirectory = @"C:\Users\Jose A Garcia Osorio\Downloads";
            };
            if (ofd.ShowDialog() == DialogResult.OK)
            {
                pictureBox1.Image = Image.FromFile(ofd.FileName);
                label2.Text       = Path.GetFileName(ofd.FileName);
                QRCodeDecoder decoder = new QRCodeDecoder();
                textBox1.Text = decoder.Decode(new QRCodeBitmapImage(pictureBox1.Image as Bitmap));
                if (textBox1.Text.StartsWith("http") | textBox1.Text.StartsWith("https") | textBox1.Text.StartsWith("www") | textBox1.Text.EndsWith(".com"))
                {
                    btnredirect.Visible = true;
                }
                else
                {
                    if (btnredirect.Visible = true)
                    {
                        btnredirect.Visible = false;
                    }
                }
            }
        }
Exemple #23
0
        public static string GetCodeFromPicture(Bitmap pic)
        {
            QRCodeDecoder decoder = new QRCodeDecoder();

            MessagingToolkit.QRCode.Codec.Data.QRCodeBitmapImage image = new QRCodeBitmapImage(pic);
            return(decoder.Decode(image, Encoding.Unicode));
        }
Exemple #24
0
        private void MaterialRaisedButton5_Click(object sender, EventArgs e)
        {
            QRCodeDecoder decoder = new QRCodeDecoder();

            Out           = decoder.Decode(new QRCodeBitmapImage(pictureBox1.Image as Bitmap));
            textBox2.Text = Out;
        }
Exemple #25
0
        /// <summary>
        /// 获取指定网页的二进制流,并解析二维码
        /// </summary>
        /// <param name="url"></param>
        void GetQrPage(string url)
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

            request.UserAgent         = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0;)";
            request.AllowAutoRedirect = true; //出现301或302之类的转向时,是否要转向

            string ret;
            Bitmap bmp = null;

            using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
                using (Stream stream = response.GetResponseStream())
                {
                    if (stream == null)
                    {
                        ret = "";
                    }
                    else
                    {
                        bmp = new Bitmap(stream);
                        QRCodeDecoder decoder = new QRCodeDecoder();
                        ret = decoder.decode(new QRCodeBitmapImage(bmp), Encoding.UTF8);
                    }
                }
            txtRet.Text = ret;

            pictureBox1.Image?.Dispose();
            pictureBox1.Image = bmp;
        }
Exemple #26
0
        private void btnOpen_Click(object sender, EventArgs e)
        {
            txtEncode.Text = string.Empty;
            txtDecode.Text = string.Empty;

            OpenFileDialog dlg = new OpenFileDialog();

            dlg.Filter          = "Image Files (.jpg|*.jpg|.png|*.png|All Files (*.*)|*.*)";
            dlg.CheckPathExists = true;
            dlg.Title           = "Open Image File";
            dlg.Multiselect     = false;
            if (DialogResult.OK == dlg.ShowDialog(this))
            {
                try
                {
                    //Bitmap img = (Bitmap)Image.FromFile(dlg.FileName);
                    pbox.Image = Image.FromFile(dlg.FileName);

                    QRCodeDecoder dec = new QRCodeDecoder();
                    txtDecode.Text = (dec.Decode(new QRCodeBitmapImage(pbox.Image as Bitmap)));
                }
                catch (Exception x)
                {
                    MessageBox.Show(x.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Exemple #27
0
        private void Mohasebe_Copy2_Click(object sender, RoutedEventArgs e)
        {
            OpenFileDialog dialog = new OpenFileDialog
            {
                CheckFileExists = true,
                Multiselect     = false,
                Filter          = "Images (*.jpg,*.png)|*.jpg;*.png|All Files(*.*)|*.*"
            };

            dialog.ShowDialog();
            {
                string filePath = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName + @"\QRimages\";
                string newpatch = @filePath.Replace("\\GymManegment.exe", "");
                dialog.InitialDirectory = "c:\\";
                StrName   = dialog.SafeFileName;
                ImageName = dialog.FileName;
                dialog.RestoreDirectory = true;
                ImageSourceConverter isc = new ImageSourceConverter();
                if (ImageName != "")
                {
                    QRImage.SetValue(System.Windows.Controls.Image.SourceProperty, isc.ConvertFromString(ImageName));
                }
            }



            QRCodeDecoder dc = new QRCodeDecoder();

            TozihTextBox.Text = dialog.SafeFileName.Replace(".jpg", "");


            //        dc.decode(new QRCodeBitmapImage(QRImage.Source as Bitmap));
        }
Exemple #28
0
        private void btnQrOku_Click(object sender, EventArgs e)
        {
            QRCodeDecoder decoder = new QRCodeDecoder();
            Bitmap        bmp     = (Bitmap)pctQRResim.Image;

            MessageBox.Show(decoder.decode(new QRCodeBitmapImage(bmp)));
        }
Exemple #29
0
        private void CameraPnl_Loaded(object sender, RoutedEventArgs e)
        {
            this.Loaded -= CameraPnl_Loaded;

            this.LoadCameraDevice();

            QRImageDecoder = new QRCodeDecoder();
        }
Exemple #30
0
        ///// <summary>
        ///// 读取二维码
        ///// 读取失败,返回空字符串
        ///// </summary>
        ///// <param name="filename">指定二维码图片位置</param>
        //public static string read_img(string imageUri)
        //{
        //    BarcodeReader reader = new BarcodeReader();
        //    Bitmap map = getbitmap(imageUri);
        //    Result result = reader.Decode(map);
        //    return result == null ? "" : result.Text;
        //}

        /// <summary>
        /// 二维码解码
        /// </summary>
        /// <param name="filePath">图片路径</param>
        /// <returns></returns>
        public string read_img(string imageUri)
        {
            Bitmap        myBitmap      = getbitmap(imageUri);
            QRCodeDecoder decoder       = new QRCodeDecoder();
            string        decodedString = decoder.decode(new QRCodeBitmapImage(myBitmap));

            return(decodedString);
        }
 private void btnDecode_Click_1(object sender, EventArgs e)
 {
     try
     {
         QRCodeDecoder decoder = new QRCodeDecoder();
         //QRCodeDecoder.Canvas = new ConsoleCanvas();
         String decodedString = decoder.decode(new QRCodeBitmapImage(new Bitmap(picDecode.Image)));
         txtDecodedData.Text = decodedString;
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
Exemple #32
0
        public void DecodeImageTest()
        {
            QRCodeEncoder encoder = new QRCodeEncoder();
            encoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
            encoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
            encoder.QRCodeVersion = 4;

            string content = "Hello World";

            var cellWidth = 6;
            var img = new QRImage(encoder).EncodeImage(content, cellWidth);

            Assert.IsNotNull(img, "Image is not null");

            QRCodeDecoder decoder = new QRCodeDecoder();

            QRCodeBitmapImage bitmapImg = new QRCodeBitmapImage(img);
            var result = decoder.decode(bitmapImg);

            Assert.AreEqual(content, result);
        }
	public virtual void  actionPerformed(System.Object event_sender, System.EventArgs event_Renamed)
	{
		if (event_sender.Equals(openMenu))
		{
			chooser.ShowDialog(this);
			if (new System.IO.FileInfo(chooser.FileName) == null)
				return ;
			try
			{
				sourceImage = ImageIO.read(new System.IO.FileInfo(chooser.FileName));
			}
			catch (System.Exception e)
			{
				SupportClass.WriteStackTrace(e, Console.Error);
			}
		}
		else if (SupportClass.CommandManager.GetCommand(event_sender).Equals("Open from URL"))
		{
			try
			{
				//UPGRADE_TODO: Class 'java.net.URL' was converted to a 'System.Uri' which does not throw an exception if a URL specifies an unknown protocol. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1132'"
				sourceImage = ImageIO.read(new System.Uri(url.Text));
			}
			catch (System.Exception e)
			{
				SupportClass.WriteStackTrace(e, Console.Error);
			}
		}
		else
			return ;
		
		if (sourceImageLabel != null)
		{
			//UPGRADE_TODO: Method 'javax.swing.JFrame.getContentPane' was converted to 'System.Windows.Forms.Form' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaxswingJFramegetContentPane'"
			((System.Windows.Forms.ContainerControl) this).Controls.Remove(sourceImageLabel);
		}
		
		System.Windows.Forms.Label temp_label;
		temp_label = new System.Windows.Forms.Label();
		temp_label.Image = (System.Drawing.Image) sourceImage.Clone();
		sourceImageLabel = temp_label;
		//UPGRADE_TODO: Method 'javax.swing.JFrame.getContentPane' was converted to 'System.Windows.Forms.Form' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaxswingJFramegetContentPane'"
		//UPGRADE_TODO: Method 'java.awt.Container.add' was converted to 'System.Windows.Forms.ContainerControl.Controls.Add' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaawtContaineradd_javaawtComponent_javalangObject'"
		((System.Windows.Forms.ContainerControl) this).Controls.Add(sourceImageLabel);
		sourceImageLabel.Dock = System.Windows.Forms.DockStyle.Left;
		sourceImageLabel.BringToFront();
		
		
		QRCodeDecoder decoder = new QRCodeDecoder();
		if (canvas != null)
		{
			//UPGRADE_TODO: Method 'javax.swing.JFrame.getContentPane' was converted to 'System.Windows.Forms.Form' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaxswingJFramegetContentPane'"
			((System.Windows.Forms.ContainerControl) this).Controls.Remove(canvas);
			//canvas.setImage(null);
		}
		canvas = new J2SEDebugCanvas();
		QRCodeDecoder.setCanvas(canvas);
		//UPGRADE_TODO: Method 'javax.swing.JFrame.getContentPane' was converted to 'System.Windows.Forms.Form' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaxswingJFramegetContentPane'"
		//UPGRADE_TODO: Method 'java.awt.Container.add' was converted to 'System.Windows.Forms.ContainerControl.Controls.Add' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaawtContaineradd_javaawtComponent_javalangObject'"
		((System.Windows.Forms.ContainerControl) this).Controls.Add(canvas);
		canvas.Dock = System.Windows.Forms.DockStyle.Right;
		canvas.BringToFront();
		System.String decodedString = null;
		try
		{
			decodedString = new String(decoder.decode(new J2SEImage(this, sourceImage)));
		}
		catch (DecodingFailedException e)
		{
			canvas.println(e.getMessage());
			canvas.println("--------");
			return ;
		}
		decodedString = ContentConverter.convert(decodedString);
		canvas.println("\nDecode result:");
		canvas.println(decodedString);
		canvas.println("--------");
		if (decodedText != null)
		{
			//UPGRADE_TODO: Method 'javax.swing.JFrame.getContentPane' was converted to 'System.Windows.Forms.Form' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaxswingJFramegetContentPane'"
			((System.Windows.Forms.ContainerControl) this).Controls.Remove(decodedText);
		}
		System.Windows.Forms.TextBox temp_TextBox;
		temp_TextBox = new System.Windows.Forms.TextBox();
		temp_TextBox.Multiline = true;
		temp_TextBox.WordWrap = false;
		temp_TextBox.ScrollBars = System.Windows.Forms.ScrollBars.Both;
		temp_TextBox.Text = decodedString;
		decodedText = temp_TextBox;
		decodedText.WordWrap = true;
		//UPGRADE_ISSUE: Method 'javax.swing.JTextArea.setRows' was not converted. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1000_javaxswingJTextAreasetRows_int'"
		decodedText.setRows(decodedString.Length / 20 + 1);
		if (decodedString.Length < 20)
		{
			//UPGRADE_ISSUE: Method 'javax.swing.JTextArea.setColumns' was not converted. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1000_javaxswingJTextAreasetColumns_int'"
			decodedText.setColumns(decodedString.Length);
		}
		else
		{
			//UPGRADE_ISSUE: Method 'javax.swing.JTextArea.setColumns' was not converted. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1000_javaxswingJTextAreasetColumns_int'"
			decodedText.setColumns(20);
		}
		//decodedText.setSize(sourceImageLabel.getSize().width,100);
		//UPGRADE_TODO: Method 'javax.swing.JFrame.getContentPane' was converted to 'System.Windows.Forms.Form' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaxswingJFramegetContentPane'"
		//UPGRADE_TODO: Method 'java.awt.Container.add' was converted to 'System.Windows.Forms.ContainerControl.Controls.Add' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaawtContaineradd_javaawtComponent_javalangObject'"
		((System.Windows.Forms.ContainerControl) this).Controls.Add(decodedText);
		decodedText.Dock = System.Windows.Forms.DockStyle.Bottom;
		decodedText.SendToBack();
		//UPGRADE_ISSUE: Method 'java.awt.Window.pack' was not converted. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1000_javaawtWindowpack'"
		pack();
	}