![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
SABROG |
![]()
Сообщение
#1
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
Хочу такую штуку. Есть картинка любого формата, но этот формат известен для QImageReader и мне не надо ничего знать о внутренней структуре файла. При этом, если я сделаю QImageReader::read(), то вся картинка целиком помещается в оперативу. Я этого не хочу, а хочу иметь возможность читать пиксели из стрима (в реалтайме с винчестера) и чтобы QImageReader сам проводил необходимые операции по распаковки и декодированию пикселей на лету. В общем сделать точно также как это делается для QTextStream/QDataStream, но для готовых пикселей и чтобы при этом в память вся картинка не загружалась. Хочу это сделать только средствами Qt.
--- Нашел другое решение:
Т.е. говорю QImageReader'у возвратить мне кусок нужного размера (500x500) по координатам 800, 800. В диспетчере задач память аккурат жрется в зависимости от размера запрошенного куска. --- И все-таки нет, вижу, что программа отъедает 66 мегов оперативы (загружает файл целиком), а потом освобождает ненужное. Сообщение отредактировал SABROG - 17.4.2009, 19:14 |
|
|
ViGOur |
![]()
Сообщение
#2
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
Я думаю, что скорее всего с этим никто не заморачивался, потому и решили это сделть таким простым путем (прочитал все, скопировал нужный регион, удалил ненужное).
Скорее всего тебе прийдется писать подобное самому, и при этом лезть в стандарты формирования картинок... |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 8.3.2025, 10:38 |