Вниз
Скачать: 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.022 c
4-63433
Дубинин Алексей
2003-11-13 22:41
2004.01.20
WM_SYSCOMMAND


3-63017
Trad
2003-12-22 21:40
2004.01.20
арифметика с данными из БД


11-63045
=Sniper=
2003-05-04 12:32
2004.01.20
Editbox и Combobox


1-63190
ИМХО
2004-01-06 18:27
2004.01.20
По поводу Application.ProcessMessages


14-63356
asddf3e53fwa
2003-12-29 10:00
2004.01.20
вопрос по FreeBSD. Посылал уже в другие форумы- ответов нет :(




   Наверх