Название: Снять скриншот области экрана. Отправлено: mcrads от Декабрь 12, 2009, 14:17 Подскажите пожалуйста, есть ли в Qt более шустрая шункция сняти скриншота чем QPixmap::grabWindow()? необходима скорость реакции максимум две сотки секунды, а пока что имеется только пять десяток =( большая проблема получается с этим.
и еще. как лучше реализовать снятие скриншота ЧАСТИ экрана? по выделению? Название: Re: Снять скриншот области экрана. Отправлено: mcrads от Декабрь 12, 2009, 14:18 извиняюсь за ошибки, торопился =)ыы
Название: Re: Снять скриншот области экрана. Отправлено: lit-uriy от Декабрь 12, 2009, 14:33 на счёт скорости не скажу, а насчёт области экрана смотри программку с открытыми исходниками:
http://mapper.ru/screengrab/ у неё есть режим копирования области экрана Название: Re: Снять скриншот области экрана. Отправлено: mcrads от Декабрь 12, 2009, 14:42 Благодарю!!!! сейчас взгляну...
Название: Re: Снять скриншот области экрана. Отправлено: zenden от Декабрь 12, 2009, 15:52 Опа, ссылку в мемориз. Может еще кто знает компактный графичекий редактор на Qt с минимумом необходимых функций? Всё что нужно - обрезать, ужать, сделать надпись, пометить маркером, затереть. GPL естессна
Название: Re: Снять скриншот области экрана. Отправлено: DOOMer от Декабрь 12, 2009, 16:13 mcrads
Более шустрее -- наверное только платформозависимым кодом. По поводу скриншота части экрана: QPixmap pixmap = QPixmap::grabWindow ( QApplication::desktop()->winId(), x, y, width, height) ; x, y, width, height -- переменные для верехнего угла области, и ширины высоты. Ну а если надо через юзерское выделение мышкой области экрана -- то тут сложней все. Получить скрин всего десктопа, отрисовать его на развёрнутом на весь экран модальном диалоге, и потом фильтровать события мыши (нажатие кнопок и перемещение). p.s. Я и сваял вышеуказанную софтину (ScreenGrab), там весьма кривой код (в том числе и в плане граббинга области экрана) Название: Re: Снять скриншот области экрана. Отправлено: mcrads от Декабрь 13, 2009, 09:53 Честно сказать, я заметил =)
В результате я сделал еще кривее =) я использую новое окно полупрозрачное без всяких виджетов. просто QDialog пустой. в рузультате им выделяется область экрана и потом снимается его положение и размеры =) но меня это не устраивает, так же как и отрисовка полноэкранного виджета с рабочим столом. вдруг пользователь захочет сначала на другой проге кликнуть? ломаю голову =( PS тут еще одна проблема появилась. называется Global Hotkeys. а QxTlib не встает =( |