Add(MainForm,2953706,406,133)
{
Width=373
Height=296
Position=1
link(onCreate,5430549:doCreate,[])
}
Add(Img_Text,7264361,455,203)
{
X=2
Y=2
Font=[Verdana,36,1,0,204]
Text="T"
link(onDraw,13014802:doShadow,[])
link(Bitmap,13846490:Var2,[])
}
Add(PaintBox,13234352,553,133)
{
Left=10
Top=5
Width=345
Height=260
Color=16777215
}
Add(Bitmap,5430549,455,133)
{
HWidth=100
HHeight=100
FillColor=16711935
Point(onCreate)
Point(doCreate)
link(onCreate,7264361:doDraw,[(499,139)(499,112)(391,112)(391,209)])
}
Add(Img_AlphaBmp,1001163,553,203)
{
X=100
Y=50
AlphaBlendValue=125
link(Bitmap,13234352:Bitmap,[])
}
Add(AlphaShadow,13014802,504,203)
{
ShiftX=12
ShiftY=12
TransparentColor=16711935
link(onShadow,1001163:doDraw,[])
link(Bitmap,13846490:Var3,[(510,187)])
}
Add(GetDataEx,13846490,455,182)
{
link(Data,5430549:Bitmap,[])
}
Этот топик читают: Гость
|
Ответов: 2467
Рейтинг: 698
|
|||
|
nesco, хотел сделать тень у текста, получил бонусом тень краев. Вот тестовая схема:
|
|||
| карма: 11 |
|
|
Разработчик
Ответов: 26322
Рейтинг: 2147
|
|||
|
sla8a писал(а): Почему делается тень верхнего левого угла картинки?Потому, что рисунок в обычном bmp -- 24bpp, и у него нет маски. Более корректно все это безобразие будет работать только с цветом фона -- clNone |
|||
| карма: 22 |
|
|
Ответов: 2467
Рейтинг: 698
|
|||
|
Получается это не ошибка. Хм... А что если сделать проверку получаемого изображение на 32bpp и при необходимости заменить цвет выставленный в TransparentColor на clNone?
К примеру после: fmask := NewBitmap(0, 0); Проверить: if (Bmp.PixelFormat <> pf32bit) and (fTransparent <> clNone) then И если истина, то залить fmask цветом clNone и нарисовать на нем Bmp с прозрачным цветом fTransparent. И Bmp.Assign(fmask); В противном случае: fmask.Assign(Bmp); Редактировалось 2 раз(а), последний 2018-11-16 10:10:57 |
|||
| карма: 11 |
|
|
Разработчик
Ответов: 26322
Рейтинг: 2147
|
|||
|
sla8a писал(а): К примеруПопробуй, расскажешь |
|||
| карма: 22 |
|
4



Поиск
Друзья
Администрация