Вниз
Скачать: 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.028 c
2-1154588715
Zilog
2006-08-03 11:05
2006.08.20
PostMessage(Edit.Handle,WM_KEYDOWN,code,0);


15-1153331373
Юрий Зотов
2006-07-19 21:49
2006.08.20
Что Вы думаете о буквоедах?


3-1150289387
Still Swamp
2006-06-14 16:49
2006.08.20
Out of memory в TIBQuery и FB


2-1154109859
Lexx_Lamer
2006-07-28 22:04
2006.08.20
Вот задачка!!!


15-1152884134
Juice
2006-07-14 17:35
2006.08.20
Как правильно сопровождать проект ?




   Наверх