Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.20;
Скачать: 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 вся ветка

Текущий архив: 2004.01.20;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.019 c
3-63005
Alex-kosmonavt
2003-12-23 11:21
2004.01.20
Insert


14-63390
PRO
2003-12-29 00:19
2004.01.20
Что лучше Delphi или C


8-63260
ChekhlatyAndrew
2003-09-15 20:24
2004.01.20
захват изображения с WEB - камеры


3-62962
ish
2003-12-24 18:25
2004.01.20
Фильтрация


1-63066
Petrovich
2004-01-08 16:08
2004.01.20
Как вставить пустую строку в INI-файл?