Proposal for Imaging Wrapper Package (0) rationale
Many web and desktop applications need some imaging support. Even though the most commonly used operations on an image are simple operations such as resize/ scale, rotate, overlay, crop, add a border, etc., the imaging APIs such as Java2D and JAI do not offer direct method calls to achieve this. Moreover the code will have to change significantly to shift from using Java2D to JAI or vice versa. The proposed Imaging Wrapper will provide a simple interface with direct calls to achieve these imaging operations. It would also include reading and writing of image files. The underlying API used can be specified as a parameter. One of the main design objectives is to make it as simple as possible for someone without much knowledge of the underlying imaging APIs. The implementation was done so far under the name PMIW - Poor Man's Imaging Wrapper (http://www.mullassery.com/software/PMIW/). PMIW is currently used in Jakarta Image Taglib (http://jakarta.apache.org/taglibs/sandbox/doc/image-doc/intro.html), external Jakarta ANT Image Tasks (http://ant.apache.org/external.html#Image) and elsewhere. A Commons package would give committers an opportunity to coordinate their efforts to create and maintain a efficient, feature-rich package under the ASF license. (1) scope of the package The package shall implement an Imaging Wrapper written in the Java language to be distributed under the ASF license. The package shall be available as a set of imaging operations via an Imaging interface. The package shall also support reading and writing of images files based on the underlying API support available and other features. It includes the basic Java2D and Java Advanced Imaging based implementations. The Java2D uses ImageIO (as part of Java 1.4 or otherwise) or AWT for loading images. If JAI libraries are available they will be used. The library can also be explicitly specified. It requires either Java2D or Java Advanced Imaging libraries and pjatools.jar (http://www.eteks.com/pja/en/) for optional GIF encoding support. (2) identify the initial source for the package The initial codebase of PMIW can be contributed by Abey Mullassery that can be distributed under the Apache license. The source is available at http://www.mullassery.com/downloads/pmiw/pmiw-src.jar (2.1) identify the base name for the package org.apache.commons.imaging (2.2) identify the coding conventions for this package The code uses the Sun coding conventions. (3) identify any Jakarta-Commons resources to be created (3.1) mailing list Until traffic justifies, the package will use the Jakarta-Commons list for communications. (3.2) CVS repositories For the time being, the package will use a root branch of the Jakarta-Commons CVS. (3.3) Bugzilla The package should be listed as a component of under the Jakarta-Commons Bugzilla entry. (3.4) Jyve FAQ (when available) commons-imaging (4) identify the initial set of committers to be listed in the Status File. Abey Mullassery --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]