A image processing library for D, inspired by Pillow.
Read the documentation here.
- Simple, Extensible API
- Controllable internals with suitable defaults
- Wide format support with extensive testing
- High performance
- Support a variety of filters and transformations
- Thread Safety (pending)
import daffodil;
import daffodil.filter;
import daffodil.transform;
void main() {
// daffodil allows you to choose what format pixels are stored with
// defaults to `real` for when you don't care about memory usage.
auto image = load!uint("daffodil.bmp");
// concise filter usage, with a simple saving API
image.gaussianBlurred(1.4)
.save("blurry_daffodil.bmp");
// easy transformations
image.flip!"y";
image.save("upside_down_daffodil.bmp");
}
Add daffodil as a dependency to your dub.json:
"dependencies": {
"daffodil": "~>0.1.1"
}
Or fetch the package directly:
dub fetch daffodil
Tests use the unit-threaded framework and can be run using:
dub test
Documentation is written using the sphinx framework and a custom D domain/autodoc for sphinx (sphinxddoc).
To build the documentation, simply run:
make html