Главная страница
    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.45 MB
Время: 0.007 c
14-3100
Мыш
2003-05-13 17:51
2003.06.02
Заклевали пацана?


1-2911
Tea
2003-05-22 20:51
2003.06.02
Как отловить окно


1-2922
Disruptor
2003-05-23 06:31
2003.06.02
Пробл. с отчетами - некорр. отображ. QRBand размером > страницы


14-3102
romychk
2003-05-12 23:35
2003.06.02
Защита глаз :)


14-3047
DDDeN
2003-05-13 13:51
2003.06.02
DelphiX для Delphi 6





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский