Вниз
Скачать: CL | DM;

Как записать содержимое окна OpenGL в bmp файл?   Найти похожие ветки 

 
PRT   (2006-07-06 18:11) [0]

Здрасьте. Вопросик есть, как сохранить содержимое формы, на которой рисуем в OpenGl в файл BMP.Использую код:
                       Bitmap:=TBitmap.Create;
                       Bitmap.Width:=Form1.Width;
                       Bitmap.Height:=Form1.Height;
                       
                       BitBlt(Bitmap.Canvas.Handle, 0, 0, Form1.Width,
                              Form1.Height, Form1.Handle, 0, 0, SRCCOPY); //1

                       {bt.Canvas.CopyRect(ClientRect,Form1.Canvas,
                                          Form1.ClientRect);}             //2

                       Bitmap.SaveToFile(pr_file);
                       Bitmap.Free;

Пробовал оба варианта (//1 и //2).
В //1 сохраняется только белый лист.
В //2 тоже остается белый квадрат Save Dialoga
Что делать???


 
Мефисто   (2006-07-06 20:04) [1]

Очевидно, что средствами OpenGL и производить копирование. Если я не ошибасю, то опень жль как-бы рабоатет со воим портом вывода изображения. Т.е. GDI о выводимом изображении средством OpenGL знать ничего не знает. Поищи в инете, был (а может еще и есть) проект GLScene или SceneGL (с исходным кодом на дельфе). Там такое вроде точно было, снять скриншот или определенную область.


 
antonn ©   (2006-07-06 20:11) [2]

PRT   (06.07.06 18:11)
BitBlt(Bitmap.Canvas.Handle, 0, 0, Form1.Width,
                             Form1.Height, Form1.Handle, 0, 0, SRCCOPY or $40000000);

помогло?



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.037 c
15-1153053677
Sergei1982
2006-07-16 16:41
2006.08.20
шлюз на Mandriva Linux


2-1154196824
Gnoll
2006-07-29 22:13
2006.08.20
програмно открыть доступ к ресурсам


6-1143832549
Новочеркасский Волк
2006-03-31 23:15
2006.08.20
Проводник удалённого компьютера.


15-1153836536
oldman
2006-07-25 18:08
2006.08.20
Последний день работы...


2-1154521483
Id
2006-08-02 16:24
2006.08.20
Функции в Delphi




   Наверх