org.extex.backend.documentWriter.postscript
Class PsWriter

java.lang.Object
  extended by org.extex.backend.documentWriter.postscript.AbstractPostscriptWriter
      extended by org.extex.backend.documentWriter.postscript.PsWriter
All Implemented Interfaces:
DocumentWriter, MultipleDocumentStream, SingleDocumentStream, ColorAware, FontAware, Configurable, ResourceAware

public class PsWriter
extends AbstractPostscriptWriter
implements SingleDocumentStream

This document writer produces multi-page PostScript documents.

Version:
$Revision: 5923 $
Author:
Gerd Neugebauer

Field Summary
 
Fields inherited from class org.extex.backend.documentWriter.postscript.AbstractPostscriptWriter
COMMENT, DF
 
Constructor Summary
PsWriter(DocumentWriterOptions options)
          Creates a new object.
 
Method Summary
 void close()
          This method is invoked upon the end of the processing.
 void setOutputStream(java.io.OutputStream out)
          Setter for the output stream.
 int shipout(Page p)
          This is the entry point for the document writer.
 
Methods inherited from class org.extex.backend.documentWriter.postscript.AbstractPostscriptWriter
configure, getConverter, getExtension, getFontFactory, getFontManager, getParameter, newOutputStream, setColorConverter, setExtension, setFontFactory, setOutputStreamFactory, setParameter, setResourceFinder, startFile, writeBoundingBox, writeDsc, writeFonts, writeHighResBoundingBox
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PsWriter

public PsWriter(DocumentWriterOptions options)
Creates a new object.

Parameters:
options - the options for the document writer
Method Detail

close

public void close()
           throws DocumentWriterException,
                  java.io.IOException
This method is invoked upon the end of the processing.

Specified by:
close in interface DocumentWriter
Throws:
java.io.IOException - in case of an IO exception
DocumentWriterException
See Also:
DocumentWriter.close()

setOutputStream

public void setOutputStream(java.io.OutputStream out)
Setter for the output stream.

Specified by:
setOutputStream in interface SingleDocumentStream
Parameters:
out - the output stream
See Also:
SingleDocumentStream.setOutputStream( java.io.OutputStream)

shipout

public int shipout(Page p)
            throws GeneralException,
                   java.io.IOException
This is the entry point for the document writer. Here it receives a complete node list to be sent to the output writer. It can be assumed that all values for width, height, and depth of the node lists are properly filled. Thus all information should be present to place the ink on the paper.

If the page is null then no page has to be shipped and 0 has to be returned.

Specified by:
shipout in interface DocumentWriter
Parameters:
p - the page to send
Returns:
returns the number of pages shipped
Throws:
GeneralException - in case of a general exception
especially
DocumentWriterException in case of an error
java.io.IOException - in case of an IO exception
See Also:
DocumentWriter.shipout( org.extex.typesetter.type.page.Page)