Текущий архив: 2003.09.11;
Скачать: CL | DM;
Вниз
Как отрендерить опенгл на принтер? Найти похожие ветки
← →
BANick (2003-03-08 13:18) [0]Пробовал
HRC := wglCreateContext(DC);
wglMakeCurrent(DC, HRC);
где DC=printer.canvas.handle;
выезжает пустой лист.
Пробовал
b:=tbitmap.Create;
b.Width:=ширина;
b.Height:=высота;
HRC := wglCreateContext(DC);
wglMakeCurrent(DC, HRC);
где ДС это битмап.Канвас.
тут рендеринг
BitBlt(hdcp,0,0,b.width,b.height,b.Canvas.Handle,0,0,SrcCopy);
b.Destroy;
так с битмап остается пустым.
Объясните плиз как ето сделать очень надо.
Заранее благодарен.
← →
BANick (2003-03-09 18:43) [1]Ну подскажите ПЛИИИЗ как напечатать из опенгл, очень надо.
← →
[Baradoo] (2003-03-09 21:18) [2]Я лично не знаю, но у меня есть идея попроще... Берешь копируешь
часть экрана, где у тебя OpenGL(с помощью copyrect), а потом вставляешь в Битмап, а оттуда уже печатаешь...
Просто, но надежно!
← →
BANick (2003-03-10 18:43) [3]незя - область где выводится опенгл 300х150, а на печать надо 10000х50000. а стретч - это потеря качества
← →
pasha676 (2003-03-11 09:20) [4]Рендеришь в битмап с нужным разрешением потом печатаешь.
← →
BANick (2003-03-11 18:37) [5]to pasha676
а как, я пробовал так как написано у меня выше, не получается, битмап остается пустым.
← →
pasha676 (2003-03-12 09:13) [6]Увы, чистый ОпенГЛ не пробывал (знаю надо - но времени нет :(). Так что ничего посоветовать не могу. Разбей на две подзадачи
1) Рендерим в битмап. Сохрани битмап, кинь в буфер, запиши, выведи в отдельной форме в TIMage - вообщем посмотри на результат в любом виде.
2) Если срендерилось нормально - то распечатать уже должен.
Страницы: 1 вся ветка
Текущий архив: 2003.09.11;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.008 c