Google's greatest deflate compression

Lode Vandevenne ccf9f0588d Merge pull request #198 from Shivam7-1/patch-2 7 月之前
go e56f4dc8f7 Add a CGO wrapper 5 年之前
src 55bdd963ee Update lodepng_util.cpp 8 月之前
CMakeLists.txt bd64b2f055 mark version as 1.0.3 5 年之前
CONTRIBUTING.md 2936ed62e7 Rename CONTRIBUTING to CONTRIBUTING.md 9 年之前
CONTRIBUTORS 4fb0933e6a Update CONTRIBUTORS 8 年之前
COPYING b50b7ef8f8 Initial commit 12 年之前
Makefile 00e21c32d1 Change to O3 since it's faster than O2 now 4 年之前
README 975ac806fa Update README 8 年之前
README.zopflipng 5f48aa9f0e Update README.zopflipng 8 年之前

README

Zopfli Compression Algorithm is a compression library programmed in C to perform
very good, but slow, deflate or zlib compression.

The basic function to compress data is ZopfliCompress in zopfli.h. Use the
ZopfliOptions object to set parameters that affect the speed and compression.
Use the ZopfliInitOptions function to place the default values in the
ZopfliOptions first.

ZopfliCompress supports deflate, gzip and zlib output format with a parameter.
To support only one individual format, you can instead use ZopfliDeflate in
deflate.h, ZopfliZlibCompress in zlib_container.h or ZopfliGzipCompress in
gzip_container.h.

ZopfliDeflate creates a valid deflate stream in memory, see:
http://www.ietf.org/rfc/rfc1951.txt
ZopfliZlibCompress creates a valid zlib stream in memory, see:
http://www.ietf.org/rfc/rfc1950.txt
ZopfliGzipCompress creates a valid gzip stream in memory, see:
http://www.ietf.org/rfc/rfc1952.txt

This library can only compress, not decompress. Existing zlib or deflate
libraries can decompress the data.

zopfli_bin.c is separate from the library and contains an example program to
create very well compressed gzip files. Currently the makefile builds this
program with the library statically linked in.

The source code of Zopfli is under src/zopfli. Build instructions:

To build zopfli, compile all .c source files under src/zopfli to a single binary
with C, and link to the standard C math library, e.g.:
gcc src/zopfli/*.c -O2 -W -Wall -Wextra -Wno-unused-function -ansi -pedantic -lm -o zopfli

A makefile is provided as well, but only for linux. Use "make" to build the
binary, "make libzopfli" to build it as a shared library. For other platforms,
please use the build instructions above instead.

Zopfli Compression Algorithm was created by Lode Vandevenne and Jyrki
Alakuijala, based on an algorithm by Jyrki Alakuijala.