Класс Bitmap, преобразование размеров картинки с picturebox - C#

Узнай цену своей работы

Формулировка задачи:

мне нужна помощь тоесть небольшая потсказка
Bitmap img = new Bitmap(picture.Image);
            Color c;
 
            int x = e.X;
            int y = e.Y;
            c = img.GetPixel(x, y);
 
            int r = Convert.ToInt16(c.R);
            int g = Convert.ToInt16(c.G);
            int b = Convert.ToInt16(c.B);
вместо picture.Image я хочу что бы у меня там была сама картинка которая у меня загрузилась и преобразовалась в размерах в пикчер боксе,возможно ли это??Тоесть мне нужно вырезать пиксель из преобразованной пикчер боксом по размерам картинки,а он вырезает с исходника не преобразованного и получается лажа....а когда ставлю режим отображения картинки в пикчер боксе normal то показывает только кусок картинки(картинка больше самого пикчер бокса)и вырезает его нормально,но меня полосы прокрутки изображения в пикчер боксе не устраивает,помогите плиз достучаться до преобразованной картинки в пикчер боксе.Сам проект прикрепил ниже можете сами посмотреть правильност работы

Решение задачи: «Класс Bitmap, преобразование размеров картинки с picturebox»

textual
Листинг программы
        private void select_Click(object sender, EventArgs e)
        {
            try
            {
                if (openFileDialog.ShowDialog() == DialogResult.OK)
                {
                    textBox1.Text = openFileDialog.FileName;
                    Bitmap image = new Bitmap(openFileDialog.FileName);
                    Bitmap scaledImage = new Bitmap(picture.Width, picture.Height);
                    GraphicsUnit unit = GraphicsUnit.Pixel;
                    Graphics.FromImage(scaledImage).DrawImage(image,
                        (scaledImage as Image).GetBounds(ref unit),
                        (image as Image).GetBounds(ref unit), unit);
                    picture.Image = scaledImage;
                }
            }
            catch
            {
                
            }
        }
 
        private void picture_MouseClick(object sender, MouseEventArgs e)
        {
            Bitmap img = picture.Image as Bitmap;
            Color c = img.GetPixel(e.X, e.Y);
 
            new Info(c.R, c.G, c.B).Show();
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.571 из 5
Похожие ответы