org.apache.poi.hslf.dev
Class SlideShowDumper

java.lang.Object
  extended by org.apache.poi.hslf.dev.SlideShowDumper

public final class SlideShowDumper
extends java.lang.Object

This class provides a way to "peek" inside a powerpoint file. It will print out all the types it find, and for those it know aren't atoms, what they contain To figure out what things are, and if they are atoms or not, used the list in hslf.record.RecordTypes To peek inside PPDrawings, which hold Escher drawings, we use the DDF package from POI (but we can fake it by using the Escher listings from hslf.record.RecordTypes also)

Author:
Nick Burch

Constructor Summary
SlideShowDumper(java.io.InputStream inputStream)
          Constructs a Powerpoint dump from an input stream.
SlideShowDumper(POIFSFileSystem filesystem)
          Constructs a Powerpoint dump from a POIFS Filesystem.
SlideShowDumper(java.lang.String fileName)
          Constructs a Powerpoint dump from fileName.
 
Method Summary
 void close()
          Shuts things down.
static void main(java.lang.String[] args)
          right now this function takes one parameter: a ppt file, and outputs a dump of what it contains
 java.lang.String makeHex(int i)
           
 java.lang.String makeHex(short s)
           
 void printDump()
           
 void setBasicEscher(boolean grok)
          Control dumping of any Escher records found - should our built in basic groker be used?
 void setDDFEscher(boolean grok)
          Control dumping of any Escher records found - should DDF be used?
 void walkEscherBasic(int indent, int pos, int len)
          Use the basic record format groking code to walk the Escher records
 void walkEscherDDF(int indent, int pos, int len)
          Use the DDF code to walk the Escher records
 void walkTree(int depth, int startPos, int maxLen)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SlideShowDumper

public SlideShowDumper(java.lang.String fileName)
                throws java.io.IOException
Constructs a Powerpoint dump from fileName. Parses the document and dumps out the contents

Parameters:
fileName - The name of the file to read.
Throws:
java.io.IOException - if there is a problem while parsing the document.

SlideShowDumper

public SlideShowDumper(java.io.InputStream inputStream)
                throws java.io.IOException
Constructs a Powerpoint dump from an input stream. Parses the document and dumps out the contents

Parameters:
inputStream - the source of the data
Throws:
java.io.IOException - if there is a problem while parsing the document.

SlideShowDumper

public SlideShowDumper(POIFSFileSystem filesystem)
                throws java.io.IOException
Constructs a Powerpoint dump from a POIFS Filesystem. Parses the document and dumps out the contents

Parameters:
filesystem - the POIFS FileSystem to read from
Throws:
java.io.IOException - if there is a problem while parsing the document.
Method Detail

main

public static void main(java.lang.String[] args)
                 throws java.io.IOException
right now this function takes one parameter: a ppt file, and outputs a dump of what it contains

Throws:
java.io.IOException

setDDFEscher

public void setDDFEscher(boolean grok)
Control dumping of any Escher records found - should DDF be used?


setBasicEscher

public void setBasicEscher(boolean grok)
Control dumping of any Escher records found - should our built in basic groker be used?


close

public void close()
           throws java.io.IOException
Shuts things down. Closes underlying streams etc

Throws:
java.io.IOException

printDump

public void printDump()

makeHex

public java.lang.String makeHex(short s)

makeHex

public java.lang.String makeHex(int i)

walkTree

public void walkTree(int depth,
                     int startPos,
                     int maxLen)

walkEscherDDF

public void walkEscherDDF(int indent,
                          int pos,
                          int len)
Use the DDF code to walk the Escher records


walkEscherBasic

public void walkEscherBasic(int indent,
                            int pos,
                            int len)
Use the basic record format groking code to walk the Escher records



Copyright 2012 The Apache Software Foundation or its licensors, as applicable.