daffodil, a D image processing library

rikki cattermole via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Thu Jun 30 18:24:55 PDT 2016


On 01/07/2016 9:35 AM, Benjamin Schaaf wrote:
> daffodil is a image processing library inspired by python's Pillow
> (https://pillow.readthedocs.org/). It is an attempt at designing a
> clean, extensible and transparent API.
>
> https://github.com/BenjaminSchaaf/daffodil
> https://benjaminschaaf.github.io/daffodil/
>
> The library makes full use out of D's templates and metaprogramming. The
> internal storage mechanism is entirely configurable from almost every
> endpoint. File headers are directly loaded into structs defining them,
> removing most of the difficulties in reading them according to spec. The
> image type and loading API is entirely extensible, making extra image
> formats entirely self-contained.
>
> Currently only loading and saving of simple BMP images is supported,
> with convolution and Gaussian Blur filters and flip transformations. Its
> still early in development, but I'd love to get some feedback on it.
>
> Example:
> ---
> import daffodil;
> import daffodil.filter;
> import daffodil.transform;
>
> void main() {
>     auto image = load!32("daffodil.bmp");
>
>     image.gaussianBlurred(1.4).save("blurry_daffodil.bmp");
>
>     image.flipped!"y".save("upside_down_daffodil.bmp");
> }
> ---
>
> The license is MIT, so feel free to do whatever you want with the code.
> Issues and pull requests are of course welcome ;)
>
> Alongside I've also written (an admittedly hacky) sphinx
> (http://www.sphinx-doc.org/en/stable/) extension that provides a domain
> and autodocumenter for D, using libdparse and pyd.

Doesn't use allocators or Manu's color work, yup yup not interested.



More information about the Digitalmars-d-announce mailing list