Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.28;
Скачать: CL | DM;

Вниз

LoadFromStream   Найти похожие ветки 

 
PURGEN   (2004-11-11 12:31) [0]

Как загрузить изображение ч/з image1.Picture.Bitmap.LoadFromStream(stream)??
Мне надо чтобы stream соответствовал некоторым байтами в середине файла IMAGES.DAT...
Как это получить....


 
Digitman ©   (2004-11-11 12:58) [1]


> надо чтобы stream соответствовал некоторым байтами в середине
> файла


это как ?

вообще-то stream - это экз-р класса-наследника TStream, а экз-р может соответствовать только самому себе и более ничему

может сподобишься таки пояснить, что это за "некоторые байты в середине", откуда они там взялись и какого рода инф-цию  хранят ?


 
PURGEN   (2004-11-11 13:12) [2]

Короче я сам не знаю че-такое ПОТОК..... Задача такая: хочу в Timage загрузить BMP, который я беру из файла IMAGES.dat. Этот файл это слияние двух bmp файлов ч/з NC (cntr+F10). Чето мне там сказали про поток а я ничего про это найти в сети не могу.. Может можно как-то подругому сделать... Короче мне надо вырезать "кусок" файла и загрузить его в TImage...вооот..


 
PURGEN   (2004-11-11 13:17) [3]

короче вот че мне написали:

если ты знаешь размер данных, то тебе несложно загрузить все данные в stream, а из него в image... readbuffer тебе поможет. Главное, в размерах не ошибиться

Че делать дальше не пойму... ну вобщем-то я не понимаю как "загрузить все данные в stream" а затем взять именно тот "кусок", который мне нужен....


 
Moiseev-KN ©   (2004-11-11 13:24) [4]

Mo;tn имеется ввиду использование функции Seek и Position?

procedure TfmOutline.bbLoadImageClick(Sender: TObject);
var Code: word;
   MS: TMemoryStream;
   Jpi: TJPEGImage;
   Bmp: TBitMap;
begin
 if od_1.Execute then
 begin
   MS := TMemoryStream.Create;
   MS.LoadFromFile(od_1.FileName);
   try
     MS.Seek(0,0);
     MS.Read(Code,SizeOf(Code));
     Bmp := TBitMap.Create;
     Jpi:=TJpegImage.Create;
     case Code of
     $4D42:
     begin
       MS.Position := 0;
       Bmp.LoadFromStream(MS);
       imgOutline.Picture.Assign(Bmp);
       ImgLoadedBmp := True;
       bbSaveToOutline.Enabled := True;
     end;
     $D8FF:
     begin
       MS.Position := 0;
       Jpi.LoadFromStream(MS);
       imgOutline.Picture.Assign(Jpi);
       ImgLoadedJpeg := True;
       bbSaveToOutline.Enabled := True;
     end;
   end;
   finally
     MS.Free;
     Jpi.Free;
   end;
 end;
end;


 
Digitman ©   (2004-11-11 13:45) [5]


> PURGEN


> файл это слияние двух bmp файлов


т.е. в этом файле таким немудреным макаром последовательно записаны два якобы правильных битмап-образа, из которых тебя интересует конкретно последний ..

я правильно понял ?

в таком случае последний (т.е. второй по счету) битмап считывается из потока до смешного простым способом :

for i:= 1 to 2 do
image1.Picture.Bitmap.LoadFromStream(stream);


 
PURGEN   (2004-11-11 14:59) [6]

Спасибо все работает.....


 
Digitman ©   (2004-11-11 15:14) [7]

ну и аминь.

но многоточие настораживает.



Страницы: 1 вся ветка

Текущий архив: 2004.11.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.045 c
3-1098870506
Mishenka
2004-10-27 13:48
2004.11.28
Есть ли для баз данных компонент типа ListView ?


1-1100540170
jenbond
2004-11-15 20:36
2004.11.28
Help, очень нужно!


4-1097760226
Дядя
2004-10-14 17:23
2004.11.28
Срочно - надо заблокировать клаву и мышь, Но


1-1100371562
TSoftman
2004-11-13 21:46
2004.11.28
Прорисовка в TreeView


14-1100248016
Koala
2004-11-12 11:26
2004.11.28
Модем внутренний, полный