Ejemplo n.º 1
0
 // функция вызова третьего метода
 public void Method3_Benham()
 {
     labelAttention.Text = "";
     if (bMap == null)
     {
         labelAttention.Text = "Вставьте изображение!"; // проверка на наличие изображения
     }
     else
     {
         if (textBox1.Text != "")                                                  // проверка на наличие текста
         {
             try                                                                   // проверка на выбор всех параметров
             {
                 Colours colour = (Colours)ColourBox3.SelectedIndex;               // цвет задаем в соответвии с выбранным в comboBox3, приводя к перечислению Colours
                 var     result = Benham.IsHiddenText(bMap, colour);               // содержится ли скрытый текст
                 if (!result || Attention(result))                                 // если нет скрытого текста или пользователь все равно хочет заменить его на новый
                 {
                     bMapSteg          = Benham.Hide(bMap, textBox1.Text, colour); // создаем новый объект StegoBitmap, хранящий в себе скрытый текст
                     pictureBox2.Image = bMapSteg.GetImage();                      // задаем изображение в  pictureBox2
                 }
             }
             catch (NullReferenceException)
             {
                 string            message = "Не выбран цвет для сокрытия текста";
                 string            caption = "Отсутствие одного из параметров";
                 MessageBoxButtons button  = MessageBoxButtons.OK;
                 DialogResult      res     = MessageBox.Show(message, caption, button); //  отобразить MessageBox
             }
             catch (ArgumentOutOfRangeException)
             {
                 labelAttention.Text = "Число символов больше чем число пригодных для внедрения блоков. Выберете другой цвет/метод или уменьшите размер текста";
             }
             catch (Exception)
             {
                 labelAttention.Text = "Что-то пошло не так, попробуйте позже"; //в случае какой-то неполадки
             }
         }
         else
         {
             labelAttention.Text = "Введите текст!"; // при отсутствии текста
         }
     }
 }
Ejemplo n.º 2
0
        // кнопка 'DECODE'
        private void button4_Click(object sender, EventArgs e)
        {
            labelAttention.Text = "";
            if (bMap == null)
            {
                labelAttention.Text = "Вставьте изображение!"; // проверка на наличие изображения
            }
            else
            {
                if (methodButton1.Checked) // проверка по методу LSB
                {
                    try
                    {
                        if (LSB.IsHiddenText(bMap, out Colours c))
                        {
                            textBox1.Text       = LSB.GetHiddenText(bMap, c); // получаем и выводим скрытый текст
                            labelAttention.Text = "Скрытый текст найден";
                        }
                        else
                        {
                            labelAttention.Text = "В изображении отсутствует скрытый текст по данному методу";// отсутствие скрытого текста
                        }
                    }
                    catch (Exception)
                    {
                        labelAttention.Text = "Что-то пошло не так, попробуйте позже"; //в случае какой-то неполадки
                    }
                }

                else if (methodButton2.Checked)                               // проверка по методу Коха-Жао
                {
                    try                                                       // проверка на выбор цвета
                    {
                        Colours colour = (Colours)ColourBox2.SelectedIndex;   // цвет задаем в соответвии с выбранным в comboBox1, приводя к перечислению Colours
                        textBox1.Text = KochZhao.GetHiddenText(bMap, colour); // получаем и выводим скрытый текст
                        if (textBox1.Text != "")
                        {
                            labelAttention.Text = "Скрытый текст найден";
                        }
                        else
                        {
                            labelAttention.Text = "В изображении отсутствует скрытый текст по данному методу";// отсутствие скрытого текста
                        }
                    }
                    catch (NullReferenceException)
                    {
                        string            message = "Проверка по методу Коха-Жао. Выберите цвет для выявления текста в разделе соответствующего метода";
                        string            caption = "Отсутствие цвета";
                        MessageBoxButtons button  = MessageBoxButtons.OK;
                        DialogResult      diaRes  = MessageBox.Show(message, caption, button); //  отобразить MessageBox
                    }
                    catch (Exception)
                    {
                        labelAttention.Text = "Что-то пошло не так, попробуйте позже"; //в случае какой-то неполадки
                    }
                }
                else if (methodButton3.Checked)                             // проверка по методу Бенгама
                {
                    try                                                     // проверка на выбор цвета
                    {
                        Colours colour = (Colours)ColourBox3.SelectedIndex; // цвет задаем в соответвии с выбранным в comboBox3, приводя к перечислению Colour
                        textBox1.Text = Benham.GetHiddenText(bMap, colour); // получаем и выводим скрытый текст
                        if (textBox1.Text != "")
                        {
                            labelAttention.Text = "Скрытый текст найден";
                        }
                        else
                        {
                            labelAttention.Text = "В изображении отсутствует скрытый текст по данному методу";// отсутствие скрытого текста
                        }
                    }
                    catch (NullReferenceException)
                    {
                        string            message = "Проверка по методу Бенгама. Выберите цвет для выявления текста в разделе соответствующего метода";
                        string            caption = "Отсутствие цвета";
                        MessageBoxButtons button  = MessageBoxButtons.OK;
                        DialogResult      res     = MessageBox.Show(message, caption, button); //  отобразить MessageBox
                    }
                    catch (Exception)
                    {
                        labelAttention.Text = "Что-то пошло не так, попробуйте позже"; //в случае какой-то неполадки
                    }
                }
                else
                {
                    labelAttention.Text = "Не выбран метод для поиска текста в изображении";
                }
            }
        }