Название: [Решено] BitBlt - а как на Qt? Отправлено: Alex_C от Март 26, 2012, 16:56 Для быстрого вывода графики в своей программе использую ф-цию WinAPI BitBlt. Правильно ли я понимаю, что в Qt вместо нее, если хочу получить кросс-платформенное приложение, нужно использовать QPainter? Как у него со скоростью вывода?
Название: Re: BitBlt - а как на Qt? Отправлено: GreatSnake от Март 26, 2012, 17:05 В QPainter включен double-buffering, что естественно сказывается на производительности.
Название: Re: BitBlt - а как на Qt? Отправлено: Igors от Март 26, 2012, 21:11 Для быстрого вывода графики в своей программе использую ф-цию WinAPI BitBlt. Правильно ли я понимаю, что в Qt вместо нее, если хочу получить кросс-платформенное приложение, нужно использовать QPainter? Как у него со скоростью вывода? Хреново, особенно с текстомНазвание: Re: BitBlt - а как на Qt? Отправлено: GreatSnake от Март 27, 2012, 07:42 Для быстрого вывода графики в своей программе использую ф-цию WinAPI BitBlt. Правильно ли я понимаю, что в Qt вместо нее, если хочу получить кросс-платформенное приложение, нужно использовать QPainter? Как у него со скоростью вывода? Хреново, особенно с текстомНазвание: Re: BitBlt - а как на Qt? Отправлено: Alex_C от Март 27, 2012, 08:24 А причём здесь вывод текста и bitblt()? Потому как для быстрого вывода текста без мелькания сначала его TextOut на Bitmap в памяти, а затем BitBlt на нужный канвас.... Плохо это, что хреново. Хотя с другой стороны double-buffering и подразумевает сначала отрисовку в памяти, а затем уже и вывод картинки на экран. Название: Re: BitBlt - а как на Qt? Отправлено: LisandreL от Март 27, 2012, 09:09 сначала его TextOut на Bitmap в памяти, а затем BitBlt на нужный канвас... Ну так никто не запрещает рисовать в QPixmap, а потом выводить drawPixmap.Mandelbrot Example посмотрите. Название: Re: BitBlt - а как на Qt? Отправлено: Alex_C от Март 27, 2012, 10:24 Ну так никто не запрещает рисовать в QPixmap, а потом выводить drawPixmap. Mandelbrot Example посмотрите. Отличный пример! Вопрос снят! Большое спасибо! Название: Re: [Решено] BitBlt - а как на Qt? Отправлено: Igors от Март 27, 2012, 10:27 Интересно сравнить скорость (Qt) вывода "просто на экран" и "через QPixmap"
Название: Re: [Решено] BitBlt - а как на Qt? Отправлено: GreatSnake от Март 27, 2012, 11:22 Интересно сравнить скорость (Qt) вывода "просто на экран" и "через QPixmap" А не так-то просто это сделать, т.к. double-buffering можно отключить только на X11 (см. Qt::WA_PaintOnScreen).2 Alex_C: Qt всё уже за тебя сделала) Название: Re: [Решено] BitBlt - а как на Qt? Отправлено: Igors от Март 27, 2012, 11:34 А не так-то просто это сделать, т.к. double-buffering можно отключить только на X11 (см. Qt::WA_PaintOnScreen). Иногда надо "тупенько" :) Просто замеряем с/без QPixmap, с точки зрения пользователя, не вдаваясь ни в какие нюансы. На моей платформе (OSX) через QPixmap намного медленнее (не знаю почему) |