Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
HarmonOriginal
0 / 0 / 0
Регистрация: 23.12.2017
Сообщений: 8
1

Загрузка изображения в фигуру

29.05.2018, 19:22. Просмотров 104. Ответов 2
Метки нет (Все метки)

Добрый вечер! Нуждаюсь в срочной помощи! C#, Winforms. Как при создании фигуры можно залить на нее изображение? Вместо цвета, или что-то вроде того. Пример кода создания фигуры ниже:
C#
1
2
3
4
5
6
7
8
9
10
11
//прямоугольник
    [Serializable]
    public class RectFigure : SolidFigure
    {
        public RectFigure()
        {
            Path.AddRectangle(new RectangleF(-defaultSize, -defaultSize/2, 2*defaultSize, defaultSize));
            textRect = new RectangleF(-defaultSize + 3, -defaultSize / 2 + 2, 2 * defaultSize - 6, defaultSize - 4);
 
        }
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2018, 19:22
Ответы с готовыми решениями:

Загрузка изображения на форму
как сделать, чтобы кнопку не было видно, а при нажатии кнопки, там появлялось...

Загрузка изображения попиксельно
Нужно чтобы по нажатию Button1 открывалось окно для выбора файла изображения, а...

Загрузка изображения в picturebox
Добрый вечер, подскажите, создаю я форму значит добавляю туда кнопки(несколько)...

Загрузка изображения с формы 1 на форму 2
Добрый день. Есть форма 1 на ней мини просмотр изображения (picturebox), как...

Загрузка изображения через openDialog в PictureBox
Всем доброго времени суток, нужно изображение которое я выбираю через...

2
Shogun31337
534 / 514 / 222
Регистрация: 02.11.2016
Сообщений: 1,538
Завершенные тесты: 2
29.05.2018, 20:58 2
Цитата Сообщение от HarmonOriginal Посмотреть сообщение
Как при создании фигуры можно залить на нее изображение?
В случае с прямоугольником довольно просто:
C#
1
2
3
4
5
6
7
8
9
        Bitmap bmp;
        private void pictureBox1_Paint(object sender, PaintEventArgs e)
        {
            Point location = new Point(10, 10); //точка вставки
            Size size = new Size(100, 100);     //размер
            Bitmap bmp1 = new Bitmap(bmp, size);       //подгоняем размер картинки под размер прямоугольника     
            e.Graphics.DrawImage(bmp1, location);      //рисуем картинку
            e.Graphics.DrawRectangle(Pens.Aqua, new Rectangle(location, size)); //рисуем прямоугольник
        }
Если фигура произвольная, то смысл остается тот же, а процедура "подрезки" изображения несколько усложнится.
0
Рядовой
281 / 237 / 134
Регистрация: 17.05.2015
Сообщений: 910
Завершенные тесты: 1
29.05.2018, 21:20 3
HarmonOriginal,
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
protected override void OnPaint(PaintEventArgs e)
        {
            e.Graphics.SetClip(GetPath, CombineMode.Intersect);
            e.Graphics.DrawImage(Image.FromFile(@"E://12.jpg"), 0, 0);
            e.Graphics.DrawPath(Pens.Black, GetPath);
        }
        private GraphicsPath GetPath
        {
            get
            {
                GraphicsPath path = new GraphicsPath();
                path.AddEllipse(new Rectangle(10, 10, 100, 100)); //накидал от балды
                path.AddPie(new Rectangle(45, 80, 300, 15), 0, 200);
                return path;
            }
        }
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.05.2018, 21:20

Загрузка изображения в PictureBox с автоматическим изменением разрешения
Есть OpenFileDialog, он открывает изображение и помещает его в PictureBox, а...

загрузка изображения в picturebox из файла. listview, imagelist
Здравствуйте, суть программы: Загружаю изображения в imagelist, оттуда в...

Загрузка изображения по прямому пути осуществляется, но через OpenFileDialog - нет
Ребят, когда загружаю изображение вот так, то все нормально Bitmap input=new...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru