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

Копия экрана!!!   Найти похожие ветки 

 
Ser_ega   (2004-01-09 23:17) [0]

Доброго вам времени суток!!! Подскажите пожалуйста, как сделать копию своего экрана и сохранить его в файл JPG??? А если возможно то и копию определенного прямойгольнака экрана!! Ну мне нужно скопировать много картинок, чтоб там не было лишнего (кнопок, текстов и т.д.) только картинку!!!


 
Stilgar ©   (2004-01-09 23:29) [1]

JPEG есть в FAQ, вот копирование прямоугольника:

function GetSystemPalette : HPalette;
var
PaletteSize : integer;
LogSize : integer;
LogPalette : PLogPalette;
DC : HDC;
Focus : HWND;
begin
result:=0;
Focus:=GetFocus;
DC:=GetDC(Focus);
try
PaletteSize:=GetDeviceCaps(DC, SIZEPALETTE);
LogSize:=SizeOf(TLogPalette)+(PaletteSize-1)*SizeOf(TPaletteEntry);
GetMem(LogPalette, LogSize);
try
with LogPalette^ do begin
palVersion:=$0300;
palNumEntries:=PaletteSize;
GetSystemPaletteEntries(DC, 0, PaletteSize, palPalEntry);
end;
result:=CreatePalette(LogPalette^);
finally
FreeMem(LogPalette, LogSize);
end;
finally
ReleaseDC(Focus, DC);
end;
end;

function CaptureScreenRect(ARect : TRect) : TBitmap;
var
ScreenDC : HDC;
begin
Result:=TBitmap.Create;
with result, ARect do begin
Width:=Right-Left;
Height:=Bottom-Top;
ScreenDC:=GetDC(0);
try
BitBlt(Canvas.Handle, 0,0,Width,Height,ScreenDC, Left, Top, SRCCOPY );
finally
ReleaseDC(0, ScreenDC);
end;
Palette:=GetSystemPalette;
end;
end;

Проверял, работает.



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

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



Память: 0.45 MB
Время: 0.016 c
1-63205
Ser_ega
2004-01-09 23:17
2004.01.20
Копия экрана!!!


1-63075
AlexVas
2004-01-07 19:01
2004.01.20
Обмен данными с использованием OutLook


3-62983
Silver_
2003-12-23 19:16
2004.01.20
Как через SQL сбацать такое


4-63438
Saris
2003-11-15 10:11
2004.01.20
Owner файла


8-63266
vvn
2003-09-17 13:16
2004.01.20
Вопрос по DelphiX. загрузка из x-file




   Наверх