![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Маска тени...
Skier © (2005-02-08 17:57:00)Создал свой контрол с тенью, но меня не устраивает маска тени - тень получается слишком светлая
type
TShadowMask = array[0..7] of Word;
//маска тени...
ShadowMask : TShadowMask = ($0055, $00AA, $0055, $00AA, $0055, $00AA, $0055, $00AA);
этим паттерном я заполняю регион...
LPattern := TBitmap.Create;
LPattern.Handle := CreateBitmap(8, 8, 1, 1, @ShadowMask[0]);
//
LCanvas.Brush.Bitmap := LPattern;
и т.д.
Всё классно работает, но как бы масочку потемнее сделать...
Гадать с цветами в массиве больно хлопотно...
Может найдётся здесь добрый человек и присоветует мне что-нибудь
по этому поводу...
Skier (2005-02-09 07:13:00) [1]>MBo © (08.02.05 18:50) [3]
Большое спасибо за пример и особенно за разъяснения...
MBo (2005-02-08 18:50:00) [2]пример для заполнения на 1/4
($0011, $0044, $0022, $0088, $0011, $0044, $0022, $0088);
MBo (2005-02-08 18:35:00) [3]Вот смотри:
$55=01010101b
$AA=10101010b
т.е. у тебя чередуются черные и белые пикселы
(маска монохромная, ведущие нули - для выравнивания строк на 16 бит)
Здесь в каждой строке 4 черных пиксела. Тебе нужно больше черных - сделай соотв. бинарное представление и переведи его в hex, сдвигая каждый следующий байт влево или вправо во избежание верт. полосок.
Учти, что у тебя неизбежно будут возникать узоры.
Игорь Шевченко (2005-02-08 18:06:00) [4]
> но как бы масочку потемнее сделать...
Чем меньше значение цвета, тем он темнее. Не наводит на мысли ?