Создание цветных перьев и кистей


Хотя Вы и можете определить любой цвет для пера, создавая его, система использует только те цвета, которые являются доступными для устройства. Это означает, что система использует самый близкий подобранный цвет, когда реализует перо для рисования. Создавая кисти, система генерирует размытый (полутоновый) цвет, если Вы определяете цвет, который устройство фактически не поддерживает. Или в случае, когда Вы можете использовать макрос RGB, чтобы определить цвет, создавая перо или кисть.

Демонстрационный пример

// DrawARectangle - рисует красный прямоугольник в зеленой рамке
// Значение не возвращает.
// hdc - дескриптор контекста устройства

void DrawARectangle(HDC hdc) 
{
    HPEN hpen, hpenOld;
    HBRUSH hbrush, hbrushOld;

    // Создаем зеленое перо.
    hpen = CreatePen(PS_SOLID, 10, RGB(0, 255, 0));
    // Создаем красную кисть.
    hbrush = CreateSolidBrush(RGB(255, 0, 0));

    // Выбираем новое перо и кисть, а затем рисуем.
    hpenOld = SelectObject(hdc, hpen);
    hbrushOld = SelectObject(hdc, hbrush);
    Rectangle(hdc, 100,100, 200,200);

    // Не забывайте очищать.
    SelectObject(hdc, hpenOld);
    DeleteObject(hpen);
    SelectObject(hdc, hbrushOld);
    DeleteObject(hbrush);
}

 

Назад в оглавление
На главную страницу

Hosted by uCoz