Java Advanced Imaging API Datasheet

Download PDF Download PDF
View & print PDF files with Adobe Acrobat Reader.

Java Advanced Imaging API

Enterprise-scale, Distributed 2D Applications


• Provides standard interface for cross-platform imaging
• Enables the same application to be deployed on multiple platforms without source code changes
• Simplifies programming tasks and increases code reuse
• Reduces time to market by enabling solutions to be deployed faster and at lower cost
• Enhances client/server imaging through a network-centric architecture and complementary technologies
• Readily adopts highly optimized implementations that use media capabilities of CPUs: MMX on Intel processors; VIS on UltraSPARC
• Integrates with the Java Media API family, enabling deployment of media-rich applications

The Java 2D and Java Advanced Imaging APIs provide a standard method for integrating powerful, image manipulation functionality into image processing and distribution as well as remote viewing applications. These APIs, combined with the intrinsic network-savviness of the Java 2 Platform, make it easier for imaging application vendors in the medical, commercial, and geographic information systems (GIS) markets to adopt the network computing model demanded by their customers.

Enables Remote Viewing of Images

To help developers compete in today's heterogeneous, highly distributed networked environment, the Java APIs simplify the creation of imaging applications that support a broad range of systems, from thin clients to powerful workstations. For example, many imaging applications require remote viewing of images that are stored on central servers. In the medical field, PACS applications enable doctors to review and analyze radiological images from workstations located anywhere on the network. For GIS, remote sensing applications allow commercial and government users to access and analyze large satellite images -- weather maps, vegetation, and geothermal data -- from central servers.

As an integral component of the Java 2 Platform, Standard Edition, the Java 2D API provides base-level imaging functionality for developers using the Java language. It also forms the foundation for the Java Advanced Imaging API, an optional package of the Java 2 Platform, Standard Edition. The Java Advanced Imaging API is part of the Java Media family of APIs, an extensible framework for the integration of imaging operations.

The Java 2D API

Since its inception, digital imaging on the Java platform has been supported through the java.awt and java.awt.image class packages. Introduced as part of the Java 2 Platform, Standard Edition, the Java 2D API provides device-independent graphics rendering and image compositing.

For image processing, the Java Abstract Window Toolkit (AWT) presents a simple filter model of producers and consumers. The Java 2D API extends the Java AWT by providing memory-based images, extensible image filters, color space definitions and transforms, affine transforms, compositing, and multiple image data types. It easily handles arbitrary shapes, text, and images, and provides methods for uniformly transforming, rotating, scaling, and skewing them.

The Java 2D API brings the concept of "Write Once, Run Anywhere" to applications that require enhanced 2D graphics and imaging capabilities. As a result, developers can efficiently incorporate high-quality, scalable, platform-independent graphics into Java technology-based applets and applications.

Because the Java 2D API supports the AWT hierarchy, existing pro-grams continue to work. Even new programs written in the Java language can compatibly mix both new and existing classes.

Based on open standards, the Java APIs for imaging were developed with input from leading technology vendors. The Java 2D API provides an ideal platform for creating enterprise-scale applications and applets in the Java language that take full advantage of rich media functionality to enhance communications.

The Java Advanced Imaging API

Sun collaborated with key industry leaders, including Eastman Kodak, Siemens Corporate Research, and Autometric, to develop the initial Java Advanced Imaging API specification. Building on the basic Java 2D API, it enables sophisticated, high-performance image processing in Java technology-based applications. Ideal for manipulating and sharing large, complex image files over the Internet, the API meets the demands of the geospatial, medical, commercial, network, and government imaging markets.

To facilitate support for multiple platforms, the Java Advanced Imaging API provides a standard, Java technology-based, object-oriented interface. It is well-suited for distributed, client/server imaging because it exploits the Java language's strong support for network-savvy software development. It also takes advantage of complementary Java technologies -- such as the Java Remote Method Invocation and JavaBeans components -- that are part of the Java 2 Platform, Standard Edition.

As an imaging standard, the Java Advanced Imaging API is not only comprehensive, scalable, and easy to use, it is also extensible and customizable, simplifying the integration of proprietary image manipulation algorithms.



  • Tiling enables users to process just one section of an image at a time, decreasing processing and bandwidth requirements while making it possible to move quickly from image to image.

  • Resolution -- independent image processing offers the ability to describe an image as it should appear, regardless of resolution. This also makes it possible to define a renderable pipeline of operations, then alter individual operations in the pipeline and re-execute them. To generate output, renderable operation chains are turned into rendered chains.

  • Deferred execution mode improves overall performance by halting unnecessary work on an image, except in the request-ed data region.

  • Network imaging simplifies distributed image processing with software that intelligently adapts to the power of the client. For example, a thin-client processing chain may be defined that passes the chain to a server for intensive computation and returns the result to the thin client for display.

Competitive Advantage

The Java Advanced Imaging API has been carefully designed for flexibility, scalability, and extensibility. It enables the deployment of computing systems based on the cost/performance needs of a system, including thin-client, client/server, and power-client models. By simplifying and streamlining the programming tasks required to create imaging software, the Java Advanced Imaging API gives developers a competitive advantage when creating new imaging applications.

For More Information To learn more about the Java 2D and Java Advanced Imaging APIs, please visit these Sun Web sites:

Java Advanced Imaging API

Java 2D API

Left Curve
Java SDKs and Tools
Right Curve
Left Curve
Java Resources
Right Curve
JavaOne Banner
Java 8 banner (182)