![]() |
|
|
|
|
#1
|
|||
|
|||
|
Здравствуйте ув. знатоки))
Программирую на delphi не давно. Цель: бегущая строка по видео. Что сделано: все работает. Проблема: куски белого фона вокруг букв. Оч. прошу помочь. Заранее спасибо. Вложения-исходники. |
|
#2
|
||||
|
||||
|
Цитата:
|
|
#3
|
|||
|
|||
|
Пишу на BDS 2006 без .net.
На GDI, браш поставил. Форма прозрачная белая. Ни чего не изменилось. вот код Вложение скрин. Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
txt := 'Я люблю DELPHI)))';
BitMap := TBitmap.Create;
Bitmap.Width := Form1.Width;
Bitmap.Height := form1.Height;
Bitmap.Height := 100;
Bitmap.Canvas.Brush.Color := clwhite;
Bitmap.Canvas.Font.Name := 'Trebuchet MS';
Bitmap.Canvas.Font.Size := 35;
Bitmap.Canvas.Font.Color := clGreen;
//bitmap.TransparentColor:=clwhite;
bitmap.Transparent:=true;
TW := 100;
X := Form1.Width;
{if form1.BorderStyle = bsSizeable then
Y := (form1.Height) div 2 - (bitmap.Canvas.Font.Size)div 2 - 100;}
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
i := 2;
Bitmap.Width := Form1.Width;
Bitmap.Height := Form1.Height;
Bitmap.Canvas.Polygon([Point(0, 0), Point(1280, 0),
Point(1280, 767), Point(0, 767)]);
X := X - i;
if X <= (-TW * (font.Size div 2))
then X := Form1.Width;
Canvas.Brush.Style := bsClear;
Bitmap.Canvas.TextOut(X,Y,txt);
Form1.Canvas.Draw(0,0,Bitmap);
if form1.WindowState = wsMaximized
then Y := (form1.Height) div 2 - (bitmap.Canvas.Font.Size);
if form1.WindowState = wsNormal
then Y := (form1.Height) div 2 - (bitmap.Canvas.Font.Size) div 2 - 35;
end;Последний раз редактировалось Prof-x, 25.09.2009 в 14:03. |
|
#4
|
||||
|
||||
|
Цитата:
|
|
#5
|
|||
|
|||
|
тож самое скрин в предыдущем посту.
|
|
#6
|
||||
|
||||
|
Цитата:
|