uk.ac.starlink.ttools.plot
Class GraphicExporter

java.lang.Object
  extended by uk.ac.starlink.ttools.plot.GraphicExporter
Direct Known Subclasses:
PdfGraphicExporter

public abstract class GraphicExporter
extends Object

Exports painted graphics to an output file in some graphics format.

Since:
1 Aug 2008
Author:
Mark Taylor

Field Summary
static GraphicExporter EPS
          Exports to Encapsulated PostScript.
static GraphicExporter EPS_GZIP
          Exports to gzipped Encapsulated PostScript.
static GraphicExporter GIF
          Exports to GIF format.
static GraphicExporter JPEG
          Exports to JPEG format.
static GraphicExporter PNG
          Exports to PNG format with a standard (currently opaque) background.
static GraphicExporter PNG_TRANSPARENT
          Exports to PNG format with a transparent background.
 
Constructor Summary
protected GraphicExporter(String name, String mimeType, String description, String[] fileSuffixes)
          Constructor.
 
Method Summary
abstract  void exportGraphic(Picture picture, OutputStream out)
          Paints the given picture to an output stream using some graphics format or other.
 String getContentEncoding()
          Returns the content encoding for the output used by this exporter.
 String getDescription()
          Returns a minimal description of this exporter.
 String[] getFileSuffixes()
          Returns an array of file suffixes which usually indicate a file with an export format used by this instance.
static GraphicExporter[] getKnownExporters(PdfGraphicExporter pdfEx)
          Returns a standard list of available GraphicExporter objects.
 String getMimeType()
          Returns the MIME type for the graphics format used by this exporter.
 String getName()
          Returns the name of this exporter (usually the graphics format name).
static Picture toPicture(JComponent comp)
          Utility method to acquire a Picture object which can paint the content of a screen component.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

JPEG

public static final GraphicExporter JPEG
Exports to JPEG format.


PNG

public static final GraphicExporter PNG
Exports to PNG format with a standard (currently opaque) background.


PNG_TRANSPARENT

public static final GraphicExporter PNG_TRANSPARENT
Exports to PNG format with a transparent background.


GIF

public static final GraphicExporter GIF
Exports to GIF format.


EPS

public static final GraphicExporter EPS
Exports to Encapsulated PostScript.


EPS_GZIP

public static final GraphicExporter EPS_GZIP
Exports to gzipped Encapsulated PostScript.

Constructor Detail

GraphicExporter

protected GraphicExporter(String name,
                          String mimeType,
                          String description,
                          String[] fileSuffixes)
Constructor.

Parameters:
name - exporter name (usually graphics format name)
mimeType - MIME type for this exporter's output format
description - minimal description of format (may just be name)
fileSuffixes - file suffixes which usually indicate the export format used by this instance (may be null)
Method Detail

exportGraphic

public abstract void exportGraphic(Picture picture,
                                   OutputStream out)
                            throws IOException
Paints the given picture to an output stream using some graphics format or other. This method should not close the stream.

Parameters:
picture - picture to draw
out - destination output stream
Throws:
IOException

getName

public String getName()
Returns the name of this exporter (usually the graphics format name).

Returns:
exporter name

getMimeType

public String getMimeType()
Returns the MIME type for the graphics format used by this exporter.

Returns:
MIME type string

getDescription

public String getDescription()
Returns a minimal description of this exporter. This may just be the format's name if there's nothing else to say.

Returns:
description

getContentEncoding

public String getContentEncoding()
Returns the content encoding for the output used by this exporter. The default implementation returns null, meaning no special encoding.

Returns:
content encoding

getFileSuffixes

public String[] getFileSuffixes()
Returns an array of file suffixes which usually indicate a file with an export format used by this instance.

Returns:
copy of file suffix list; may be empty but will not be null

toString

public String toString()
Overrides:
toString in class Object

toPicture

public static Picture toPicture(JComponent comp)
Utility method to acquire a Picture object which can paint the content of a screen component. The component should not be altered while the picture is in use.

Parameters:
comp - screen component
Returns:
object to draw comp's content

getKnownExporters

public static GraphicExporter[] getKnownExporters(PdfGraphicExporter pdfEx)
Returns a standard list of available GraphicExporter objects. However, the one for exporting PDFs must be supplied explicitly, since which to choose (if any) depends on configuration.

Parameters:
pdfEx - exporter for PDF graphics, or null if none required
Returns:
list of available exporters including the supplied PDF one


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.