Thread overview
png decoder
Jan 05, 2007
Lutger
Jan 05, 2007
Gregor Richards
Jan 05, 2007
Lutger
Jan 05, 2007
Gregor Richards
Re: png decoder (update: encoder)
Jan 09, 2007
Lutger
January 05, 2007
Perhaps somebody finds it useful: I've ported LodePNG, a small and simple png decoder to D.(1 function call, life doesn't get easier than this). There's also an encoder part, which I have not ported yet.

You can get it here: lutger.ifastnet.com/png.d
Documentation: lutger.ifastnet.com/png.html

Port is straightforward, no attempt to change things much except some raw pointers to arrays and replaced zlib routine by Phobos ones. Also not tested much.
January 05, 2007
Lutger wrote:
> Perhaps somebody finds it useful: I've ported LodePNG, a small and simple png decoder to D.(1 function call, life doesn't get easier than this). There's also an encoder part, which I have not ported yet.
> 
> You can get it here: lutger.ifastnet.com/png.d
> Documentation: lutger.ifastnet.com/png.html
> 
> Port is straightforward, no attempt to change things much except some raw pointers to arrays and replaced zlib routine by Phobos ones. Also not tested much.

Now installable via `dsss net install lodepng`

 - Gregor Richards
January 05, 2007
Gregor Richards wrote:
> Lutger wrote:
>> Perhaps somebody finds it useful: I've ported LodePNG, a small and simple png decoder to D.(1 function call, life doesn't get easier than this). There's also an encoder part, which I have not ported yet.
>>
>> You can get it here: lutger.ifastnet.com/png.d
>> Documentation: lutger.ifastnet.com/png.html
>>
>> Port is straightforward, no attempt to change things much except some raw pointers to arrays and replaced zlib routine by Phobos ones. Also not tested much.
> 
> Now installable via `dsss net install lodepng`
> 
>  - Gregor Richards

Ha, I was just figuring out DSSS. It seems that it *just works*, very nice.

Two questions if I may, can I register somehow to update this thing in the future? And should I change the name and put it inside a package?

Thanks for your efforts.



January 05, 2007
Lutger wrote:
> Gregor Richards wrote:
>> Lutger wrote:
>>> Perhaps somebody finds it useful: I've ported LodePNG, a small and simple png decoder to D.(1 function call, life doesn't get easier than this). There's also an encoder part, which I have not ported yet.
>>>
>>> You can get it here: lutger.ifastnet.com/png.d
>>> Documentation: lutger.ifastnet.com/png.html
>>>
>>> Port is straightforward, no attempt to change things much except some raw pointers to arrays and replaced zlib routine by Phobos ones. Also not tested much.
>>
>> Now installable via `dsss net install lodepng`
>>
>>  - Gregor Richards
> 
> Ha, I was just figuring out DSSS. It seems that it *just works*, very nice.
> 
> Two questions if I may, can I register somehow to update this thing in the future? 

/ABSOLUTELY/

http://dsss.codu.org/ is the source management interface. Register yourself then send me an email, and I'll give you access to to the source list entry for it.

> And should I change the name and put it inside a package?

I'd recommend that :)

> 
> Thanks for your efforts.

My efforts are only in the direction of self-advancement, I assure you ;)

 - Gregor Richards
January 09, 2007
Lutger wrote:
> Perhaps somebody finds it useful: I've ported LodePNG, a small and simple png decoder to D.(1 function call, life doesn't get easier than this). There's also an encoder part, which I have not ported yet.
> 
> You can get it here: lutger.ifastnet.com/png.d
> Documentation: lutger.ifastnet.com/png.html
> 
> Port is straightforward, no attempt to change things much except some raw pointers to arrays and replaced zlib routine by Phobos ones. Also not tested much.

The encoder is now ported too, along with some other improvements. It only encodes 32 bit RGBA images and if it fails, it does so without giving errors.

The module is changed from png.d to lodepng.png.d. DSSS is not updated yet.

This port still needs some work and testing. I will improve the code and fold in updates from the original.

If you use it and find a bug or have some suggestion, do let me know.