Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как узнать что в MemoryStream'е?


negrila ©   (2004-08-08 02:11:00) 

У меня есть memorystream. Как узнать что в нем bmp или jpeg? Ловить exception для bitmap'а и пытаться загрузить как jpeg?

Все что мне надо - отобразить изображение, помещенное в MemoryStream другой программой. Но если там jpeg возникает исключение на Image.Picture.Bitmap.LoadFromStream


WondeRu   (2004-08-09 13:12:00) [1]


var
 buffer: array[0..1] of Byte;

MStream.Read(buffer, 2);
MStream.Position := 0;//необязательно, но рекомендую

if (buffer[0] = $42) and (buffer[1] = $4D) //проверка на сигнатуру "BM"  в начале bmp файла!!!
 then //это bmp
 else //чего-то другое, н-р, jpeg


Cobalt   (2004-08-08 23:30:00) [2]

Слышал, что есть такой модуль - Jpeg называется. Он, якобы, позволяет просматривать при помощи TImage картинки-jpeg


negrila   (2004-08-08 22:54:00) [3]

Никто с таким не сталкивался? А как вы работаете с BLOB полями? Там хранится изображение, как его показать в TImage'е если я не знаю bmp там или jpeg?


Наверх

Титульная страница Поиск, карта сайта Написать письмо