Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/43: Рейтинг темы: голосов - 43, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 09.06.2011
Сообщений: 6

Затемнение картинки в picturebox-ах

17.06.2011, 12:45. Показов 8640. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Итак, имеется picturebox в который загружается картинка, суть проблемы в том, что при определенных условиях картинку необходимо затемнить. То есть изображение сохраняется, но цвета несколько тускнеют.

На примере: справа - оригинал (нормальные условия), слева - то что должно получиться (определенные условия)
Изображения
 
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.06.2011, 12:45
Ответы с готовыми решениями:

Прозрачный фон у картинки на элементе PictureBox непрозрачен для другого PictureBox
Здравствуйте! Проблема состоит в следующем! У меня есть картинка .png с прозрачным фоном. При создании PictureBox с этой картинкой, фон по...

Имя картинки PictureBox
Здравствуйте, подскажите пожалуйста, как программно можно узнать имя загруженной в PictureBox картинки?

Передвижение картинки по PictureBox
пробую работать с графикой. следующая задача: в picturebox поместил изображение- карта России. Отметил некоторые города. теперь...

12
мастер топоров
 Аватар для Koran
917 / 742 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
17.06.2011, 13:05
поверх пикчербокса с картинкой ставите пикчербокс с белым заполнением и устанавливаете уровень прозрачности этого белого пикчербокса чуть больше, чем "совсем прозрачный"
0
179 / 175 / 14
Регистрация: 17.01.2011
Сообщений: 349
17.06.2011, 13:11
Koran, вроде бы наоборот, затемнить надо.
0
мастер топоров
 Аватар для Koran
917 / 742 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
17.06.2011, 13:15
можно разместить белый пикчербокс под пикчербоксом с картинкой и делать полупрозрачным верзний пикчербокс - результат будет тот же
0
0 / 0 / 0
Регистрация: 09.06.2011
Сообщений: 6
17.06.2011, 13:25  [ТС]
Цитата Сообщение от Koran Посмотреть сообщение
можно разместить белый пикчербокс под пикчербоксом с картинкой и делать полупрозрачным верзний пикчербокс - результат будет тот же
тогда вопрос - зачем помещать белый? и собственно как эту полупрозрачность сделать?
0
615 / 539 / 115
Регистрация: 24.03.2011
Сообщений: 576
17.06.2011, 13:41
Koran, тогда лучше сделать так:
C#
1
2
3
4
5
     using (Graphics g = Graphics.FromImage(pictureBox1.Image))
     {
        SolidBrush Brush = new SolidBrush(Color.FromArgb(50, 0, 0, 0));
        g.FillRectangle(Brush, 0, 0, pictureBox1.Image.Width, pictureBox1.Image.Height);
     }
SeaKot, картинка затемниться.
0
0 / 0 / 0
Регистрация: 09.06.2011
Сообщений: 6
17.06.2011, 13:54  [ТС]
Цитата Сообщение от Redfex Посмотреть сообщение
C#
1
2
3
4
5
     using (Graphics g = Graphics.FromImage(pictureBox1.Image))
     {
        SolidBrush Brush = new SolidBrush(Color.FromArgb(50, 0, 0, 0));
        g.FillRectangle(Brush, 0, 0, pictureBox1.Image.Width, pictureBox1.Image.Height);
     }
A Graphics object cannot be created from an image that has an indexed pixel format.

Видимо с *.gif такое не прокатит. Но за идею спасибо, попробую.
0
мастер топоров
 Аватар для Koran
917 / 742 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
17.06.2011, 14:39
Redfex, "лучше" - не значит "хорошо". зачем танцы с бубном и рисовать ещё что-то без уверенности что это можно убрать если можно расположить объект/контрол и его модифицировать при каких-либо условиях? решений задачи может быть много, но лично я бы выбрал вариант с дополнительным пикчербоксом
0
615 / 539 / 115
Регистрация: 24.03.2011
Сообщений: 576
17.06.2011, 14:49
Koran, я бы выбрал свой вариант

SeaKot, можно рисовать затемнение еще так:
C#
1
2
3
4
5
        private void pictureBox1_Paint(object sender, PaintEventArgs e)
        {
            SolidBrush Brush = new SolidBrush(Color.FromArgb(50, 0, 0, 0));
            e.Graphics.FillRectangle(Brush, 0, 0, pictureBox1.Width, pictureBox1.Height);
        }
1
60 / 60 / 13
Регистрация: 23.04.2011
Сообщений: 110
17.06.2011, 16:23
Цитата Сообщение от Redfex Посмотреть сообщение
можно рисовать затемнение еще так:
C#
1
2
3
4
5
        private void pictureBox1_Paint(object sender, PaintEventArgs e)
        {
            SolidBrush Brush = new SolidBrush(Color.FromArgb(50, 0, 0, 0));
            e.Graphics.FillRectangle(Brush, 0, 0, pictureBox1.Width, pictureBox1.Height);
        }
хороший вариант
0
15 / 15 / 1
Регистрация: 08.06.2011
Сообщений: 34
17.06.2011, 16:53
Если картинка легкая - можно две картинки в памяти держать и загружать в бокс ту, которая нужна.
Это еще вариант, не такой конечно изящный...
0
0 / 0 / 1
Регистрация: 10.01.2010
Сообщений: 91
07.03.2014, 13:50
А как потом убрать это затемнение? Точнее этот ректенгл, когда мы уберём мышку с изображения?
0
Заблокирован
08.03.2014, 22:56
Насколько я помню гдето тут читал что чтобы осветлить картинку к ее цвету нужно прибавить несколько значений например было 176 120 145 сделать 186 120 145 - вам нужно проделать все на оборот.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.03.2014, 22:56
Помогаю со студенческими работами здесь

Сохранение картинки из PictureBox
Здравствуйте,собственно сабж. Написал код,правда не знаю в чем ошибся,буду благодарен за помощь. private void...

Изменение картинки в PictureBox
Всем привет! Работаю в Visual Studio 2015, требуется на одной форме при нажатии на кнопку сменить картинку, имеется 2 картинки на пробу,...

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

Загрузка картинки в PictureBox
Помогите пожалуйста,как загрузить изображение в элемент PictureBox?

Смена картинки в PictureBox
Всем доброго времени. Знаю, что вопрос глупый и уже много раз встречался но что то сам решить не могу. Суть : есть pictureBox, по щелчку...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru