Russian Qt Forum
Сентябрь 30, 2024, 18:23 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Вывод изображения через QDataStream  (Прочитано 5572 раз)
air
Гость
« : Ноябрь 14, 2006, 09:34 »

Народ! Подскажите, как реализовать вывод изображения через QDataStream, если имеется файл своего формата, который содержит в себе паспорт и непосредственно само цифровое изображение. Длина паспорта в байтах известна.
Записан
Dendy
Гость
« Ответ #1 : Ноябрь 14, 2006, 14:23 »

Если изображение в одном из форматов, с которьІми работает Qt, то:

Код:
QFile file( "myimage" );
file.open( QIODevice::ReadOnly );
file.seek( image_offset );
QImage image = QImageReader( &file ).read();
Записан
Martiro
Гость
« Ответ #2 : Ноябрь 24, 2006, 09:42 »

У меня похожая задача, но проще. Подскажите, как открыть графический файл (формат *.bmp) используя QDataStream? Версия Qt 3.3.3.
Записан
bigirbis
Гость
« Ответ #3 : Ноябрь 24, 2006, 15:28 »

Цитировать
У меня похожая задача, но проще. Подскажите, как открыть графический файл (формат *.bmp) используя QDataStream? Версия Qt 3.3.3.

Хелпа по Qt3 нет, но скорее всего:
Код:
QFile f( "file.bmp" );
if( file.open( QIODevice::ReadOnly ) )
{
 QDataStream( &file );
 ...
}
Записан
Dendy
Гость
« Ответ #4 : Ноябрь 24, 2006, 18:17 »

QDataStream - обёртка над QIODevice'ом для платформонезависимого перегона данньІх в типьІ. Если в QDataStream лежит картинка в одном из форматов, что понимает загрузчик картинок Qt (bmp, png, jpeg, xmp, ...) - то читать нужно непосредственноиз девайса:

Код:
QImage image;
image.load( data_stream.device() );


либо

Код:
QImageReader reader( data_stream.device() );
QImage image = reader.read();
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.126 секунд. Запросов: 21.