Deflate (String function): Difference between revisions
Jump to navigation
Jump to search
m (→Syntax terms) |
m (→Usage notes) |
||
Line 33: | Line 33: | ||
==Usage notes== | ==Usage notes== | ||
<ul> | <ul> | ||
<li>The <var>[[NCMPBUF parameter|NCMPBUF]]</var> parameter must be set to a | <li>The <var>[[NCMPBUF parameter|NCMPBUF]]</var> parameter must be set to a | ||
non-0 value during <var class="product">Model 204</var>initialization to allow | non-0 value during <var class="product">Model 204</var>initialization to allow | ||
use of the <var>Deflate</var> function; otherise, invoking <var>Deflate</var> | use of the <var>Deflate</var> function; otherise, invoking <var>Deflate</var> | ||
causes request cancellation. | causes request cancellation. | ||
<li>As with any compression scheme, it is possible that a particular string will become longer after compression. This would happen, for example, if a deflated string were passed to | |||
<li>As with any compression scheme, it is possible that a particular string will become longer after compression. This would happen, for example, if a deflated string were passed to <var>Deflate</var>. | |||
<li>Short strings (less than 128 bytes) typically compress better with <code>fixedCode=true</code>. | <li>Short strings (less than 128 bytes) typically compress better with <code>fixedCode=true</code>. | ||
</ul> | </ul> |
Revision as of 22:12, 31 July 2012
Compress a longstring with deflate (String class)
[Introduced in Sirius Mods 7.4]
This function compresses a longstring using the "deflate" algorithm. The deflate algorithm is described completely in RFC 1951. It is very effective with HTML and XML data.
Syntax
%outString = string:Deflate[( [FixedCode= boolean], [LazyMatch= boolean], - [MaxChain= number])]
Syntax terms
%outString | The resulting compressed string. |
---|---|
string | The string to be compressed. |
FixedCode | FixedCode is an optional, name required, parameter that is a Boolean value that specifies whether the compression uses fixed codes or is dynamic, based on the contents of the input string.
|
LazyMatch | LazyMatch is an optional, name required, parameter that is a Boolean value that specifies whether to use "lazy match" compression, as specified in RFC 1951. The default value for this argument is False (do not use "lazy match" compression). |
MaxChain | MaxChain is an optional, name required, parameter that is a numeric value that specifies the maximum hash chain length, as explained in RFC 1951. The default value for this argument is 0. If specified, it must be between 0 and 99, inclusive. |
Usage notes
- The NCMPBUF parameter must be set to a non-0 value during Model 204initialization to allow use of the Deflate function; otherise, invoking Deflate causes request cancellation.
- As with any compression scheme, it is possible that a particular string will become longer after compression. This would happen, for example, if a deflated string were passed to Deflate.
- Short strings (less than 128 bytes) typically compress better with
fixedCode=true
.
Examples
In the following example, %out
is set to the compressed version of the given string:
%out = 'How much wood could a woodchuck chuck':deflate(fixedCode=true)