Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вырезание куска из TBitmap [D5, D6, D7, WinME, NT4, Win2k, WinXP]


id ©   (2006-07-05 17:38:00) 

У меня есть следующий код:

function EraseBitmap(Bitmap: TBitmap; LeftTop: TPoint; Width, Height: integer): TBitmap;
 var
   R: TRect;
 begin
   Result:= TBitmap.Create;
   R.Left:= LeftTop.X;
   R.Top:= LeftTop.Y;
   R.Right:= LeftTop.X + Width;
   R.Bottom:= LeftTop.Y + Height;
   Result.Width:= Width;
   Result.Height:= Height;
   Result.Canvas.CopyRect(R, Bitmap.Canvas, Rect(LeftTop.X, LeftTop.Y, LeftTop.X + Result.Width, LeftTop.Y + Result.Height));
 end;


И он вырезает правильно, но остаётся белая полоса ровно в два раза меньше, чем парамерты передаваемые в LefTop(x, y).
Не могу побороть :(


antonn   (2006-07-05 18:41:00) [1]

id   (05.07.06 17:38)
Result.Canvas.CopyRect( R,Bitmap.Canvas, Rect(LeftTop.X, LeftTop.Y, LeftTop.X + Result.Width, LeftTop.Y + Result.Height));

подставь rect(0,0,Width, Height); id Спасибо. Помогло.


Наверх

Титульная страница Поиск, карта сайта Написать письмо