public void numberblackTest()
        {
            // arrange
            InformBarcode barcode = new InformBarcode();
            Bitmap        image   = new Bitmap("D:\\ИАД Курсач\\image\\EAN8.gif");

            int result;

            Color[,] All = new Color[image.Width - 1, image.Height - 1];
            for (int i = 0; i < (image.Width - 1); i++)
            {
                for (int j = 0; j < (image.Height - 1); j++)
                {
                    All[i, j] = image.GetPixel(i, j);
                }
            }
            // act
            result = barcode.numberblack(image, All);


            // assert
            Assert.AreEqual(result, 22);
        }
示例#2
0
        private void recognize_Click(object sender, EventArgs e)
        {
            numberblack       = 0;
            richTextBox1.Text = "";
            if (button == true)
            {
                Color[,] All = new Color[image.Width - 1, image.Height - 1];
                for (int i = 0; i < (image.Width - 1); i++)
                {
                    for (int j = 0; j < (image.Height - 1); j++)
                    {
                        All[i, j] = image.GetPixel(i, j);
                    }
                }
                numberblack = barcode.numberblack(image, All);
                switch (numberblack)
                {
                case 30:
                {
                    richTextBox1.Text += "Код: EAN-13" + "\n";
                    string[] result = barcodeEAN.barcodeEAN13(image, All);
                    if (result.Length != 0)
                    {
                        for (int i = 0; i < 13; i++)
                        {
                            richTextBox1.Text += result[i];
                        }
                        richTextBox1.Text += "\nТовар:" + barcode.searchProduct(String.Concat <string>(result));
                    }
                    else
                    {
                        richTextBox1.Text = "Штрих-код не розпізнано!";
                    }
                }
                break;

                case 22:
                {
                    richTextBox1.Text += "Код:EAN-8" + "\n";
                    string[] result = barcodeEAN.barcodeEAN8(image, All);
                    if (result.Length != 0)
                    {
                        for (int i = 0; i < 8; i++)
                        {
                            richTextBox1.Text += result[i];
                        }
                        richTextBox1.Text += "\nТовар:" + barcode.searchProduct(String.Concat <string>(result));
                    }
                    else
                    {
                        richTextBox1.Text = "Штрих-код не розпізнано!";
                    }
                }
                break;

                default:
                {
                    richTextBox1.Text += "Код:Code39" + "\n";
                    ArrayList barcode = new ArrayList();
                    string    code    = "";
                    BarcodeCode.barcodeCode(ref barcode, image);
                    if (barcode.Count != 0)
                    {
                        for (int i = 0; i < barcode.Count; i++)
                        {
                            richTextBox1.Text += barcode[i];
                            code += barcode[i];
                        }
                        richTextBox1.Text += "\nТовар:" + this.barcode.searchProduct(code);
                    }
                    else
                    {
                        richTextBox1.Text = "Штрих-код не розпізнано!";
                    }
                }
                break;
                }
            }
            else
            {
                MessageBox.Show("Завантажте зображення!", "Помилка", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }