Difference between revisions of "ZLibCompress"
From SCAR Divi Manual
(Created page with "==Definition== <source lang="scar" lines="false"> function ZLibCompress(const Str: AnsiString): AnsiString; </source> ==Availability== SCAR Divi 3.31 > Current ==Description== ...") |
(→Description) |
||
| Line 8: | Line 8: | ||
==Description== | ==Description== | ||
| − | Compresses a given string '''Str''' using the [http://en.wikipedia.org/wiki/ | + | Compresses a given string '''Str''' using the [http://en.wikipedia.org/wiki/Zlib Zlib] compression library. An [[:Category:Encoding Functions|encoding]] is often used to convert the compressed data to a "readable" format. A ZLib compressed string can be decompressed with [[ZLibDecompress]]. |
==Example== | ==Example== | ||
Latest revision as of 16:25, 9 February 2012
Definition
function ZLibCompress(const Str: AnsiString): AnsiString;
Availability
SCAR Divi 3.31 > Current
Description
Compresses a given string Str using the Zlib compression library. An encoding is often used to convert the compressed data to a "readable" format. A ZLib compressed string can be decompressed with ZLibDecompress.
Example
var
Str, Compressed, Encoded: AnsiString;
begin
Str := 'Lorem ipsum dolor sit amet, consectetur a dipiscing elit. Duis male' +
'suada, lorem ut pellentesque vehicula, urna nibh ultricies eros, ut hend' +
'rerit nisi mauris ut massa. Phasellus sed velit velit. Nullam id nunc nu' +
'lla, tristique dignissim libero. Cras viverra magna quis sapien aliquam ' +
'egestas. Curabitur pellentesque molestie odio, et placerat metus auctor ' +
'id. Mauris auctor euismod turpis sit amet interdum. Nam molestie nunc le' +
'ctus. Maecenas aliquam bibendum ipsum, vel cursus elit tincidunt in. Don' +
'ec metus sapien, egestas in tempor eget, malesuada non leo. Cum sociis n' +
'atoque penatibus et magnis dis parturient montes, nascetur ridiculus mus' +
'. In hac habitasse platea dictumst. Mauris vel aliquam enim. Etiam ferme' +
'ntum tincidunt nisl in placerat. Integer congue convallis nisl, ut eleif' +
'end elit dictum quis.'#13#10#13#10 +
'Fusce vitae ultricies lorem. Aenean ultricies pretium massa eget feugiat' +
'. Cras at tincidunt ligula. Suspendisse accumsan blandit eros, ac bibend' +
'um sem elementum porttitor. Mauris vel orci eget massa dapibus eleifend ' +
'a ultrices purus. Sed fermentum mi id est pellentesque tincidunt. Duis p' +
'orttitor interdum nunc in pretium. Donec sit amet ipsum vel nulla elemen' +
'tum ullamcorper quis id erat. Pellentesque arcu eros, aliquet porttitor ' +
'molestie ac, pharetra vitae libero. Etiam sed quam mi. Phasellus nec nis' +
'i ac purus ultrices pulvinar sed et quam. Nullam magna nisl, elementum i' +
'n tempus in, gravida eu neque. Sed a leo ipsum. Nulla vulputate ante dol' +
'or. Etiam dapibus aliquam laoreet. Cras pulvinar, augue id interdum laci' +
'nia, turpis nunc euismod arcu, sit amet imperdiet nunc mi in diam.';
WriteLn('Original length: ' + IntToStr(Length(Str)));
Compressed := ZLibCompress(Str);
WriteLn('Length after compression: ' + IntToStr(Length(Compressed)));
Encoded := StrToBase64(Compressed);
WriteLn('Length after compression and encoding: ' + IntToStr(Length(Encoded)));
end.Output:
Original length: 1598 Length after compression: 752 Length after compression and encoding: 1004