org.apache.batik.transcoder.image
Class ImageTranscoder

java.lang.Object
  |
  +--org.apache.batik.transcoder.TranscoderSupport
        |
        +--org.apache.batik.transcoder.AbstractTranscoder
              |
              +--org.apache.batik.transcoder.XMLAbstractTranscoder
                    |
                    +--org.apache.batik.transcoder.image.ImageTranscoder
All Implemented Interfaces:
Transcoder
Direct Known Subclasses:
JPEGTranscoder, PNGTranscoder, TIFFTranscoder

public abstract class ImageTranscoder
extends XMLAbstractTranscoder

This class enables to transcode an input to an image of any format.

Two transcoding hints (KEY_WIDTH and KEY_HEIGHT) can be used to respectively specify the image width and the image height. If only one of these keys is specified, the transcoder preserves the aspect ratio of the original image.

The KEY_BACKGROUND_COLOR defines the background color to use for opaque image formats, or the background color that may be used for image formats that support alpha channel.

The KEY_AOI represents the area of interest to paint in device space.

Three additional transcoding hints that act on the SVG processor can be specified:

KEY_LANGUAGE to set the default language to use (may be used by a <switch> SVG element for example), KEY_USER_STYLESHEET_URI to fix the URI of a user stylesheet, and KEY_PIXEL_TO_MM to specify the pixel to millimeter conversion factor.


Inner Class Summary
protected  class ImageTranscoder.ImageTranscoderUserAgent
          A user agent implementation for ImageTranscoder.
 
Field Summary
protected static java.util.Set FEATURES
           
static TranscodingHints.Key KEY_ALTERNATE_STYLESHEET
          The alternate stylesheet key.
static TranscodingHints.Key KEY_AOI
          The area of interest key.
static TranscodingHints.Key KEY_BACKGROUND_COLOR
          The image background paint key.
static TranscodingHints.Key KEY_HEIGHT
          The image height key.
static TranscodingHints.Key KEY_LANGUAGE
          The language key.
static TranscodingHints.Key KEY_MEDIA
          The media key.
static TranscodingHints.Key KEY_PIXEL_TO_MM
          The pixel to millimeter conversion factor key.
static TranscodingHints.Key KEY_USER_STYLESHEET_URI
          The user stylesheet URI key.
static TranscodingHints.Key KEY_WIDTH
          The image width key.
protected  UserAgent userAgent
          The user agent dedicated to an ImageTranscoder.
 
Fields inherited from class org.apache.batik.transcoder.XMLAbstractTranscoder
KEY_DOCUMENT_ELEMENT, KEY_DOCUMENT_ELEMENT_NAMESPACE_URI, KEY_DOM_IMPLEMENTATION, KEY_XML_PARSER_CLASSNAME, KEY_XML_PARSER_VALIDATING
 
Fields inherited from class org.apache.batik.transcoder.TranscoderSupport
handler, hints
 
Constructor Summary
protected ImageTranscoder()
          Constructs a new ImageTranscoder.
 
Method Summary
protected  DocumentFactory createDocumentFactory(DOMImplementation domImpl, java.lang.String parserClassname)
          Creates a DocumentFactory that is used to create an SVG DOM tree.
abstract  java.awt.image.BufferedImage createImage(int width, int height)
          Creates a new image with the specified dimension.
protected  void transcode(Document document, java.lang.String uri, TranscoderOutput output)
          Transcodes the specified Document as an image in the specified output.
abstract  void writeImage(java.awt.image.BufferedImage img, TranscoderOutput output)
          Writes the specified image to the specified output.
 
Methods inherited from class org.apache.batik.transcoder.XMLAbstractTranscoder
transcode
 
Methods inherited from class org.apache.batik.transcoder.TranscoderSupport
addTranscodingHint, getErrorHandler, getTranscodingHints, removeTranscodingHint, setErrorHandler, setTranscodingHints, setTranscodingHints
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.batik.transcoder.Transcoder
addTranscodingHint, getErrorHandler, getTranscodingHints, removeTranscodingHint, setErrorHandler, setTranscodingHints, setTranscodingHints
 

Field Detail

userAgent

protected UserAgent userAgent
The user agent dedicated to an ImageTranscoder.

FEATURES

protected static final java.util.Set FEATURES

KEY_WIDTH

public static final TranscodingHints.Key KEY_WIDTH
The image width key.

Key:

KEY_WIDTH

Value:

Float

Default:

The width of the top most svg element

Required:

No

Description:

Specify the width of the image to create.

KEY_HEIGHT

public static final TranscodingHints.Key KEY_HEIGHT
The image height key.

Key:

KEY_HEIGHT

Value:

Float

Default:

The height of the top most svg element

Required:

No

Description:

Specify the height of the image to create.

KEY_AOI

public static final TranscodingHints.Key KEY_AOI
The area of interest key.

Key:

KEY_AOI

Value:

Rectangle2D

Default:

The document's size

Required:

No

Description:

Specify the area of interest to render. The rectangle coordinates must be specified in pixels and in the document coordinates system.

KEY_LANGUAGE

public static final TranscodingHints.Key KEY_LANGUAGE
The language key.

Key:

KEY_LANGUAGE

Value:

String

Default:

"en"

Required:

No

Description:

Specify the preferred language of the document.

KEY_MEDIA

public static final TranscodingHints.Key KEY_MEDIA
The media key.

Key:

KEY_MEDIA

Value:

String

Default:

"screen"

Required:

No

Description:

Specify the media to use with CSS.

KEY_ALTERNATE_STYLESHEET

public static final TranscodingHints.Key KEY_ALTERNATE_STYLESHEET
The alternate stylesheet key.

Key:

KEY_ALTERNATE_STYLESHEET

Value:

String

Default:

null

Required:

No

Description:

Specify the alternate stylesheet to use.

KEY_USER_STYLESHEET_URI

public static final TranscodingHints.Key KEY_USER_STYLESHEET_URI
The user stylesheet URI key.

Key:

KEY_USER_STYLESHEET_URI

Value:

String

Default:

null

Required:

No

Description:

Specify the user style sheet.

KEY_PIXEL_TO_MM

public static final TranscodingHints.Key KEY_PIXEL_TO_MM
The pixel to millimeter conversion factor key.

Key:

KEY_PIXEL_TO_MM

Value:

Float

Default:

0.33

Required:

No

Description:

Specify the pixel to millimeter conversion factor.

KEY_BACKGROUND_COLOR

public static final TranscodingHints.Key KEY_BACKGROUND_COLOR
The image background paint key.

Key:

KEY_BACKGROUND_COLOR

Value:

Paint

Default:

null

Required:

No

Description:

Specify the background color to use. The color is required by opaque image formats and is used by image formats that support alpha channel.
Constructor Detail

ImageTranscoder

protected ImageTranscoder()
Constructs a new ImageTranscoder.
Method Detail

transcode

protected void transcode(Document document,
                         java.lang.String uri,
                         TranscoderOutput output)
                  throws TranscoderException
Transcodes the specified Document as an image in the specified output.
Overrides:
transcode in class XMLAbstractTranscoder
Parameters:
document - the document to transcode
uri - the uri of the document or null if any
output - the ouput where to transcode
Throws:
TranscoderException - if an error occured while transcoding

createDocumentFactory

protected DocumentFactory createDocumentFactory(DOMImplementation domImpl,
                                                java.lang.String parserClassname)
Creates a DocumentFactory that is used to create an SVG DOM tree. The specified DOM Implementation is ignored and the Batik SVG DOM Implementation is automatically used.
Overrides:
createDocumentFactory in class XMLAbstractTranscoder
Parameters:
domImpl - the DOM Implementation (not used)
parserClassname - the XML parser classname

createImage

public abstract java.awt.image.BufferedImage createImage(int width,
                                                         int height)
Creates a new image with the specified dimension.
Parameters:
width - the image width in pixels
height - the image height in pixels

writeImage

public abstract void writeImage(java.awt.image.BufferedImage img,
                                TranscoderOutput output)
                         throws TranscoderException
Writes the specified image to the specified output.
Parameters:
img - the image to write
output - the output where to store the image
TranscoderException - if an error occured while storing the image


Copyright © 2001 Apache Software Foundation. All Rights Reserved.