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

Вниз

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

 
savyhinst ©   (2008-01-18 18:22) [0]

Здраствуйте.
Подскажите пож. как использовать TCompressionStream?
Желательно на примере сохранения и загрузки туда чего-либо. Например картинки из TImage.
Спасибо за внимание.


 
Palladin ©   (2008-01-18 18:27) [1]

как обычный stream, только соответственно read работать не будет
лучше использовать процедуры ZCompressStream/ZDecompressStream


 
Efir   (2008-01-18 20:56) [2]

Примерно так, запись:

var
 cs:TCompressionStream;
 f:TFileStream;
 bmp:TBitmap;

f:=TFileStream.Create("куда сохраняем", fmWrite);
cs:=TCompressionStream.Create(clDefault, f);
bmp.SaveToStream(cs);

Считывание:

const
 BuffSize = 16384;
var
 f:TFileStream;
 ms:TMemoryStream;
 cs:TDecompressionStream;
 BytesRead:integer;
 bmp:TBitmap;

ms:=TMemoryStream.Create;
f:=TFileStream.Create(FileName, fmOpenRead);
cs:=TDecompressionStream.Create(f);
repeat
 BytesRead:=cs.Read(Buffer, BuffSize);
 ms.Write(Buffer, BytesRead);
until BytesRead<BuffSize;
bmp.ReadFromStream(ms);

Соответственно не забывая try-finaly и free.



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
4-1183388569
Углук
2007-07-02 19:02
2008.02.10
Xук на сообщение WM_SYSCOMMAND:SC_MAXIMIZE


4-1183336358
DagOT-R
2007-07-02 04:32
2008.02.10
Трей-иконки


4-1183512056
DagOT-R
2007-07-04 05:20
2008.02.10
Видимые окна


15-1200080417
Черный Шаман
2008-01-11 22:40
2008.02.10
Билинейная или бикубическая фильтрация с учетом TransparentColor


2-1200565325
mr1Andersen
2008-01-17 13:22
2008.02.10
Читать и писать одновременно.