Class DocWriter
- java.lang.Object
-
- com.aowagie.text.DocWriter
-
- All Implemented Interfaces:
DocListener
,ElementListener
,java.util.EventListener
- Direct Known Subclasses:
PdfWriter
public abstract class DocWriter extends java.lang.Object implements DocListener
An abstractWriter
class for documents.DocWriter
is the abstract class of several writers such asPdfWriter
andHtmlWriter
. ADocWriter
can be added as aDocListener
to a certainDocument
by getting an instance (see methodgetInstance()
in the specific writer-classes). EveryElement
added to the originalDocument
will be written to theOutputStream
of the listeningDocWriter
.- See Also:
Document
,DocListener
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
closeStream
Closes the stream on document closeprivate static byte
EQUALS
This is some byte that is often used.private static byte
FORWARD
This is some byte that is often used.private static byte
GT
This is some byte that is often used.protected boolean
open
Is the writer open for writing?protected OutputStreamCounter
os
The outputstream of this writer.private boolean
pause
Do we have to pause all writing actions?private static byte
QUOTE
This is some byte that is often used.private static byte
SPACE
This is some byte that is often used.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(Element element)
Signals that anElement
was added to theDocument
.void
close()
Signals that theDocument
was closed and that no otherElements
will be added.static byte[]
getISOBytes(java.lang.String text)
Converts aString
into aByte
array according to the ISO-8859-1 codepage.boolean
isCloseStream()
Checks if the stream is to be closed on document closeboolean
isPaused()
Checks if writing is paused.boolean
newPage()
Signals that an new page has to be started.void
open()
Signals that theDocument
was opened.void
resetFooter()
Resets the footer of this document.void
resetHeader()
Resets the header of this document.void
resetPageCount()
Sets the page number to 0.void
setCloseStream(boolean closeStream)
Sets the close state of the stream after document closevoid
setFooter(HeaderFooter footer)
Changes the footer of this document.void
setHeader(HeaderFooter header)
Changes the header of this document.boolean
setMarginMirroring(boolean MarginMirroring)
Parameter that allows you to do left/right margin mirroring (odd/even pages)boolean
setMarginMirroringTopBottom(boolean MarginMirroring)
Parameter that allows you to do top/bottom margin mirroring (odd/even pages)boolean
setMargins(float marginLeft, float marginRight, float marginTop, float marginBottom)
Sets the margins.void
setPageCount(int pageN)
Sets the page number.boolean
setPageSize(Rectangle pageSize)
Sets the pagesize.private void
write(java.lang.String string)
Writes aString
to theOutputStream
.private void
write(java.lang.String key, java.lang.String value)
Writes a key-value pair to the outputstream.
-
-
-
Field Detail
-
SPACE
private static final byte SPACE
This is some byte that is often used.- See Also:
- Constant Field Values
-
EQUALS
private static final byte EQUALS
This is some byte that is often used.- See Also:
- Constant Field Values
-
QUOTE
private static final byte QUOTE
This is some byte that is often used.- See Also:
- Constant Field Values
-
GT
private static final byte GT
This is some byte that is often used.- See Also:
- Constant Field Values
-
FORWARD
private static final byte FORWARD
This is some byte that is often used.- See Also:
- Constant Field Values
-
os
protected OutputStreamCounter os
The outputstream of this writer.
-
open
protected boolean open
Is the writer open for writing?
-
pause
private final boolean pause
Do we have to pause all writing actions?- See Also:
- Constant Field Values
-
closeStream
private boolean closeStream
Closes the stream on document close
-
-
Constructor Detail
-
DocWriter
protected DocWriter()
-
DocWriter
protected DocWriter(Document document, java.io.OutputStream os)
Constructs aDocWriter
.- Parameters:
document
- TheDocument
that has to be writtenos
- TheOutputStream
the writer has to write to.
-
-
Method Detail
-
add
public boolean add(Element element) throws DocumentException
Signals that anElement
was added to theDocument
.This method should be overridden in the specific
DocWriter
classes derived from this abstract class.- Specified by:
add
in interfaceElementListener
- Parameters:
element
- A high level object to add- Returns:
false
- Throws:
DocumentException
- when a document isn't open yet, or has been closed
-
open
public void open()
Signals that theDocument
was opened.- Specified by:
open
in interfaceDocListener
-
setPageSize
public boolean setPageSize(Rectangle pageSize)
Sets the pagesize.- Specified by:
setPageSize
in interfaceDocListener
- Parameters:
pageSize
- the new pagesize- Returns:
- a
boolean
-
setMargins
public boolean setMargins(float marginLeft, float marginRight, float marginTop, float marginBottom)
Sets the margins.This does nothing. Has to be overridden if needed.
- Specified by:
setMargins
in interfaceDocListener
- Parameters:
marginLeft
- the margin on the leftmarginRight
- the margin on the rightmarginTop
- the margin on the topmarginBottom
- the margin on the bottom- Returns:
false
-
newPage
public boolean newPage()
Signals that an new page has to be started.This does nothing. Has to be overridden if needed.
- Specified by:
newPage
in interfaceDocListener
- Returns:
true
if the page was added,false
if not.
-
setHeader
public void setHeader(HeaderFooter header)
Changes the header of this document.This method should be overridden in the specific
DocWriter
classes derived from this abstract class if they actually support the use of headers.- Specified by:
setHeader
in interfaceDocListener
- Parameters:
header
- the new header
-
resetHeader
public void resetHeader()
Resets the header of this document.This method should be overridden in the specific
DocWriter
classes derived from this abstract class if they actually support the use of headers.- Specified by:
resetHeader
in interfaceDocListener
-
setFooter
public void setFooter(HeaderFooter footer)
Changes the footer of this document.This method should be overridden in the specific
DocWriter
classes derived from this abstract class if they actually support the use of footers.- Specified by:
setFooter
in interfaceDocListener
- Parameters:
footer
- the new footer
-
resetFooter
public void resetFooter()
Resets the footer of this document.This method should be overridden in the specific
DocWriter
classes derived from this abstract class if they actually support the use of footers.- Specified by:
resetFooter
in interfaceDocListener
-
resetPageCount
public void resetPageCount()
Sets the page number to 0.This method should be overridden in the specific
DocWriter
classes derived from this abstract class if they actually support the use of pagenumbers.- Specified by:
resetPageCount
in interfaceDocListener
-
setPageCount
public void setPageCount(int pageN)
Sets the page number.This method should be overridden in the specific
DocWriter
classes derived from this abstract class if they actually support the use of pagenumbers.- Specified by:
setPageCount
in interfaceDocListener
- Parameters:
pageN
- the new page number
-
close
public void close()
Signals that theDocument
was closed and that no otherElements
will be added.- Specified by:
close
in interfaceDocListener
-
getISOBytes
public static final byte[] getISOBytes(java.lang.String text)
Converts aString
into aByte
array according to the ISO-8859-1 codepage.- Parameters:
text
- the text to be converted- Returns:
- the conversion result
-
isPaused
public boolean isPaused()
Checks if writing is paused.- Returns:
true
if writing temporarily has to be paused,false
otherwise.
-
write
private void write(java.lang.String string) throws java.io.IOException
Writes aString
to theOutputStream
.- Parameters:
string
- theString
to write- Throws:
java.io.IOException
- on error
-
write
private void write(java.lang.String key, java.lang.String value) throws java.io.IOException
Writes a key-value pair to the outputstream.- Parameters:
key
- the name of an attributevalue
- the value of an attribute- Throws:
java.io.IOException
- on error
-
isCloseStream
public boolean isCloseStream()
Checks if the stream is to be closed on document close- Returns:
- true if the stream is closed on document close
-
setCloseStream
public void setCloseStream(boolean closeStream)
Sets the close state of the stream after document close- Parameters:
closeStream
- true if the stream is closed on document close
-
setMarginMirroring
public boolean setMarginMirroring(boolean MarginMirroring)
Description copied from interface:DocListener
Parameter that allows you to do left/right margin mirroring (odd/even pages)- Specified by:
setMarginMirroring
in interfaceDocListener
- Parameters:
MarginMirroring
- Margin- Returns:
- true if successful
- See Also:
DocListener.setMarginMirroring(boolean)
-
setMarginMirroringTopBottom
public boolean setMarginMirroringTopBottom(boolean MarginMirroring)
Description copied from interface:DocListener
Parameter that allows you to do top/bottom margin mirroring (odd/even pages)- Specified by:
setMarginMirroringTopBottom
in interfaceDocListener
- Parameters:
MarginMirroring
- Margin- Returns:
- true if successful
- Since:
- 2.1.6
- See Also:
DocListener.setMarginMirroring(boolean)
-
-