Вниз
Скачать: CL | DM;

Корректное снятие видео при копировании образа экрана   Найти похожие ветки 

 
dmitry_12_08_74   (2008-03-11 14:26) [0]

Если во время копирования образа экрана запущен Media Palyer во время показа им видео, на снимке образа экрана вместо кадра из фильма останется чёрное пустое место. Как корректно скопировать кадр?

Сейчас копирую образ экрана с помощью процедуры из библиотеки jcl_&_jvcl, модуль JclGraphics:

procedure ScreenShot(bm: TBitmap; Left, Top, Width, Height: Integer; Window: THandle); overload;
var
 WinDC: HDC;
 Pal: TMaxLogPalette;
begin
 bm.Width := Width;
 bm.Height := Height;

 // Get the HDC of the window...
 WinDC := GetDC(Window);
 if WinDC = 0 then
   raise EJclGraphicsError.CreateRes(@RsNoDeviceContextForWindow);

 // Palette-device?
 if (GetDeviceCaps(WinDC, RASTERCAPS) and RC_PALETTE) = RC_PALETTE then
 begin
   FillChar(Pal, SizeOf(TMaxLogPalette), #0);  // fill the structure with zeros
   Pal.palVersion := $300;                     // fill in the palette version

   // grab the system palette entries...
   Pal.palNumEntries := GetSystemPaletteEntries(WinDC, 0, 256, Pal.palPalEntry);
   if Pal.PalNumEntries <> 0 then
     bm.Palette := CreatePalette(PLogPalette(@Pal)^);
 end;

 // copy from the screen to our bitmap...
 BitBlt(bm.Canvas.Handle, 0, 0, Width, Height, WinDC, Left, Top, SRCCOPY);

 ReleaseDC(Window, WinDC);        // finally, relase the DC of the window
end;


 
DVM ©   (2008-03-11 14:40) [1]

там оверлей используется поэтому и не получается



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.042 c
15-1271190602
Юрий
2010-04-14 00:30
2010.08.27
С днем рождения ! 14 апреля 2010 среда


15-1267614248
Сергей
2010-03-03 14:04
2010.08.27
Дуэт Пугачева Орбакайте


15-1271942767
Mozart
2010-04-22 17:26
2010.08.27
построение октаэдра


15-1267567565
Delphi5.01
2010-03-03 01:06
2010.08.27
Редакт. настр. прокси для Firefox и Opera (решение оплачивается)


15-1272463529
@!!ex
2010-04-28 18:05
2010.08.27
Кем пойти работать?




   Наверх