Вниз
Скачать: CL | DM;

Cохранение нескольких изображений в один файл?   Найти похожие ветки 

 
Steplerr ©   (2005-12-21 13:50) [0]

Пытаюсь сохранить несколько изображений в один файл примерно таким образом:

procedure save;
var f:File of TBitmap;
begin
AssignFile(f,"file.img");
ReWrite(f);
Write(f,Image1.Picture.Bitmap);
Write(f,Image2.Picture.Bitmap);
CloseFile(f);
end;

А мне сохраняется вместо изображения - какие-то 4 крякозябла. Пробовал TPicture, TImage..., но всё равно не получается!!! Помоготе, кто может!!!!!

P.S. Нужно чтобы изображения можно было считать по одному из  другой программы.


 
Плохиш ©   (2005-12-21 14:14) [1]

TBitmap - это указатель, его размер сейчас 4 байта.
Запись нескольких сущностей в один файл здесь каждую неделю обсасывается.


 
Steplerr ©   (2005-12-21 19:59) [2]

Может и обсасывается, но ни какой толковой информации я так и не нашёл! Посоветуйте что-нибудь дельное!!!


 
з. танька   (2005-12-21 20:08) [3]

используй методы
Image1.Picture.Graphic.SaveToStream();
Image1.Picture.Bitmap.SaveToStream();

я делала так: заводишь объект FS: TFileStream на свой "общий" файл,
Temp: TMemoryStream - тоже надо..
далее алгоритм такой:
1 сохраняешь картинку в поток Temp указанным выше методом
2 берешь у нево (потока) Size
3 пишешь етот size в FS
4 пишешь Temp в FS

size потом понадобится при чтении. чтение думаю сам догадаешся по аналогии типо как матрешку разбираешь етот твой общий файл в обратном порядке. вот.


 
Steplerr ©   (2005-12-21 20:39) [4]

Работает! Спасибо, з. танька, всё толково обьяснила!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
9-1122632450
HPR
2005-07-29 14:20
2006.01.08
Не работают ссылки на файлы библиотек:


14-1134557299
vecna
2005-12-14 13:48
2006.01.08
про Delphi2006


14-1134548344
Lost_delpher
2005-12-14 11:19
2006.01.08
конверт TDateTime - DOUBLE - разные рез-ты


2-1134924381
newhite
2005-12-18 19:46
2006.01.08
Звездочки


2-1134922994
Arazel
2005-12-18 19:23
2006.01.08
Как отсортировать название файлов/папок ListBox как Explorer?




   Наверх