예제 #1
0
        // Decode event
        private void stream(object sender, NewFrameEventArgs eventArgs)
        {
            // NewFrameEventArgs -- event from AForge.Video class
            Bitmap bitmap = (Bitmap)eventArgs.Frame.Clone();

            Stream_pictureBox.Image = bitmap;

            //если сканирование производилось уже в течении делея то выходим
            if (!isCan)
            {
                return;
            }

            // send image from camera in ZXing class, and decode them
            Result result = reader.Decode((Bitmap)eventArgs.Frame.Clone());

            //если в коллекции сканов уже есть такой текст, то выходим
            if (result != null && !scans.Contains(result.Text))
            {
                //установка флага что уже отсканировано
                isCan = false;
                //добавление уникального значения
                scans.Add(result.Text);
                Invoke((MethodInvoker) delegate
                {
                    QrDecode_textBox.AppendText("\r\n" + result.Text);
                });
                TempQrDecode = result.Text;
            }
        }
예제 #2
0
        // Decode event
        private void stream(object sender, NewFrameEventArgs eventArgs)
        {
            // NewFrameEventArgs -- event from AForge.Video class
            Bitmap bitmap = (Bitmap)eventArgs.Frame.Clone();

            Stream_pictureBox.Image = bitmap;

            // send image from camera in ZXing class, and decode them
            Result result = reader.Decode((Bitmap)eventArgs.Frame.Clone());

            if (result != null && result.Text != TempQrDecode)
            {
                Invoke((MethodInvoker) delegate
                {
                    QrDecode_textBox.AppendText("\r\n" + result.Text);
                });
                TempQrDecode = result.Text;
            }
        }