crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в QImageReader
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
ViGOur Дата 18.4.2009, 20:08
  Я думаю, что скорее всего с этим никто не заморачивался, потому и решили это сделть таким простым путем (прочитал все, скопировал нужный регион, удалил ненужное).

Скорее всего тебе прийдется писать подобное самому, и при этом лезть в стандарты формирования картинок...
SABROG Дата 17.4.2009, 18:25
  Хочу такую штуку. Есть картинка любого формата, но этот формат известен для QImageReader и мне не надо ничего знать о внутренней структуре файла. При этом, если я сделаю QImageReader::read(), то вся картинка целиком помещается в оперативу. Я этого не хочу, а хочу иметь возможность читать пиксели из стрима (в реалтайме с винчестера) и чтобы QImageReader сам проводил необходимые операции по распаковки и декодированию пикселей на лету. В общем сделать точно также как это делается для QTextStream/QDataStream, но для готовых пикселей и чтобы при этом в память вся картинка не загружалась. Хочу это сделать только средствами Qt.
---
Нашел другое решение:

reader.setClipRect(QRect(800, 800, 500, 500));


Т.е. говорю QImageReader'у возвратить мне кусок нужного размера (500x500) по координатам 800, 800. В диспетчере задач память аккурат жрется в зависимости от размера запрошенного куска.
---
И все-таки нет, вижу, что программа отъедает 66 мегов оперативы (загружает файл целиком), а потом освобождает ненужное.
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 19.4.2024, 18:18