![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
JPG [D5, Win95/98]
Тупой Олень! © (2002-01-16 12:50:00)Можно ли из буфера скриншот экрана вставить в jpg-файл?
Ghost. (2002-01-19 12:23:00) [1]procedure ......(Sender: TObject);
var
bmp: TBitmap;
DC: HDC;
MyJpeg: TJpegImage;
scale: Double;
begin
bmp:=TBitmap.Create;
bmp.Height:=Screen.Height;
bmp.Width:=Screen.Width;
DC:=GetDC(0);
bitblt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height, DC, 0, 0, SRCCOPY);
ReleaseDC(0, DC);
MyJpeg:= TJpegImage.Create;
MyJpeg.Assign(bmp);
try
if MyJpeg.Height>MyJpeg.Width then scale:={тут размер будующего изображения}/MyJpeg.Height
else scale:={тут размер будующего изображения}/MyJpeg.Width;
try
bmp.Width:=Round( MyJpeg.Width*scale );
bmp.Height:=Round( MyJpeg.Height*scale );
bmp.Canvas.StretchDraw(bmp.Canvas.Cliprect, MyJpeg);
Self.Canvas.Draw(100,10,bmp);
MyJpeg.Assign(bmp);
MyJpeg.SaveToFile(название создаваемого файла);
finally
bmp.free;
end;
finally
MyJpeg.free;
end;
form1.Close;
end;
Velocity (2002-01-19 10:03:00) [2]Разумеется. Как - уже не помню, но если надо, придётся напрячься. Помню только что просто делается.