Новые книги

Вы собрались купить ноутбук или уже успели сделать это? В таком случае вам необходима помощь. Хотя, казалось бы, какие могут быть проблемы при переходе на ноутбук со стационарного ПК – ведь основные принципы работы остаются теми же? С одной стороны, это действительно так, однако с другой – работа на ноутбуке имеет свою неоспоримую специфику.

Это выражается во всем: в особенностях выбора модели и комплектации (в отличие от стационарного ПК модернизировать ноутбук гораздо сложнее), в перманентной необходимости экономить заряд батареи и оптимизировать режимы работы, регулярно подключать внешние устройства и использовать беспроводные сети – в общем, практически в любой области работы на ноутбуке есть свои особенности.

Итак, если вы планируете перейти на ноутбук, эта книга, а также прилагаемые к ней видеоуроки – для вас.
Дэвид Аакер – одна из самых крупных фигур мирового брендинга. Его книга – результат многолетней успешной практики – представляет собой двадцать простых, эффективных, доступных принципов достижения успеха. Никаких абстрактных рекомендаций и советов, только конкретные тактики, схемы, концепции и приемы, результатом реализации которых становится разработка, расширение и продвижение сильного, стабильного, конкурентоспособного бренда.

Создание пера для рисования линий

Создание пера для рисования линий

Рисование графических примитивов производится с помощью перьев. В Windows'95 есть три предопределенных пера - черное (BLACK_PEN), белое (WHITE_PEN) и прозрачное (NULL_PEN). При создании окна по умолчанию ему присваивается черное перо. Хэндл каждого из них может быть получен с помощью функции GetStockObject(). Естественно, что программиста не может удовлетворитьь столь малое число перьев, поэтому для прорисовки линий можно воспользоваться пером, созданным в программе посредством вызова функции CreatePen(). Как всегда, обращаемся к файлам заголовков, в данном случае - к файлу wingdi.h:

  WINGDIAPI HPEN   WINAPI CreatePen(int, int, COLORREF);
Первый аргумент определяет стиль кисти. В wingdi.h эти стили описаны достаточно образно. Для того чтобы сохранить стиль этого описания (не путать со стилем кисти) я включил его третьим столбцом в таблице:

Возможные стили кисти

Стиль пера Значение Описание Эффект
PS_SOLID 0 ______ Сплошная линия
PS_DASH 1 ------ Пунктирная линия
PS_DOT 2 ...... Линия из точек
PS_DASHDOT 3 _._._._ Штрих-пунктирная линия (тире-точка)
PS_DASHDOTDOT 4 _.._.._ Штрих-пунктирная линия (тире-точка-точка)
PS_NULL 5   Прозрачное перо
PS_INSIDEFRAME 6   При рисовании замкнутой фигуры граница фигуры будет определятся по внешнему краю, а не по середине линии (если толщина пера более 1 пикселя)

Второй аргумент функции CreatePen() - толщина пера в логических единицах. Если этот аргумент равен 0, то толщина пера делается равной одному пикселю.

Третий аргумент - цвет чернил. Теперь для того, чтобы мы могли использовать наше перо, необходимо сделать его текущим в контексте устройства. Делается это уже давно знакомой нам функцией SelectObject(). После того, как мы отработаем с пером, необходимо удалить его, вызвав функцию DeleteObject().