Как нарисовать линию или прямоугольник на контексте устройства (CDC)? Как выбрать цвет и толщину линии?
Пусть имеется указатель на контекст устройства, на котором (контексте то есть) будем рисовать.
1 | CDC* pDC; |
Можно взять класс, производный от CDC.
[cc lang="cpp"]CPaintDC* pDC; //
//рисуем сплошной зелёный прямоугольник
//шириной 100, высотой 300
RECT r = {0, 0, 100, 300};
pDC->FillSolidRect(&r, RGB(0, 128, 0));
далее
Как преобразовать RGB-цвет в оттенки серого?
В приведенном примере для преобразования RGB-цвета используются коэффициенты, принятые в телевидении:
1 2 3 | byte color = RED * 0.299 + GREEN * 0.587 + BLUE * 0.114; int GrColor = RGB (color,color,color); |
Здесь переменные RED, GREEN, BLUE соответствуют цветам палитры RGB красному, зеленому и синему соответственно.
Создание BMP из CBitmap
Эта задача программирования не настолько тривиальна, как бы этого хотелось. Сложность заключается в том, что готовых 100% работающих классов или библиотек под эту задачу лично мне найти не удалось. Пришлось немного углубиться в поиски и адаптировать то, что с большего подходит под задачу создания BMP файла из элемента класса CBitmap.
далее
Рубрики
- javascript
- SEO
- Smarty
- UIPI
- Боремся со СПАМом
- Верстка
- Движки форумов
- Железо
- Забавно
- Интернет в лицах
- Интернет-магазины
- Новости
- Обзоры сайтов
- Обо всем
- Полезные скрипты
- Работа с CMS
- Создание сайтов
- Уроки рекламы
- Шаблоны
