tree: 30c9c02b788512049d5993780f61b936b6c2f5a2 [path history] [tgz]
  1. cmake/
  2. include/
  3. src/
  4. CMakeLists.txt
  7. Makefile
  8. README.cobalt
  10. woff2.gyp

´╗┐This is a README for the font compression reference code. There are several compression related modules in this repository.

brotli/ contains reference code for the Brotli byte-level compression algorithm. Note that it is licensed under the MIT license.

src/ contains the C++ code for compressing and decompressing fonts.

Build & Run

This document documents how to run the compression reference code. At this writing, the code, while it is intended to produce a bytestream that can be reconstructed into a working font, the reference decompression code is not done, and the exact format of that bytestream is subject to change.

The build process depends on the g++ compiler.


On a standard Unix-style environment:

git clone --recursive
cd woff2
make clean all

Alternatively, if Brotli is already installed on your system you can use CMake to build executables and libraries:

git clone
cd woff2
mkdir out
cd out
cmake ..
make install

By default, shared libraries are built. To use static linkage, do:

cd woff2
mkdir out-static
make install


Ensure the binaries from the build process are in your $PATH, then:

woff2_compress myfont.ttf
woff2_decompress myfont.woff2


Also please refer to documents (currently Google Docs):

WOFF Ultra Condensed file format: proposals and discussion of wire format issues (PDF is in docs/ directory)

WIFF Ultra Condensed: more discussion of results and compression techniques. This tool was used to prepare the data in that document.