Re[2]: Можно ли ускорить BitBlt?
От: Multy  
Дата: 08.08.06 15:41
Оценка:
Здравствуйте, korzhik, Вы писали:

K>Здравствуйте, Multy, Вы писали:


M>>Вобщем нужно скопировать содержимое другого окна приложения в битмап.


M>> Wd — указатель окна

M>> BMP:= TBitmap.Create;
M>> Windows.GetClientRect(WD, ARect);
M>> with BMP, ARect do
M>> begin
M>> Width := ARect.Right — ARect.Left;
M>> Height := ARect.Bottom — ARect.Top;
M>> WinDC:=GetWindowDC(wd);// получаем для окна контекст устройства
M>> BitBlt(Canvas.Handle, 0, 0, Width, Height, WinDC, 0, 0, SRCCOPY);
M>> end;

M>>Всё хорошо, только BitBlt работает очень медленно, нельзя ли как-то это ускорить?

M>>Или, может быть, есть другие функции.

K>а color formats буферов совпадают? А то BitBlt не только битмапы копирует, но и конвертирует если color formats разный


Совпадет.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.