GNUstep-related programming projects

Here are some GNUstep-related programming projects that I have worked on. Unfortunately, I don't have any more time to work on them, but if anyone wants to improve them, go ahead.

Image formats

Adding support for more image formats to NSImage. Currently, I only have XPM working (download). Eventually, it would be nice to support SVG, PDF, and DjVu. SVG and PDF would probably benefit from native Cairo support (see below).

Cairo

Get Cairo to draw to a NSImage/NSView natively, rather than first drawing to an offscreen buffer. This would have the advantage of things looking proper when scaled. Most of the hard stuff is done, but it lacks text support (AFAICT — I haven't checked how Cairo works if you don't provide text functions), proper gradients (it currently just draws a gradient to a buffer), proper error handling, support for Cairo's A8 and A1 formats (8- and 1-bit alpha channels, with no colour data), painting and masking of surfaces (should be fairly easy), proper handling of the ctm parameter in surface_stroke (no documentation available on what it means), and proper integration into Cairo's build system. (download) (test application)