I have extended GD-Sharp with the following which should make it back into the main GD-Sharp core shortly subject to a few unresolved issues. Also, unlike the main GD-Sharp library, this is target specifically for Win32/Microsoft .NET rather than mono. Visual Studio .NET 2003 projects are included in the source.
The patches have been integrated into the core codebase now so please visit the GD-Sharp site for downloads and more information
Feature Status
The current status as attached is a fully functioning library with tests passing but some of the bootstrapping for tests may not be set up correctly. The API (as I would envision it) is still subject to change.The new features are
- GIF Support
- GIF Animation support
- Type-safe Color return values
- API enhancements to be more consistent with .NET
- Various memory leak fixes and speedups with the interop
- Support for building to the Microsoft .NET runtime rather than mono
The current issues are
- Explicitly depends on gd 2.0.33
- Breaks GD-Sharp API (minorly)
- Mono support not yet reintegrated
The first issue is that GD has mangled export names in its current version. The GD author is aware of this and hopefully will be sorted out in future. In the mean time, all GD exports are reference by ordinal to get things to work but this probably won't work with Mono. Wait until the next GD release!
Updates to this patch will be posted here as well as changes. All patches will be sent to the GD-Sharp author, I don't intend to maintain a fork! The reason I'm really doing this is so that I can get animated GIF support for my [[Ray Tracing]] program!
Usage
To build from source, extract the zip file which should provide the .NET 2003 project files that should be compilable. To run the sample app and NUnit testsuites, you will need the bgd.dll file in the output directory (this needs simplifying). This DLL can be downloaded from the main GD website or directly from http://www.boutell.com/gd/http/gdwin32.zip . Bear in mind only GD 2.0.33 is explicitly tested, other versions probably won't work. This dll is also included in the binaries zip file

Leave a comment