1
0
Fork 0
hvif-light/README.md

50 lines
1.8 KiB
Markdown

# A simple library to render Haiku Vector Icons
:warning: **Do not use this library. It is not ready yet.**
The [Haiku](https://www.haiku-os.org) operating system uses a custom
format to represent vector icons. The Haiku Vector Icon Format
(hvif) is optimized to create tiny files that can be saved with
the file metadata. For a good technical overview of the format see
[this](http://blog.leahhanson.us/post/recursecenter2016/haiku_icons.html)
blog post by Leah Hanson. The goal of this library is to allow the
usage of this format independent of the Haiku ecosystem.
The library is written in modern standard C and MIT licensed. When
finished it will feature a parser and rasterizer without any dependencies
beyond `libc`. Furthermore, a toy tool to convert *hvif* files into *png*
files is included.
The author is not associated with the Haiku project.
## Current State
The library is currently under heavy development. The current parser
should be able to parse *hvif* files created with current Haiku builds,
but is mostly untested. There is no standalone rasterizer yet, but an
experimental rasterizer based on [cairo](https://www.cairographics.org/)
is included. The purpose of this rasterizer is testing. It is not feature
complete, but renders most real world icons reasonably well.
The next step is the preparation of a testing infrastructure. This should
be done before work on the rasterizer begins.
## Compiling
The build system is standard auto tools. To compile on a fresh clone run:
```bash
$ autoreconf -i
$ ./configure
$ make -j
```
HTML documentation can be generated with `make html` if Doxygen is
installed.
## Contribution
Contributions are very welcome. Please send patches or bugreports to
`commits@schurr.at`. If you are unfamiliar with the Email based git
workflow, see [this](https://git-send-email.io/) excellent tutorial.