Contributing To GraphicsMagick

The future and success of GraphicsMagick depends on your contributions. By contributing to GraphicsMagick you will benefit from the features/fixes you contribute, can take pride in taking part in the development of a quality product, and you can tell your friends that you contribute to the GraphicsMagick project.

There are a number of ways you can contribute:

- Submit bug reports to the GraphicsMagick bug tracking system at SourceForge.

- Submit patches to the GraphicsMagick patch submission system at SourceForge.

- Perform test builds on unusual systems and report the results.

- Submit ideas and proposed designs to the graphicsmagick-core mailing list.

- Create a new language interface, dependent library, or application.

- Join the GraphicsMagick Group as a full-fledged developer with CVS commit access.

Regardless of how you choose to contribute, your contributions will be treated with the respect and value that they deserve.

Becoming a member of the GraphicsMagick Group requires a majority vote from existing members. Your chances of being admitted to the group are increased significantly if you have a proven track-record of success on other open source projects, are a recognized expert in the field, or have already demonstrated your capabilities and commitment by contributing to the project in other ways. Please contact Bob Friesenhahn <bfriesen@simple.dallas.tx.us> in order to be considered for group membership.

Areas To Contribute

The following are areas where significant contributions may be made to the GraphicsMagick project:

- Support building and distributing GraphicsMagick RPMs for Linux.

- Support a FreeBSD "port" in the FreeBSD ports collection for GraphicsMagick.

- Set up an FTP mirror site for GraphicsMagick.

- Create a language interface using SWIG to support scripting in Perl, Python, TCL/TK, Guile, MzScheme, Ruby, Java, PHP, and CHICKEN, based on a common implementation.

- Create a new utility command parser based on a separate LALR or XML-based syntax definition, and using an approach suitable to replace the existing error-prone command parsers in magick/command.c

- Create a vector encoder for EPS, Postscript, PDF, SVG, Macromedia Flash (SWF), WebCGM, or WMF.

- Create an OpenEXR coder based on the OpenEXR library from Industrial Light & Magic.

- Create a pstoedit module to import Postscript, EPS, and PDF files as vector data using pstoedit which already includes a high-quality driver to render Postscript vectors via GraphicsMagick. This module could also export vector data in many formats using pstoedit's output drivers.

- Create a coder to support the CALS raster file format.

- Support reading/rendering HP printer PCL formats.

- Add integrated Adobe XMP profile support for TIFF, JPEG, PNG, PDF, EPS, and Postscript.

- Add a GeoTIFF extension to GraphicsMagick.

- Port Erik Reinhard's super-cool Parameter Estimation For Photographic Tone Reproduction algorithm to GraphicsMagick.

- Finish writing the IMDisplay Windows GUI program.

- Write a shim-layer to allow The GIMP to be executed as a loadable process module providing GraphicsMagick users with access to GIMP features.

- Port your existing GIMP module to GraphicsMagick as a loadable process module.

- Create an interface between GraphicsMagick and OpenOffice.org. so that OpenOffice may load and save any format supported by GraphicsMagick. OpenOffice.org offers a separate SDK so there may be a number of other opportunities to explore.

- Resolve the remaining porting bugs in the FlashPIX library.

- Complete the port of ralcgm to Windows so that it may be used as a delegate under Windows.

Copyright © GraphicsMagick Group 2002, 2003, 2004