standup.symbol
Class WMFDecoder

java.lang.Object
  extended by standup.symbol.WMFDecoder
All Implemented Interfaces:
ImageProducer

public class WMFDecoder
extends Object
implements ImageProducer


Field Summary
private static int BI_RLE4
           
private static int BI_RLE8
           
private static int BLACKNESS
           
private  ColorModel cmodel
           
private  Vector consumers
           
private  Stack DCstack
           
(package private)  boolean debug
           
(package private)  boolean drawCross_if_error
           
private static int DSTINVERT
           
private  boolean err
           
(package private) static int ETO_CLIPPED
           
(package private) static int ETO_GRAYED
           
(package private) static int ETO_OPAQUE
           
private  Frame fr
           
private  WmfDecObj[] gdiObj
           
private  int height
           
private  InputStream in
           
private  int inch
           
private  int left
           
private  int max
           
private static int META_ABORTDOC
           
private static int META_ANIMATEPALETTE
           
private static int META_ARC
           
private static int META_BITBLT
           
private static int META_CHORD
           
private static int META_CREATEBITMAP
           
private static int META_CREATEBITMAPINDIRECT
           
private static int META_CREATEBRUSH
           
private static int META_CREATEBRUSHINDIRECT
           
private static int META_CREATEFONTINDIRECT
           
private static int META_CREATEPALETTE
           
private static int META_CREATEPATTERNBRUSH
           
private static int META_CREATEPENINDIRECT
           
private static int META_CREATEREGION
           
private static int META_DELETEOBJECT
           
private static int META_DIBBITBLT
           
private static int META_DIBCREATEPATTERNBRUSH
           
private static int META_DIBSTRETCHBLT
           
private static int META_DRAWTEXT
           
private static int META_ELLIPSE
           
private static int META_ENDDOC
           
private static int META_ENDPAGE
           
private static int META_ESCAPE
           
private static int META_EXCLUDECLIPRECT
           
private static int META_EXTFLOODFILL
           
private static int META_EXTTEXTOUT
           
private static int META_FILLREGION
           
private static int META_FLOODFILL
           
private static int META_FRAMEREGION
           
private static int META_INTERSECTCLIPRECT
           
private static int META_INVERTREGION
           
private static int META_LINETO
           
private static int META_MOVETO
           
private static int META_OFFSETCLIPRGN
           
private static int META_OFFSETVIEWPORTORG
           
private static int META_OFFSETWINDOWORG
           
private static int META_PAINTREGION
           
private static int META_PATBLT
           
private static int META_PIE
           
private static int META_POLYGON
           
private static int META_POLYLINE
           
private static int META_POLYPOLYGON
           
private static int META_REALIZEPALETTE
           
private static int META_RECTANGLE
           
private static int META_RESETDC
           
private static int META_RESIZEPALETTE
           
private static int META_RESTOREDC
           
private static int META_ROUNDRECT
           
private static int META_SAVEDC
           
private static int META_SCALEVIEWPORTEXT
           
private static int META_SCALEWINDOWEXT
           
private static int META_SELECTCLIPREGION
           
private static int META_SELECTOBJECT
           
private static int META_SELECTPALETTE
           
private static int META_SETBKCOLOR
           
private static int META_SETBKMODE
           
private static int META_SETDIBTODEV
           
private static int META_SETMAPMODE
           
private static int META_SETMAPPERFLAGS
           
private static int META_SETPALENTRIES
           
private static int META_SETPIXEL
           
private static int META_SETPOLYFILLMODE
           
private static int META_SETRELABS
           
private static int META_SETROP2
           
private static int META_SETSTRETCHBLTMODE
           
private static int META_SETTEXTALIGN
           
private static int META_SETTEXTCHAREXTRA
           
private static int META_SETTEXTCOLOR
           
private static int META_SETTEXTJUSTIFICATION
           
private static int META_SETVIEWPORTEXT
           
private static int META_SETVIEWPORTORG
           
private static int META_SETWINDOWEXT
           
private static int META_SETWINDOWORG
           
private static int META_STARTDOC
           
private static int META_STARTPAGE
           
private static int META_STRETCHBLT
           
private static int META_STRETCHDIB
           
private static int META_TEXTOUT
           
private static int MFCOMMENT
           
private  int minsize
           
private  int obj
           
(package private) static int OPAQUE
           
private  short[] params
           
private static int PATCOPY
           
private static int PATINVERT
           
private  boolean producing
           
(package private) static int PS_DASH
           
(package private) static int PS_DASHDOT
           
(package private) static int PS_DASHDOTDOT
           
(package private) static int PS_DOT
           
(package private) static int PS_INSIDEFRAME
           
(package private) static int PS_NULL
           
(package private) static int PS_SOLID
           
private  int res
           
private  int[] rgbPixels
           
private  int siz
           
private static int SRCCOPY
           
private static int TA_BASELINE
           
private static int TA_BOTTOM
           
private static int TA_CENTER
           
(package private) static int TA_TOP
           
private static int TA_UPDATECP
           
private  int top
           
(package private) static int TRANSPARENT
           
private static int WHITENESS
           
private  int width
           
 
Constructor Summary
WMFDecoder(InputStream is)
           
 
Method Summary
private  int add_handle(WmfDecObj x)
           
 void addConsumer(ImageConsumer ic)
           
private  int arcus(int ank, int geg)
           
private  boolean chkHeader(InputStream in, Dimension d)
           
private  Image DIBBitmapImage(int off, short[] params, Component comp)
           
private  void drawOpaqePattern(Graphics g, Image im, int x1, int y1, int x2, int y2, ImageObserver fr)
           
private  int getHiByteVal(int hhh)
           
private  int getLoByteVal(int hhh)
           
 boolean isConsumer(ImageConsumer ic)
           
private  Image OldBitmapImage(int off, short[] params, Component comp)
           
private static void PrintObserverStatus(String text, int status)
           
private  short readInt16(InputStream in)
           
private  int readInt32(InputStream in)
           
private  boolean readRecord(InputStream in)
           
private  void readWmf()
           
 void removeConsumer(ImageConsumer ic)
           
 void requestTopDownLeftRightResend(ImageConsumer ic)
           
private  void sendImage()
           
private  void showparams(short[] params, int recSize, int Func)
           
 void startProduction(ImageConsumer ic)
           
private  int transform(int param, int minsize)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

debug

boolean debug

drawCross_if_error

boolean drawCross_if_error

minsize

private int minsize

top

private int top

left

private int left

siz

private int siz

obj

private int obj

max

private int max

res

private int res

inch

private int inch

gdiObj

private WmfDecObj[] gdiObj

DCstack

private Stack DCstack

rgbPixels

private int[] rgbPixels

params

private short[] params

fr

private Frame fr

width

private int width

height

private int height

in

private InputStream in

cmodel

private ColorModel cmodel

err

private boolean err

producing

private boolean producing

consumers

private Vector consumers

META_SETBKCOLOR

private static final int META_SETBKCOLOR
See Also:
Constant Field Values

META_SETBKMODE

private static final int META_SETBKMODE
See Also:
Constant Field Values

META_SETMAPMODE

private static final int META_SETMAPMODE
See Also:
Constant Field Values

META_SETROP2

private static final int META_SETROP2
See Also:
Constant Field Values

META_SETRELABS

private static final int META_SETRELABS
See Also:
Constant Field Values

META_SETPOLYFILLMODE

private static final int META_SETPOLYFILLMODE
See Also:
Constant Field Values

META_SETSTRETCHBLTMODE

private static final int META_SETSTRETCHBLTMODE
See Also:
Constant Field Values

META_SETTEXTCHAREXTRA

private static final int META_SETTEXTCHAREXTRA
See Also:
Constant Field Values

META_SETTEXTCOLOR

private static final int META_SETTEXTCOLOR
See Also:
Constant Field Values

META_SETTEXTJUSTIFICATION

private static final int META_SETTEXTJUSTIFICATION
See Also:
Constant Field Values

META_SETWINDOWORG

private static final int META_SETWINDOWORG
See Also:
Constant Field Values

META_SETWINDOWEXT

private static final int META_SETWINDOWEXT
See Also:
Constant Field Values

META_SETVIEWPORTORG

private static final int META_SETVIEWPORTORG
See Also:
Constant Field Values

META_SETVIEWPORTEXT

private static final int META_SETVIEWPORTEXT
See Also:
Constant Field Values

META_OFFSETWINDOWORG

private static final int META_OFFSETWINDOWORG
See Also:
Constant Field Values

META_SCALEWINDOWEXT

private static final int META_SCALEWINDOWEXT
See Also:
Constant Field Values

META_OFFSETVIEWPORTORG

private static final int META_OFFSETVIEWPORTORG
See Also:
Constant Field Values

META_SCALEVIEWPORTEXT

private static final int META_SCALEVIEWPORTEXT
See Also:
Constant Field Values

META_LINETO

private static final int META_LINETO
See Also:
Constant Field Values

META_MOVETO

private static final int META_MOVETO
See Also:
Constant Field Values

META_EXCLUDECLIPRECT

private static final int META_EXCLUDECLIPRECT
See Also:
Constant Field Values

META_INTERSECTCLIPRECT

private static final int META_INTERSECTCLIPRECT
See Also:
Constant Field Values

META_ARC

private static final int META_ARC
See Also:
Constant Field Values

META_ELLIPSE

private static final int META_ELLIPSE
See Also:
Constant Field Values

META_FLOODFILL

private static final int META_FLOODFILL
See Also:
Constant Field Values

META_PIE

private static final int META_PIE
See Also:
Constant Field Values

META_RECTANGLE

private static final int META_RECTANGLE
See Also:
Constant Field Values

META_ROUNDRECT

private static final int META_ROUNDRECT
See Also:
Constant Field Values

META_PATBLT

private static final int META_PATBLT
See Also:
Constant Field Values

META_SAVEDC

private static final int META_SAVEDC
See Also:
Constant Field Values

META_SETPIXEL

private static final int META_SETPIXEL
See Also:
Constant Field Values

META_OFFSETCLIPRGN

private static final int META_OFFSETCLIPRGN
See Also:
Constant Field Values

META_TEXTOUT

private static final int META_TEXTOUT
See Also:
Constant Field Values

META_BITBLT

private static final int META_BITBLT
See Also:
Constant Field Values

META_STRETCHBLT

private static final int META_STRETCHBLT
See Also:
Constant Field Values

META_POLYGON

private static final int META_POLYGON
See Also:
Constant Field Values

META_POLYLINE

private static final int META_POLYLINE
See Also:
Constant Field Values

META_ESCAPE

private static final int META_ESCAPE
See Also:
Constant Field Values

META_RESTOREDC

private static final int META_RESTOREDC
See Also:
Constant Field Values

META_FILLREGION

private static final int META_FILLREGION
See Also:
Constant Field Values

META_FRAMEREGION

private static final int META_FRAMEREGION
See Also:
Constant Field Values

META_INVERTREGION

private static final int META_INVERTREGION
See Also:
Constant Field Values

META_PAINTREGION

private static final int META_PAINTREGION
See Also:
Constant Field Values

META_SELECTCLIPREGION

private static final int META_SELECTCLIPREGION
See Also:
Constant Field Values

META_SELECTOBJECT

private static final int META_SELECTOBJECT
See Also:
Constant Field Values

META_SETTEXTALIGN

private static final int META_SETTEXTALIGN
See Also:
Constant Field Values

META_DRAWTEXT

private static final int META_DRAWTEXT
See Also:
Constant Field Values

META_CHORD

private static final int META_CHORD
See Also:
Constant Field Values

META_SETMAPPERFLAGS

private static final int META_SETMAPPERFLAGS
See Also:
Constant Field Values

META_EXTTEXTOUT

private static final int META_EXTTEXTOUT
See Also:
Constant Field Values

META_SETDIBTODEV

private static final int META_SETDIBTODEV
See Also:
Constant Field Values

META_SELECTPALETTE

private static final int META_SELECTPALETTE
See Also:
Constant Field Values

META_REALIZEPALETTE

private static final int META_REALIZEPALETTE
See Also:
Constant Field Values

META_ANIMATEPALETTE

private static final int META_ANIMATEPALETTE
See Also:
Constant Field Values

META_SETPALENTRIES

private static final int META_SETPALENTRIES
See Also:
Constant Field Values

META_POLYPOLYGON

private static final int META_POLYPOLYGON
See Also:
Constant Field Values

META_RESIZEPALETTE

private static final int META_RESIZEPALETTE
See Also:
Constant Field Values

META_DIBBITBLT

private static final int META_DIBBITBLT
See Also:
Constant Field Values

META_DIBSTRETCHBLT

private static final int META_DIBSTRETCHBLT
See Also:
Constant Field Values

META_DIBCREATEPATTERNBRUSH

private static final int META_DIBCREATEPATTERNBRUSH
See Also:
Constant Field Values

META_STRETCHDIB

private static final int META_STRETCHDIB
See Also:
Constant Field Values

META_EXTFLOODFILL

private static final int META_EXTFLOODFILL
See Also:
Constant Field Values

META_RESETDC

private static final int META_RESETDC
See Also:
Constant Field Values

META_STARTDOC

private static final int META_STARTDOC
See Also:
Constant Field Values

META_STARTPAGE

private static final int META_STARTPAGE
See Also:
Constant Field Values

META_ENDPAGE

private static final int META_ENDPAGE
See Also:
Constant Field Values

META_ABORTDOC

private static final int META_ABORTDOC
See Also:
Constant Field Values

META_ENDDOC

private static final int META_ENDDOC
See Also:
Constant Field Values

META_DELETEOBJECT

private static final int META_DELETEOBJECT
See Also:
Constant Field Values

META_CREATEPALETTE

private static final int META_CREATEPALETTE
See Also:
Constant Field Values

META_CREATEBRUSH

private static final int META_CREATEBRUSH
See Also:
Constant Field Values

META_CREATEPATTERNBRUSH

private static final int META_CREATEPATTERNBRUSH
See Also:
Constant Field Values

META_CREATEPENINDIRECT

private static final int META_CREATEPENINDIRECT
See Also:
Constant Field Values

META_CREATEFONTINDIRECT

private static final int META_CREATEFONTINDIRECT
See Also:
Constant Field Values

META_CREATEBRUSHINDIRECT

private static final int META_CREATEBRUSHINDIRECT
See Also:
Constant Field Values

META_CREATEBITMAPINDIRECT

private static final int META_CREATEBITMAPINDIRECT
See Also:
Constant Field Values

META_CREATEBITMAP

private static final int META_CREATEBITMAP
See Also:
Constant Field Values

META_CREATEREGION

private static final int META_CREATEREGION
See Also:
Constant Field Values

MFCOMMENT

private static final int MFCOMMENT
See Also:
Constant Field Values

SRCCOPY

private static final int SRCCOPY
See Also:
Constant Field Values

PATCOPY

private static final int PATCOPY
See Also:
Constant Field Values

PATINVERT

private static final int PATINVERT
See Also:
Constant Field Values

DSTINVERT

private static final int DSTINVERT
See Also:
Constant Field Values

BLACKNESS

private static final int BLACKNESS
See Also:
Constant Field Values

WHITENESS

private static final int WHITENESS
See Also:
Constant Field Values

BI_RLE8

private static final int BI_RLE8
See Also:
Constant Field Values

BI_RLE4

private static final int BI_RLE4
See Also:
Constant Field Values

TA_BASELINE

private static final int TA_BASELINE
See Also:
Constant Field Values

TA_BOTTOM

private static final int TA_BOTTOM
See Also:
Constant Field Values

TA_CENTER

private static final int TA_CENTER
See Also:
Constant Field Values

TA_UPDATECP

private static final int TA_UPDATECP
See Also:
Constant Field Values

TA_TOP

static final int TA_TOP
See Also:
Constant Field Values

OPAQUE

static final int OPAQUE
See Also:
Constant Field Values

TRANSPARENT

static final int TRANSPARENT
See Also:
Constant Field Values

ETO_GRAYED

static final int ETO_GRAYED
See Also:
Constant Field Values

ETO_OPAQUE

static final int ETO_OPAQUE
See Also:
Constant Field Values

ETO_CLIPPED

static final int ETO_CLIPPED
See Also:
Constant Field Values

PS_SOLID

static final int PS_SOLID
See Also:
Constant Field Values

PS_DASH

static final int PS_DASH
See Also:
Constant Field Values

PS_DOT

static final int PS_DOT
See Also:
Constant Field Values

PS_DASHDOT

static final int PS_DASHDOT
See Also:
Constant Field Values

PS_DASHDOTDOT

static final int PS_DASHDOTDOT
See Also:
Constant Field Values

PS_NULL

static final int PS_NULL
See Also:
Constant Field Values

PS_INSIDEFRAME

static final int PS_INSIDEFRAME
See Also:
Constant Field Values
Constructor Detail

WMFDecoder

public WMFDecoder(InputStream is)
Method Detail

addConsumer

public void addConsumer(ImageConsumer ic)
Specified by:
addConsumer in interface ImageProducer

startProduction

public void startProduction(ImageConsumer ic)
Specified by:
startProduction in interface ImageProducer

isConsumer

public boolean isConsumer(ImageConsumer ic)
Specified by:
isConsumer in interface ImageProducer

removeConsumer

public void removeConsumer(ImageConsumer ic)
Specified by:
removeConsumer in interface ImageProducer

requestTopDownLeftRightResend

public void requestTopDownLeftRightResend(ImageConsumer ic)
Specified by:
requestTopDownLeftRightResend in interface ImageProducer

sendImage

private void sendImage()

PrintObserverStatus

private static void PrintObserverStatus(String text,
                                        int status)

readWmf

private void readWmf()
              throws IOException,
                     InterruptedException
Throws:
IOException
InterruptedException

chkHeader

private boolean chkHeader(InputStream in,
                          Dimension d)
                   throws IOException
Throws:
IOException

readRecord

private boolean readRecord(InputStream in)

drawOpaqePattern

private void drawOpaqePattern(Graphics g,
                              Image im,
                              int x1,
                              int y1,
                              int x2,
                              int y2,
                              ImageObserver fr)

getHiByteVal

private int getHiByteVal(int hhh)

getLoByteVal

private int getLoByteVal(int hhh)

transform

private int transform(int param,
                      int minsize)

showparams

private void showparams(short[] params,
                        int recSize,
                        int Func)

add_handle

private int add_handle(WmfDecObj x)

readInt32

private int readInt32(InputStream in)
               throws IOException
Throws:
IOException

readInt16

private short readInt16(InputStream in)
                 throws IOException
Throws:
IOException

arcus

private int arcus(int ank,
                  int geg)

DIBBitmapImage

private Image DIBBitmapImage(int off,
                             short[] params,
                             Component comp)

OldBitmapImage

private Image OldBitmapImage(int off,
                             short[] params,
                             Component comp)