| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface ImageRenderer
Classes can implement this interfaces to support other formats, for example, use Apache Batik to render WMF, PICT can be rendered using Apple QuickTime API for Java:
 
 public class MyImageRendener implements ImageRendener {
     InputStream data;
     public boolean drawImage(Graphics2D graphics,Rectangle2D anchor,Insets clip) {
         // draw image
       DataInputStream is = new DataInputStream(data);
       org.apache.batik.transcoder.wmf.tosvg.WMFRecordStore wmfStore =
               new org.apache.batik.transcoder.wmf.tosvg.WMFRecordStore();
       try {
           wmfStore.read(is);
       } catch (IOException e){
           return;
       }
       float scale = (float)anchor.width/wmfStore.getWidthPixels();
       org.apache.batik.transcoder.wmf.tosvg.WMFPainter painter =
               new org.apache.batik.transcoder.wmf.tosvg.WMFPainter(wmfStore, 0, 0, scale);
       graphics.translate(anchor.x, anchor.y);
       painter.paint(graphics);
     }
     public void loadImage(InputStream data, String contentType) throws IOException {
         if ("image/wmf".equals(contentType)) {
             this.data = data;
             // use Apache Batik to handle WMF
         } else {
             super.loadImage(data,contentType);
         }
     }
 }
 
 
 and then pass this class to your instance of java.awt.Graphics2D:
 
 
 graphics.setRenderingHint(Drawable.IMAGE_RENDERER, new MyImageRendener());
 
 
| Method Summary | |
|---|---|
|  boolean | drawImage(java.awt.Graphics2D graphics,
          java.awt.geom.Rectangle2D anchor)Render picture data into the supplied graphics | 
|  boolean | drawImage(java.awt.Graphics2D graphics,
          java.awt.geom.Rectangle2D anchor,
          java.awt.Insets clip)Render picture data into the supplied graphics | 
|  java.awt.Dimension | getDimension() | 
|  java.awt.image.BufferedImage | getImage() | 
|  java.awt.image.BufferedImage | getImage(java.awt.Dimension dim) | 
|  void | loadImage(byte[] data,
          java.lang.String contentType)Load and buffer the image | 
|  void | loadImage(java.io.InputStream data,
          java.lang.String contentType)Load and buffer the image | 
|  void | setAlpha(double alpha) | 
| Method Detail | 
|---|
void loadImage(java.io.InputStream data,
               java.lang.String contentType)
               throws java.io.IOException
data - the raw image streamcontentType - the content type
java.io.IOException
void loadImage(byte[] data,
               java.lang.String contentType)
               throws java.io.IOException
data - the raw image bytescontentType - the content type
java.io.IOExceptionjava.awt.Dimension getDimension()
void setAlpha(double alpha)
alpha - the alpha [0..1] to be added to the image (possibly already containing an alpha channel)java.awt.image.BufferedImage getImage()
java.awt.image.BufferedImage getImage(java.awt.Dimension dim)
dim - the dimension in pixels of the returned image
boolean drawImage(java.awt.Graphics2D graphics,
                  java.awt.geom.Rectangle2D anchor)
boolean drawImage(java.awt.Graphics2D graphics,
                  java.awt.geom.Rectangle2D anchor,
                  java.awt.Insets clip)
| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||