Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];

Вниз

Как сделать копию экрана, уменьшеную в два раза !?   Найти похожие ветки 

 
delpher_gray   (2003-05-22 20:39) [0]

Уважаемые Delpher"ы !!
Помогите решить такую проблему:
Я знаю как сделать скриншот экрана, а вот как его сжать в два раза, и сохранить в файл - незнаю =( Сжать нужно так, чтоб у меня была не четвертинка экрана, а весь но в уменьшенном масштабе.
Я могу вывести сжатый экран в TImage таким образом:

procedure ScreenShot;
var
Desk: TCanvas;
BitMap: TBitMap;
Jpg: TJpegImage;
begin
Desk := TCanvas.Create;
BitMap := TBitMap.Create;
Jpg := TJpegImage.Create;

Desk.Handle := GetDC(Hwnd_Desktop);
BitMap.Width := Screen.Width;
BitMap.Height := Screen.Height;
BitMap.Canvas.CopyRect(BitMap.Canvas.ClipRect, Desk, Desk.ClipRect);

Jpg.Assign(BitMap);
Jpg.JPEGNeeded;

Form1.Image1.Picture.Graphic := Jpg;
TJpegImage(Form1.Image1.Picture.Graphic).Scale := TJpegScale(1);

Jpg.Free;
BitMap.Free;
Desk.Free;
end;


Так у меня на экран выводится изображение, в 2 раза меньше экрана, а вот как его сохранить !? Я пробовал так: [b]Jpg.SaveToFile("screen.jpg");[/b], но так скриншот получается не уменьшенный, а во весь рост !!
Подскажите как решить эту проблему, и желательно сжать изображение без использования TImage !!
Заренее благодарен !


 
MBo   (2003-05-23 06:04) [1]

StetchBlt или TCanvas.StretchDraw



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

Форум: "Основная";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.023 c
3-2827
the great man
2003-05-15 12:24
2003.06.02
работа с *.dbf без BDE администратора


3-2803
jen_bond
2003-05-14 19:25
2003.06.02
Database not assigned


1-2884
sapsi
2003-05-22 11:53
2003.06.02
Рисование из другог потока


1-2889
frits
2003-05-22 16:26
2003.06.02
BitMap


1-2959
Nesterovsky
2003-05-18 11:21
2003.06.02
Как в TListView отображать записи разным шрифтом





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский