org.apache.batik.transcoder.print
Class PrintTranscoder

java.lang.Object
  |
  +--org.apache.batik.transcoder.TranscoderSupport
        |
        +--org.apache.batik.transcoder.AbstractTranscoder
              |
              +--org.apache.batik.transcoder.XMLAbstractTranscoder
                    |
                    +--org.apache.batik.transcoder.print.PrintTranscoder
All Implemented Interfaces:
java.awt.print.Printable, Transcoder

public class PrintTranscoder
extends XMLAbstractTranscoder
implements java.awt.print.Printable

This class is a Transcoder that prints SVG images. This class works as follows: any-time the transcode method is invoked, the corresponding input is cached and nothing else happens.
However, the PrintTranscoder is also a Printable. If used in a print operation, it will print each of the input it cached, one input per page.
The PrintTranscoder uses several different hints that guide its printing:


Inner Class Summary
protected  class PrintTranscoder.PrintTranscoderUserAgent
          A user agent implementation for PrintTranscoder.
 
Field Summary
protected static java.util.Set FEATURES
           
static TranscodingHints.Key KEY_AOI
          The area of interest key.
static java.lang.String KEY_AOI_STR
           
static TranscodingHints.Key KEY_HEIGHT
          The image height key.
static java.lang.String KEY_HEIGHT_STR
           
static TranscodingHints.Key KEY_LANGUAGE
          The language key.
static java.lang.String KEY_LANGUAGE_STR
           
static TranscodingHints.Key KEY_MARGIN_BOTTOM
          The marginBottom key.
static java.lang.String KEY_MARGIN_BOTTOM_STR
           
static TranscodingHints.Key KEY_MARGIN_LEFT
          The marginLeft key.
static java.lang.String KEY_MARGIN_LEFT_STR
           
static TranscodingHints.Key KEY_MARGIN_RIGHT
          The marginRight key.
static java.lang.String KEY_MARGIN_RIGHT_STR
           
static TranscodingHints.Key KEY_MARGIN_TOP
          The marginTop key.
static java.lang.String KEY_MARGIN_TOP_STR
           
static TranscodingHints.Key KEY_MEDIA
          The CSS media.
static TranscodingHints.Key KEY_PAGE_HEIGHT
          The pageHeight key.
static java.lang.String KEY_PAGE_HEIGHT_STR
           
static TranscodingHints.Key KEY_PAGE_ORIENTATION
          The pageOrientation key.
static java.lang.String KEY_PAGE_ORIENTATION_STR
           
static TranscodingHints.Key KEY_PAGE_WIDTH
          The pageWidth key.
static java.lang.String KEY_PAGE_WIDTH_STR
           
static TranscodingHints.Key KEY_PIXEL_TO_MM
          The pixel to millimeter conversion factor key.
static java.lang.String KEY_PIXEL_TO_MM_STR
           
static TranscodingHints.Key KEY_SCALE_TO_PAGE
          The scaleToPage key.
static java.lang.String KEY_SCALE_TO_PAGE_STR
           
static TranscodingHints.Key KEY_SHOW_PAGE_DIALOG
          The showPageDialog key.
static java.lang.String KEY_SHOW_PAGE_DIALOG_STR
           
static TranscodingHints.Key KEY_SHOW_PRINTER_DIALOG
          The showPrinterDialog key.
static java.lang.String KEY_SHOW_PRINTER_DIALOG_STR
           
static TranscodingHints.Key KEY_USER_STYLESHEET_URI
          The user stylesheet URI key.
static java.lang.String KEY_USER_STYLESHEET_URI_STR
           
static TranscodingHints.Key KEY_WIDTH
          The image width key.
static java.lang.String KEY_WIDTH_STR
           
static java.lang.String KEY_XML_PARSER_CLASSNAME_STR
           
static java.lang.String USAGE
           
static java.lang.String VALUE_MEDIA_PRINT
           
static java.lang.String VALUE_PAGE_ORIENTATION_LANDSCAPE
           
static java.lang.String VALUE_PAGE_ORIENTATION_PORTRAIT
           
static java.lang.String VALUE_PAGE_ORIENTATION_REVERSE_LANDSCAPE
           
 
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
 
Fields inherited from interface java.awt.print.Printable
NO_SUCH_PAGE, PAGE_EXISTS
 
Constructor Summary
PrintTranscoder()
          Constructs a new transcoder that prints images.
 
Method Summary
protected  DocumentFactory createDocumentFactory(DOMImplementation domImpl, java.lang.String parserClassname)
          Creates a DocumentFactory that is used to create an SVG DOM tree.
static void handleValueError(java.lang.String property, java.lang.String value)
           
static void main(java.lang.String[] args)
           
 void print()
          Convenience method
 int print(java.awt.Graphics _g, java.awt.print.PageFormat pageFormat, int pageIndex)
          Printable implementation
static void setTranscoderBooleanHint(Transcoder transcoder, java.lang.String property, TranscodingHints.Key key)
           
static void setTranscoderFloatHint(Transcoder transcoder, java.lang.String property, TranscodingHints.Key key)
           
static void setTranscoderRectangleHint(Transcoder transcoder, java.lang.String property, TranscodingHints.Key key)
           
static void setTranscoderStringHint(Transcoder transcoder, java.lang.String property, TranscodingHints.Key key)
           
protected  void transcode(Document document, java.lang.String uri, TranscoderOutput output)
          Transcodes the specified Document as an image in the specified output.
 void transcode(TranscoderInput in, TranscoderOutput out)
          Transcodes the specified XML input in the specified output.
 
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

KEY_AOI_STR

public static final java.lang.String KEY_AOI_STR

KEY_HEIGHT_STR

public static final java.lang.String KEY_HEIGHT_STR

KEY_LANGUAGE_STR

public static final java.lang.String KEY_LANGUAGE_STR

KEY_MARGIN_BOTTOM_STR

public static final java.lang.String KEY_MARGIN_BOTTOM_STR

KEY_MARGIN_LEFT_STR

public static final java.lang.String KEY_MARGIN_LEFT_STR

KEY_MARGIN_RIGHT_STR

public static final java.lang.String KEY_MARGIN_RIGHT_STR

KEY_MARGIN_TOP_STR

public static final java.lang.String KEY_MARGIN_TOP_STR

KEY_PAGE_HEIGHT_STR

public static final java.lang.String KEY_PAGE_HEIGHT_STR

KEY_PAGE_ORIENTATION_STR

public static final java.lang.String KEY_PAGE_ORIENTATION_STR

KEY_PAGE_WIDTH_STR

public static final java.lang.String KEY_PAGE_WIDTH_STR

KEY_PIXEL_TO_MM_STR

public static final java.lang.String KEY_PIXEL_TO_MM_STR

KEY_SCALE_TO_PAGE_STR

public static final java.lang.String KEY_SCALE_TO_PAGE_STR

KEY_SHOW_PAGE_DIALOG_STR

public static final java.lang.String KEY_SHOW_PAGE_DIALOG_STR

KEY_SHOW_PRINTER_DIALOG_STR

public static final java.lang.String KEY_SHOW_PRINTER_DIALOG_STR

KEY_USER_STYLESHEET_URI_STR

public static final java.lang.String KEY_USER_STYLESHEET_URI_STR

KEY_WIDTH_STR

public static final java.lang.String KEY_WIDTH_STR

KEY_XML_PARSER_CLASSNAME_STR

public static final java.lang.String KEY_XML_PARSER_CLASSNAME_STR

VALUE_MEDIA_PRINT

public static final java.lang.String VALUE_MEDIA_PRINT

VALUE_PAGE_ORIENTATION_LANDSCAPE

public static final java.lang.String VALUE_PAGE_ORIENTATION_LANDSCAPE

VALUE_PAGE_ORIENTATION_PORTRAIT

public static final java.lang.String VALUE_PAGE_ORIENTATION_PORTRAIT

VALUE_PAGE_ORIENTATION_REVERSE_LANDSCAPE

public static final java.lang.String VALUE_PAGE_ORIENTATION_REVERSE_LANDSCAPE

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 CSS media.

Key:

KEY_MEDIA

Value:

String

Default:

"print"

Required:

No

Description:

Specify the media to use with CSS.

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_SHOW_PAGE_DIALOG

public static final TranscodingHints.Key KEY_SHOW_PAGE_DIALOG
The showPageDialog key.

Key:

KEY_SHOW_PAGE_DIALOG

Value:

Boolean

Default:

false

Required:

No

Description:

Specifies whether or not the transcoder should pop up a dialog box for selecting the page format.

KEY_SHOW_PRINTER_DIALOG

public static final TranscodingHints.Key KEY_SHOW_PRINTER_DIALOG
The showPrinterDialog key.

Key:

KEY_SHOW_PAGE_DIALOG

Value:

Boolean

Default:

false

Required:

No

Description:

Specifies whether or not the transcoder should pop up a dialog box for selecting the printer. If the dialog box is not shown, the transcoder will use the default printer.

FEATURES

protected static final java.util.Set FEATURES

KEY_PAGE_WIDTH

public static final TranscodingHints.Key KEY_PAGE_WIDTH
The pageWidth key.

Key:

KEY_PAGE_WIDTH

Value:

Length

Default:

None

Required:

No

Description:

The width of the print page

KEY_PAGE_HEIGHT

public static final TranscodingHints.Key KEY_PAGE_HEIGHT
The pageHeight key.

Key:

KEY_PAGE_HEIGHT

Value:

Length

Default:

None

Required:

No

Description:

The height of the print page

KEY_MARGIN_TOP

public static final TranscodingHints.Key KEY_MARGIN_TOP
The marginTop key.

Key:

KEY_MARGIN_TOP

Value:

Length

Default:

None

Required:

No

Description:

The print page top margin

KEY_MARGIN_RIGHT

public static final TranscodingHints.Key KEY_MARGIN_RIGHT
The marginRight key.

Key:

KEY_MARGIN_RIGHT

Value:

Length

Default:

None

Required:

No

Description:

The print page right margin

KEY_MARGIN_BOTTOM

public static final TranscodingHints.Key KEY_MARGIN_BOTTOM
The marginBottom key.

Key:

KEY_MARGIN_BOTTOM

Value:

Length

Default:

None

Required:

No

Description:

The print page bottom margin

KEY_MARGIN_LEFT

public static final TranscodingHints.Key KEY_MARGIN_LEFT
The marginLeft key.

Key:

KEY_MARGIN_LEFT

Value:

Length

Default:

None

Required:

No

Description:

The print page left margin

KEY_PAGE_ORIENTATION

public static final TranscodingHints.Key KEY_PAGE_ORIENTATION
The pageOrientation key.

Key:

KEY_PAGE_ORIENTATION

Value:

String

Default:

VALUE_PAGE_ORIENTATION_PORTRAIT

Required:

No

Description:

The print page's orientation

KEY_SCALE_TO_PAGE

public static final TranscodingHints.Key KEY_SCALE_TO_PAGE
The scaleToPage key.

Key:

KEY_SCALE_TO_PAGE

Value:

Boolean

Default:

true

Required:

No

Description:

Specifies whether or not the SVG images are scaled to fit into the printed page

USAGE

public static final java.lang.String USAGE
Constructor Detail

PrintTranscoder

public PrintTranscoder()
Constructs a new transcoder that prints images.
Method Detail

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

transcode

public void transcode(TranscoderInput in,
                      TranscoderOutput out)
Description copied from class: XMLAbstractTranscoder
Transcodes the specified XML input in the specified output. All TranscoderException exceptions not catched previously are tagged as fatal errors (ie. call the fatalError method of the ErrorHandler).
Overrides:
transcode in class XMLAbstractTranscoder
Following copied from class: org.apache.batik.transcoder.XMLAbstractTranscoder
Parameters:
input - the XML input to transcode
output - the ouput where to transcode
Throws:
TranscoderException - if an error occured while transcoding

print

public void print()
           throws java.awt.print.PrinterException
Convenience method

print

public int print(java.awt.Graphics _g,
                 java.awt.print.PageFormat pageFormat,
                 int pageIndex)
Printable implementation
Specified by:
print in interface java.awt.print.Printable

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

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception

setTranscoderFloatHint

public static void setTranscoderFloatHint(Transcoder transcoder,
                                          java.lang.String property,
                                          TranscodingHints.Key key)

setTranscoderRectangleHint

public static void setTranscoderRectangleHint(Transcoder transcoder,
                                              java.lang.String property,
                                              TranscodingHints.Key key)

setTranscoderBooleanHint

public static void setTranscoderBooleanHint(Transcoder transcoder,
                                            java.lang.String property,
                                            TranscodingHints.Key key)

setTranscoderStringHint

public static void setTranscoderStringHint(Transcoder transcoder,
                                           java.lang.String property,
                                           TranscodingHints.Key key)

handleValueError

public static void handleValueError(java.lang.String property,
                                    java.lang.String value)


Copyright © 2001 Apache Software Foundation. All Rights Reserved.