## Package org.apache.batik.transcoder.wmf.tosvg

Contains all of the interfaces for transcoding WMF Metafiles to SVG.

See:
Description

Class Summary
AbstractWMFPainter: This class provides generic methods that must be used by a particular WMFPainter.
AbstractWMFReader: This class provides a general framework to read WMF Metafiles.
GdiObject: Represents GDI Objects encountred in WMF Files.
MetaRecord: This is used to keep data while processing WMF-files.
MetaRecord.ByteRecord: A record that contain byte arrays elements.
MetaRecord.StringRecord
RecordStore: Deprecated. jan '07 : this class is not used anywhere in Batik, it might be removed in the future.
TextureFactory: This class generate Paints from WMF hatch definitions.
WMFFont: Represent a WMF Font, encountered in a Metafile.
WMFHeaderProperties: This class holds simple properties about a WMF Metafile.
WMFPainter: Core class for rendering the WMF image.
WMFRecordStore: Reads a WMF file, including an Aldus Placable Metafile Header.
WMFTranscoder: This class implements the `Transcoder` interface and can convert a WMF input document into an SVG document.
WMFUtilities: This class holds various utilies for importing WMF files that can be used either for `AbstractWMFReader`s and `AbstractWMFPainter`s

## Package org.apache.batik.transcoder.wmf.tosvg Description

Contains all of the interfaces for transcoding WMF Metafiles to SVG. The base class to perform the trasncoding is the `WMFTranscoder` class. The `WMFHeaderProperties` class can be used to get size informations from a WMF Metafile without converting it.

# Examples

- Simple transcoding : the dimensions of the SVG output will be the same (in pixels) as the viewport dimensions of the Metafile

            TranscoderInput input = new TranscoderInput(inputFile.toURI().toString());
            OutputStream stream = new FileOutputStream(outputFile);
            TranscoderOutput output = new TranscoderOutput(stream);
            WMFTranscoder transcoder = new WMFTranscoder();
            transcoder.transcode(input,output);

- Setting the dimensions to a particular width or height : the image dimensions modification will be proportional

            TranscoderInput input = new TranscoderInput(inputFile.toURI().toString());
            OutputStream stream = new FileOutputStream(outputFile);
            TranscoderOutput output = new TranscoderOutput(stream);
            WMFTranscoder transcoder = new WMFTranscoder();
            transcoder.addTranscodingHint(WMFTranscoder.KEY_WIDTH, new Float(outputWidth));
            transcoder.transcode(input,output);

- Getting only the bounds of the figures in the Metafile : the SVG viewbox will be defined by the bounds of the figures in the Metafile, regardless of its viewport

            WMFHeaderProperties prop = new WMFHeaderProperties(inputFile);
            TranscoderInput input = new TranscoderInput(inputFile.toURI().toString());
            OutputStream stream = new FileOutputStream(outputFile);
            TranscoderOutput output = new TranscoderOutput(stream);
            WMFTranscoder transcoder = new WMFTranscoder();
            transcoder.addTranscodingHint(WMFTranscoder.KEY_INPUT_WIDTH, new Integer(prop.getWidthBoundsPixels()));
            transcoder.addTranscodingHint(WMFTranscoder.KEY_INPUT_HEIGHT, new Integer(prop.getHeightBoundsPixels()));
            transcoder.addTranscodingHint(WMFTranscoder.KEY_XOFFSET, new Integer(prop.getXOffset()));
            transcoder.addTranscodingHint(WMFTranscoder.KEY_YOFFSET, new Integer(prop.getYOffset()));
            transcoder.transcode(input,output);

Copyright © 2008 Apache Software Foundation. All Rights Reserved.