symbian-qemu-0.9.1-12/zlib-1.2.3/contrib/delphi/readme.txt
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 
       
     2 Overview
       
     3 ========
       
     4 
       
     5 This directory contains an update to the ZLib interface unit,
       
     6 distributed by Borland as a Delphi supplemental component.
       
     7 
       
     8 The original ZLib unit is Copyright (c) 1997,99 Borland Corp.,
       
     9 and is based on zlib version 1.0.4.  There are a series of bugs
       
    10 and security problems associated with that old zlib version, and
       
    11 we recommend the users to update their ZLib unit.
       
    12 
       
    13 
       
    14 Summary of modifications
       
    15 ========================
       
    16 
       
    17 - Improved makefile, adapted to zlib version 1.2.1.
       
    18 
       
    19 - Some field types from TZStreamRec are changed from Integer to
       
    20   Longint, for consistency with the zlib.h header, and for 64-bit
       
    21   readiness.
       
    22 
       
    23 - The zlib_version constant is updated.
       
    24 
       
    25 - The new Z_RLE strategy has its corresponding symbolic constant.
       
    26 
       
    27 - The allocation and deallocation functions and function types
       
    28   (TAlloc, TFree, zlibAllocMem and zlibFreeMem) are now cdecl,
       
    29   and _malloc and _free are added as C RTL stubs.  As a result,
       
    30   the original C sources of zlib can be compiled out of the box,
       
    31   and linked to the ZLib unit.
       
    32 
       
    33 
       
    34 Suggestions for improvements
       
    35 ============================
       
    36 
       
    37 Currently, the ZLib unit provides only a limited wrapper around
       
    38 the zlib library, and much of the original zlib functionality is
       
    39 missing.  Handling compressed file formats like ZIP/GZIP or PNG
       
    40 cannot be implemented without having this functionality.
       
    41 Applications that handle these formats are either using their own,
       
    42 duplicated code, or not using the ZLib unit at all.
       
    43 
       
    44 Here are a few suggestions:
       
    45 
       
    46 - Checksum class wrappers around adler32() and crc32(), similar
       
    47   to the Java classes that implement the java.util.zip.Checksum
       
    48   interface.
       
    49 
       
    50 - The ability to read and write raw deflate streams, without the
       
    51   zlib stream header and trailer.  Raw deflate streams are used
       
    52   in the ZIP file format.
       
    53 
       
    54 - The ability to read and write gzip streams, used in the GZIP
       
    55   file format, and normally produced by the gzip program.
       
    56 
       
    57 - The ability to select a different compression strategy, useful
       
    58   to PNG and MNG image compression, and to multimedia compression
       
    59   in general.  Besides the compression level
       
    60 
       
    61     TCompressionLevel = (clNone, clFastest, clDefault, clMax);
       
    62 
       
    63   which, in fact, could have used the 'z' prefix and avoided
       
    64   TColor-like symbols
       
    65 
       
    66     TCompressionLevel = (zcNone, zcFastest, zcDefault, zcMax);
       
    67 
       
    68   there could be a compression strategy
       
    69 
       
    70     TCompressionStrategy = (zsDefault, zsFiltered, zsHuffmanOnly, zsRle);
       
    71 
       
    72 - ZIP and GZIP stream handling via TStreams.
       
    73 
       
    74 
       
    75 --
       
    76 Cosmin Truta <cosmint@cs.ubbcluj.ro>