Вниз
Скачать: 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.027 c
2-1154597818
Jimmy
2006-08-03 13:36
2006.08.20
Ошибка при открытии файла.


4-1145909672
Volf_555
2006-04-25 00:14
2006.08.20
Как отправить программе комбинацию клавиш?!


2-1154538692
Tivaya
2006-08-02 21:11
2006.08.20
Поток в потоке


1-1152440122
chizra
2006-07-09 14:15
2006.08.20
Инициализация локальных указателей...


2-1153685169
Adios
2006-07-24 00:06
2006.08.20
Присвоение процедуры




   Наверх