Class RtfSink
- java.lang.Object
-
- org.apache.maven.doxia.sink.impl.AbstractSink
-
- org.apache.maven.doxia.sink.impl.SinkAdapter
-
- org.apache.maven.doxia.sink.impl.AbstractTextSink
-
- org.apache.maven.doxia.module.rtf.RtfSink
-
- All Implemented Interfaces:
LogEnabled
,Markup
,TextMarkup
,Sink
public class RtfSink extends AbstractTextSink
RTF Sink implementation.- Since:
- 1.0
- Version:
- $Id$
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
RtfSink.Box
(package private) class
RtfSink.Cell
(package private) static class
RtfSink.Context
(package private) static class
RtfSink.Counter
(package private) static class
RtfSink.Indentation
(package private) static class
RtfSink.Item
(package private) static class
RtfSink.Line
(package private) class
RtfSink.Paragraph
(package private) static class
RtfSink.Row
(package private) class
RtfSink.Space
(package private) static class
RtfSink.Table
-
Field Summary
Fields Modifier and Type Field Description private static int
BORDER_WIDTH
private double
bottomMargin
private RtfSink.Cell
cell
private static int
CELL_HORIZONTAL_PAD
private static int
CELL_VERTICAL_PAD
private int
charSet
private int
codePage
private RtfSink.Context
context
private static int
CONTEXT_TABLE
private static int
CONTEXT_UNDEFINED
private static int
CONTEXT_VERBATIM
static double
DEFAULT_BOTTOM_MARGIN
Paper bottom margin, 2 cmstatic int
DEFAULT_CHAR_SET
ConstantDEFAULT_CHAR_SET=0
static int
DEFAULT_CODE_PAGE
Codepage, 1252static java.lang.String
DEFAULT_DATA_FORMAT
Data format, asciistatic int
DEFAULT_FONT_SIZE
Font size, 10 ptsstatic java.lang.String
DEFAULT_IMAGE_FORMAT
Image format, bmpstatic java.lang.String
DEFAULT_IMAGE_TYPE
Image type, palettestatic double
DEFAULT_LEFT_MARGIN
Paper left margin, 2 cmstatic double
DEFAULT_PAPER_HEIGHT
Paper height, 29.7 cmstatic double
DEFAULT_PAPER_WIDTH
Paper width, 21 cmstatic int
DEFAULT_RESOLUTION
Resolution, 72 dpistatic double
DEFAULT_RIGHT_MARGIN
Paper right margin, 2 cmstatic int
DEFAULT_SPACING
Spacing, 10 ptsstatic double
DEFAULT_TOP_MARGIN
Paper top margin, 2 cmprivate static int
DEFINITION_INDENT
private boolean
emptyHeader
protected int
fontSize
private java.util.Hashtable
fontTable
private boolean
frame
private boolean
imageCompression
private java.lang.String
imageDataFormat
private java.lang.String
imageFormat
private java.lang.String
imageType
static java.lang.String
IMG_DATA_ASCII
ConstantIMG_DATA_ASCII="ascii"
static java.lang.String
IMG_DATA_RAW
ConstantIMG_DATA_RAW="raw"
static java.lang.String
IMG_FORMAT_BMP
ConstantIMG_FORMAT_BMP="bmp"
static java.lang.String
IMG_FORMAT_WMF
ConstantIMG_FORMAT_WMF="wmf"
static java.lang.String
IMG_TYPE_PALETTE
ConstantIMG_TYPE_PALETTE="palette"
static java.lang.String
IMG_TYPE_RGB
ConstantIMG_TYPE_RGB="rgb"
protected RtfSink.Indentation
indentation
protected java.util.Stack<java.util.List<java.lang.Integer>>
inlineStack
Keep track of the closing tags for inline events.private java.util.Vector
itemNumber
private double
leftMargin
private RtfSink.Line
line
private static int
LIST_INDENT
private static java.lang.String
LIST_ITEM_HEADER
private int
listItemIndent
private java.util.Vector
numbering
private double
paperHeight
private double
paperWidth
private RtfSink.Paragraph
paragraph
private int
resolution
private double
rightMargin
private RtfSink.Row
row
private int
sectionLevel
protected RtfSink.Space
space
protected java.io.OutputStream
stream
private int
style
static int
STYLE_BOLD
ConstantSTYLE_BOLD=2
static int
STYLE_ITALIC
ConstantSTYLE_ITALIC=1
static int
STYLE_ROMAN
ConstantSTYLE_ROMAN=0
static int
STYLE_TYPEWRITER
ConstantSTYLE_TYPEWRITER=3
private RtfSink.Table
table
private double
topMargin
private static int
UNIT_CENTIMETER
private static int
UNIT_INCH
private static int
UNIT_MILLIMETER
private static int
UNIT_PIXEL
private java.lang.StringBuilder
verbatim
private java.util.Map
warnMessages
Map of warn messages with a String as key to describe the error type and a Set as value.protected java.io.PrintWriter
writer
-
Fields inherited from interface org.apache.maven.doxia.markup.Markup
COLON, EOL, EQUAL, GREATER_THAN, LEFT_CURLY_BRACKET, LEFT_SQUARE_BRACKET, LESS_THAN, MINUS, PLUS, QUOTE, RIGHT_CURLY_BRACKET, RIGHT_SQUARE_BRACKET, SEMICOLON, SLASH, SPACE, STAR
-
Fields inherited from interface org.apache.maven.doxia.sink.Sink
JUSTIFY_CENTER, JUSTIFY_LEFT, JUSTIFY_RIGHT, NUMBERING_DECIMAL, NUMBERING_LOWER_ALPHA, NUMBERING_LOWER_ROMAN, NUMBERING_UPPER_ALPHA, NUMBERING_UPPER_ROMAN, ROLE, SECTION_LEVEL_1, SECTION_LEVEL_2, SECTION_LEVEL_3, SECTION_LEVEL_4, SECTION_LEVEL_5, SECTION_LEVEL_6
-
Fields inherited from interface org.apache.maven.doxia.markup.TextMarkup
PIPE
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
anchor(java.lang.String name)
Starts an element which defines an anchor.void
anchor_()
Ends an anchor element.void
author()
Starts an author element.void
author_()
Ends an author element.private void
beginParagraph(RtfSink.Paragraph p)
private void
beginStyle(int style)
void
body()
Starts the body of a document.void
body_()
Ends the body element.void
bold()
Starts a bold element.void
bold_()
Ends a bold element.void
close()
Close the writer or the stream, if needed.void
date()
Starts the date element.void
date_()
Ends the date element.void
definedTerm()
Starts a definition term element within a definition list.void
definedTerm_()
Ends a definition term element within a definition list.void
definition()
Starts a definition element within a definition list.void
definition_()
Ends a definition element within a definition list.void
definitionList()
Starts a definition list element.void
definitionList_()
Ends a definition list element.void
definitionListItem()
Starts a list item element within a definition list.void
definitionListItem_()
Ends a list item element within a definition list.private void
endParagraph()
private void
endStyle()
private static java.lang.String
escape(java.lang.String s)
void
figure()
Starts a basic image embedding element.void
figure_()
Ends a basic image embedding element.void
figureCaption()
Starts a caption of an image element.void
figureCaption_()
Ends a caption of an image.void
figureGraphics(java.lang.String name)
Adding a source of a graphic.void
flush()
Flush the writer or the stream, if needed.protected Font
getFont(int style, int size)
getFont.private java.lang.String
getItemHeader()
void
head()
Starts the head element.void
head_()
Ends the head element.void
horizontalRule()
Adding a separator of sections from a text to each other.protected void
init()
This is called inSink.head()
or inSink.close()
, and can be used to set the sink into a clear state so it can be re-used.void
inline()
Starts an inline element.void
inline(SinkEventAttributes attributes)
Starts an inline element.void
inline_()
Ends an inline element.void
italic()
Starts an italic element.void
italic_()
Ends an italic element.void
lineBreak()
Adds a line break.void
link(java.lang.String name)
Starts an element which defines a link.void
link_()
Ends a link element.void
list()
Starts an unordered list element.void
list_()
Ends an unordered list element.void
listItem()
Starts a list item element within an unordered list.void
listItem_()
Ends a list item element within an unordered list.private void
logMessage(java.lang.String key, java.lang.String msg)
If debug mode is enabled, log themsg
as is, otherwise add unique msg inwarnMessages
.void
monospaced()
Starts a monospaced element.void
monospaced_()
Ends a monospaced element.void
nonBreakingSpace()
Adding a non breaking space, ie a space without any special formatting operations.private static java.lang.String
normalize(java.lang.String s)
void
numberedList(int numbering)
Starts an ordered list element.void
numberedList_()
Ends an ordered list element.void
numberedListItem()
Starts a list item element within an ordered list.void
numberedListItem_()
Ends a list item element within an ordered list.void
pageBreak()
Adding a new page separator.private int
pageWidth()
void
paragraph()
Starts an element which represents a paragraph.void
paragraph_()
Ends a paragraph element.void
section1()
Starts a first heading element which contains the topic of the section.void
section1_()
Ends a first heading element.void
section2()
Starts a second heading element which contains the topic of the section.void
section2_()
Ends a second heading element.void
section3()
Starts a third heading element which contains the topic of the section.void
section3_()
Ends a third heading element.void
section4()
Starts a 4th heading element which contains the topic of the section.void
section4_()
Ends a 4th heading element.void
section5()
Starts a 5th heading element which contains the topic of the section.void
section5_()
Ends a 5th heading element.void
sectionTitle()
Starts a title heading element.void
sectionTitle_()
Ends a title heading element.private void
setBorder(boolean bt, boolean bb, boolean bl, boolean br)
void
setBottomMargin(double margin)
Setter for the fieldbottomMargin
.void
setCharSet(int cs)
Setter for the fieldcharSet
.void
setCodePage(int cp)
Setter for the fieldcodePage
.void
setFontSize(int size)
Setter for the fieldfontSize
.void
setImageCompression(boolean compression)
Setter for the fieldimageCompression
.void
setImageDataFormat(java.lang.String format)
Setter for the fieldimageDataFormat
.void
setImageFormat(java.lang.String format)
Setter for the fieldimageFormat
.void
setImageType(java.lang.String type)
Setter for the fieldimageType
.private void
setJustification(int justification)
void
setLeftMargin(double margin)
Setter for the fieldleftMargin
.void
setPaperSize(double width, double height)
setPaperSize.void
setResolution(int resolution)
Setter for the fieldresolution
.void
setRightMargin(double margin)
Setter for the fieldrightMargin
.void
setSpacing(int spacing)
setSpacing.private void
setStyle(int style)
void
setTopMargin(double margin)
Setter for the fieldtopMargin
.private int
styleNumber(int level)
void
table()
Starts a table element for marking up tabular information in a document.void
table_()
Ends a table element.void
tableCaption()
Starts a caption element of a table.void
tableCaption_()
Ends a caption element of a table.void
tableCell()
Starts a cell element which defines a cell that contains data.void
tableCell_()
Ends a cell element.void
tableHeaderCell()
Starts a cell element which defines a cell that contains header information.void
tableHeaderCell_()
Ends a cell header element.void
tableRow()
Starts a row element which acts as a container for a row of table cells.void
tableRow_()
Ends a row element.void
tableRows(int[] justification, boolean grid)
Starts an element that contains rows of table data.void
tableRows_()
Ends an element that contains rows of table data.void
text(java.lang.String text)
Adding a text.private static int
textWidth(java.lang.String text, Font font)
void
title()
Starts the title element.void
title_()
Ends the title element.protected int
toTwips(double length, int unit)
toTwips.void
unknown(java.lang.String name, java.lang.Object[] requiredParams, SinkEventAttributes attributes)
Add an unknown event.void
verbatim(boolean boxed)
Starts an element which indicates that whitespace in the enclosed text has semantic relevance.void
verbatim_()
Ends a verbatim element.private void
writeImage(java.lang.String source)
-
Methods inherited from class org.apache.maven.doxia.sink.impl.SinkAdapter
address, address, address_, anchor, article, article, article_, author, blockquote, blockquote, blockquote_, body, comment, content, content, content_, data, data, data_, date, definedTerm, definition, definitionList, definitionListItem, division, division, division_, figure, figureCaption, figureGraphics, footer, footer, footer_, head, header, header, header_, horizontalRule, lineBreak, lineBreakOpportunity, lineBreakOpportunity, link, list, listItem, navigation, navigation, navigation_, numberedList, numberedListItem, paragraph, rawText, section, section_, section6, section6_, sectionTitle, sectionTitle_, sectionTitle1, sectionTitle1_, sectionTitle2, sectionTitle2_, sectionTitle3, sectionTitle3_, sectionTitle4, sectionTitle4_, sectionTitle5, sectionTitle5_, sectionTitle6, sectionTitle6_, sidebar, sidebar, sidebar_, table, tableCaption, tableCell, tableCell, tableHeaderCell, tableHeaderCell, tableRow, text, time, time, time_, title, verbatim
-
Methods inherited from class org.apache.maven.doxia.sink.impl.AbstractSink
enableLogging, getLog, unifyEOLs
-
-
-
-
Field Detail
-
DEFAULT_PAPER_WIDTH
public static final double DEFAULT_PAPER_WIDTH
Paper width, 21 cm- See Also:
- Constant Field Values
-
DEFAULT_PAPER_HEIGHT
public static final double DEFAULT_PAPER_HEIGHT
Paper height, 29.7 cm- See Also:
- Constant Field Values
-
DEFAULT_TOP_MARGIN
public static final double DEFAULT_TOP_MARGIN
Paper top margin, 2 cm- See Also:
- Constant Field Values
-
DEFAULT_BOTTOM_MARGIN
public static final double DEFAULT_BOTTOM_MARGIN
Paper bottom margin, 2 cm- See Also:
- Constant Field Values
-
DEFAULT_LEFT_MARGIN
public static final double DEFAULT_LEFT_MARGIN
Paper left margin, 2 cm- See Also:
- Constant Field Values
-
DEFAULT_RIGHT_MARGIN
public static final double DEFAULT_RIGHT_MARGIN
Paper right margin, 2 cm- See Also:
- Constant Field Values
-
DEFAULT_FONT_SIZE
public static final int DEFAULT_FONT_SIZE
Font size, 10 pts- See Also:
- Constant Field Values
-
DEFAULT_SPACING
public static final int DEFAULT_SPACING
Spacing, 10 pts- See Also:
- Constant Field Values
-
DEFAULT_RESOLUTION
public static final int DEFAULT_RESOLUTION
Resolution, 72 dpi- See Also:
- Constant Field Values
-
DEFAULT_IMAGE_FORMAT
public static final java.lang.String DEFAULT_IMAGE_FORMAT
Image format, bmp- See Also:
- Constant Field Values
-
DEFAULT_IMAGE_TYPE
public static final java.lang.String DEFAULT_IMAGE_TYPE
Image type, palette- See Also:
- Constant Field Values
-
DEFAULT_DATA_FORMAT
public static final java.lang.String DEFAULT_DATA_FORMAT
Data format, ascii- See Also:
- Constant Field Values
-
DEFAULT_CODE_PAGE
public static final int DEFAULT_CODE_PAGE
Codepage, 1252- See Also:
- Constant Field Values
-
DEFAULT_CHAR_SET
public static final int DEFAULT_CHAR_SET
ConstantDEFAULT_CHAR_SET=0
- See Also:
- Constant Field Values
-
IMG_FORMAT_BMP
public static final java.lang.String IMG_FORMAT_BMP
ConstantIMG_FORMAT_BMP="bmp"
- See Also:
- Constant Field Values
-
IMG_FORMAT_WMF
public static final java.lang.String IMG_FORMAT_WMF
ConstantIMG_FORMAT_WMF="wmf"
- See Also:
- Constant Field Values
-
IMG_TYPE_PALETTE
public static final java.lang.String IMG_TYPE_PALETTE
ConstantIMG_TYPE_PALETTE="palette"
- See Also:
- Constant Field Values
-
IMG_TYPE_RGB
public static final java.lang.String IMG_TYPE_RGB
ConstantIMG_TYPE_RGB="rgb"
- See Also:
- Constant Field Values
-
IMG_DATA_ASCII
public static final java.lang.String IMG_DATA_ASCII
ConstantIMG_DATA_ASCII="ascii"
- See Also:
- Constant Field Values
-
IMG_DATA_RAW
public static final java.lang.String IMG_DATA_RAW
ConstantIMG_DATA_RAW="raw"
- See Also:
- Constant Field Values
-
STYLE_ROMAN
public static final int STYLE_ROMAN
ConstantSTYLE_ROMAN=0
- See Also:
- Constant Field Values
-
STYLE_ITALIC
public static final int STYLE_ITALIC
ConstantSTYLE_ITALIC=1
- See Also:
- Constant Field Values
-
STYLE_BOLD
public static final int STYLE_BOLD
ConstantSTYLE_BOLD=2
- See Also:
- Constant Field Values
-
STYLE_TYPEWRITER
public static final int STYLE_TYPEWRITER
ConstantSTYLE_TYPEWRITER=3
- See Also:
- Constant Field Values
-
CONTEXT_UNDEFINED
private static final int CONTEXT_UNDEFINED
- See Also:
- Constant Field Values
-
CONTEXT_VERBATIM
private static final int CONTEXT_VERBATIM
- See Also:
- Constant Field Values
-
CONTEXT_TABLE
private static final int CONTEXT_TABLE
- See Also:
- Constant Field Values
-
UNIT_MILLIMETER
private static final int UNIT_MILLIMETER
- See Also:
- Constant Field Values
-
UNIT_CENTIMETER
private static final int UNIT_CENTIMETER
- See Also:
- Constant Field Values
-
UNIT_INCH
private static final int UNIT_INCH
- See Also:
- Constant Field Values
-
UNIT_PIXEL
private static final int UNIT_PIXEL
- See Also:
- Constant Field Values
-
LIST_INDENT
private static final int LIST_INDENT
- See Also:
- Constant Field Values
-
LIST_ITEM_HEADER
private static final java.lang.String LIST_ITEM_HEADER
- See Also:
- Constant Field Values
-
DEFINITION_INDENT
private static final int DEFINITION_INDENT
- See Also:
- Constant Field Values
-
CELL_HORIZONTAL_PAD
private static final int CELL_HORIZONTAL_PAD
- See Also:
- Constant Field Values
-
CELL_VERTICAL_PAD
private static final int CELL_VERTICAL_PAD
- See Also:
- Constant Field Values
-
BORDER_WIDTH
private static final int BORDER_WIDTH
- See Also:
- Constant Field Values
-
paperWidth
private double paperWidth
-
paperHeight
private double paperHeight
-
topMargin
private double topMargin
-
bottomMargin
private double bottomMargin
-
leftMargin
private double leftMargin
-
rightMargin
private double rightMargin
-
fontSize
protected int fontSize
-
resolution
private int resolution
-
imageFormat
private java.lang.String imageFormat
-
imageType
private java.lang.String imageType
-
imageDataFormat
private java.lang.String imageDataFormat
-
imageCompression
private boolean imageCompression
-
codePage
private int codePage
-
charSet
private int charSet
-
fontTable
private final java.util.Hashtable fontTable
-
context
private RtfSink.Context context
-
paragraph
private RtfSink.Paragraph paragraph
-
indentation
protected RtfSink.Indentation indentation
-
space
protected RtfSink.Space space
-
listItemIndent
private int listItemIndent
-
numbering
private final java.util.Vector numbering
-
itemNumber
private final java.util.Vector itemNumber
-
style
private int style
-
sectionLevel
private int sectionLevel
-
emptyHeader
private boolean emptyHeader
-
verbatim
private java.lang.StringBuilder verbatim
-
frame
private boolean frame
-
table
private RtfSink.Table table
-
row
private RtfSink.Row row
-
cell
private RtfSink.Cell cell
-
line
private RtfSink.Line line
-
writer
protected java.io.PrintWriter writer
-
stream
protected java.io.OutputStream stream
-
inlineStack
protected java.util.Stack<java.util.List<java.lang.Integer>> inlineStack
Keep track of the closing tags for inline events.
-
warnMessages
private java.util.Map warnMessages
Map of warn messages with a String as key to describe the error type and a Set as value. Using to reduce warn messages.
-
-
Constructor Detail
-
RtfSink
protected RtfSink() throws java.io.IOException
Constructor for RtfSink.
- Throws:
java.io.IOException
- if any
-
RtfSink
protected RtfSink(java.io.OutputStream output) throws java.io.IOException
Constructor for RtfSink.
- Parameters:
output
- not null- Throws:
java.io.IOException
- if any
-
RtfSink
protected RtfSink(java.io.OutputStream output, java.lang.String encoding) throws java.io.IOException
Constructor for RtfSink.
- Parameters:
output
- not nullencoding
- a valid charset- Throws:
java.io.IOException
- if any
-
-
Method Detail
-
setPaperSize
public void setPaperSize(double width, double height)
setPaperSize.- Parameters:
width
- in cm.height
- in cm.
-
setTopMargin
public void setTopMargin(double margin)
Setter for the field
topMargin
.- Parameters:
margin
- margin.
-
setBottomMargin
public void setBottomMargin(double margin)
Setter for the field
bottomMargin
.- Parameters:
margin
- margin.
-
setLeftMargin
public void setLeftMargin(double margin)
Setter for the field
leftMargin
.- Parameters:
margin
- margin
-
setRightMargin
public void setRightMargin(double margin)
Setter for the field
rightMargin
.- Parameters:
margin
- margin
-
setFontSize
public void setFontSize(int size)
Setter for the field
fontSize
.- Parameters:
size
- in pts
-
setSpacing
public void setSpacing(int spacing)
setSpacing.
- Parameters:
spacing
- in pts.
-
setResolution
public void setResolution(int resolution)
Setter for the field
resolution
.- Parameters:
resolution
- in dpi
-
setImageFormat
public void setImageFormat(java.lang.String format)
Setter for the field
imageFormat
.- Parameters:
format
-
-
setImageType
public void setImageType(java.lang.String type)
Setter for the field
imageType
.- Parameters:
type
-
-
setImageDataFormat
public void setImageDataFormat(java.lang.String format)
Setter for the field
imageDataFormat
.- Parameters:
format
-
-
setImageCompression
public void setImageCompression(boolean compression)
Setter for the field
imageCompression
.- Parameters:
compression
-
-
setCodePage
public void setCodePage(int cp)
Setter for the field
codePage
.- Parameters:
cp
-
-
setCharSet
public void setCharSet(int cs)
Setter for the field
charSet
.- Parameters:
cs
-
-
head
public void head()
Starts the head element.- Specified by:
head
in interfaceSink
- Overrides:
head
in classSinkAdapter
- See Also:
Sink.head(SinkEventAttributes)
-
head_
public void head_()
Ends the head element.- Specified by:
head_
in interfaceSink
- Overrides:
head_
in classSinkAdapter
-
toTwips
protected int toTwips(double length, int unit)
toTwips.
- Parameters:
length
- a double.unit
- a int.- Returns:
- a int.
-
title
public void title()
Starts the title element.- Specified by:
title
in interfaceSink
- Overrides:
title
in classSinkAdapter
- See Also:
Sink.title(SinkEventAttributes)
-
title_
public void title_()
Ends the title element.- Specified by:
title_
in interfaceSink
- Overrides:
title_
in classSinkAdapter
-
author
public void author()
Starts an author element.- Specified by:
author
in interfaceSink
- Overrides:
author
in classSinkAdapter
- See Also:
Sink.author(SinkEventAttributes)
-
author_
public void author_()
Ends an author element.- Specified by:
author_
in interfaceSink
- Overrides:
author_
in classSinkAdapter
-
date
public void date()
Starts the date element.- Specified by:
date
in interfaceSink
- Overrides:
date
in classSinkAdapter
- See Also:
Sink.date(SinkEventAttributes)
-
date_
public void date_()
Ends the date element.- Specified by:
date_
in interfaceSink
- Overrides:
date_
in classSinkAdapter
-
body
public void body()
Starts the body of a document.- Specified by:
body
in interfaceSink
- Overrides:
body
in classSinkAdapter
- See Also:
Sink.body(SinkEventAttributes)
-
body_
public void body_()
Ends the body element.- Specified by:
body_
in interfaceSink
- Overrides:
body_
in classSinkAdapter
-
section1
public void section1()
Starts a first heading element which contains the topic of the section.- Specified by:
section1
in interfaceSink
- Overrides:
section1
in classSinkAdapter
- See Also:
Sink.section(int,SinkEventAttributes)
-
section1_
public void section1_()
Ends a first heading element.- Specified by:
section1_
in interfaceSink
- Overrides:
section1_
in classSinkAdapter
-
section2
public void section2()
Starts a second heading element which contains the topic of the section. This has to be contained within aSink.section1()
element.- Specified by:
section2
in interfaceSink
- Overrides:
section2
in classSinkAdapter
- See Also:
Sink.section(int,SinkEventAttributes)
-
section2_
public void section2_()
Ends a second heading element.- Specified by:
section2_
in interfaceSink
- Overrides:
section2_
in classSinkAdapter
-
section3
public void section3()
Starts a third heading element which contains the topic of the section. This has to be contained within aSink.section2()
element.- Specified by:
section3
in interfaceSink
- Overrides:
section3
in classSinkAdapter
- See Also:
Sink.section(int,SinkEventAttributes)
-
section3_
public void section3_()
Ends a third heading element.- Specified by:
section3_
in interfaceSink
- Overrides:
section3_
in classSinkAdapter
-
section4
public void section4()
Starts a 4th heading element which contains the topic of the section. This has to be contained within aSink.section3()
element.- Specified by:
section4
in interfaceSink
- Overrides:
section4
in classSinkAdapter
- See Also:
Sink.section(int,SinkEventAttributes)
-
section4_
public void section4_()
Ends a 4th heading element.- Specified by:
section4_
in interfaceSink
- Overrides:
section4_
in classSinkAdapter
-
section5
public void section5()
Starts a 5th heading element which contains the topic of the section. This has to be contained within aSink.section4()
element.- Specified by:
section5
in interfaceSink
- Overrides:
section5
in classSinkAdapter
- See Also:
Sink.section(int,SinkEventAttributes)
-
section5_
public void section5_()
Ends a 5th heading element.- Specified by:
section5_
in interfaceSink
- Overrides:
section5_
in classSinkAdapter
-
sectionTitle
public void sectionTitle()
Starts a title heading element.- Specified by:
sectionTitle
in interfaceSink
- Overrides:
sectionTitle
in classSinkAdapter
-
sectionTitle_
public void sectionTitle_()
Ends a title heading element.- Specified by:
sectionTitle_
in interfaceSink
- Overrides:
sectionTitle_
in classSinkAdapter
-
styleNumber
private int styleNumber(int level)
-
list
public void list()
Starts an unordered list element.- Specified by:
list
in interfaceSink
- Overrides:
list
in classSinkAdapter
- See Also:
Sink.list(SinkEventAttributes)
-
list_
public void list_()
Ends an unordered list element.- Specified by:
list_
in interfaceSink
- Overrides:
list_
in classSinkAdapter
-
listItem
public void listItem()
Starts a list item element within an unordered list.- Specified by:
listItem
in interfaceSink
- Overrides:
listItem
in classSinkAdapter
- See Also:
Sink.listItem(SinkEventAttributes)
-
listItem_
public void listItem_()
Ends a list item element within an unordered list.- Specified by:
listItem_
in interfaceSink
- Overrides:
listItem_
in classSinkAdapter
-
numberedList
public void numberedList(int numbering)
Starts an ordered list element.- Specified by:
numberedList
in interfaceSink
- Overrides:
numberedList
in classSinkAdapter
- Parameters:
numbering
- the numbering style.- See Also:
Sink.numberedList(int,SinkEventAttributes)
-
numberedList_
public void numberedList_()
Ends an ordered list element.- Specified by:
numberedList_
in interfaceSink
- Overrides:
numberedList_
in classSinkAdapter
-
numberedListItem
public void numberedListItem()
Starts a list item element within an ordered list.- Specified by:
numberedListItem
in interfaceSink
- Overrides:
numberedListItem
in classSinkAdapter
- See Also:
Sink.numberedListItem(SinkEventAttributes)
-
numberedListItem_
public void numberedListItem_()
Ends a list item element within an ordered list.- Specified by:
numberedListItem_
in interfaceSink
- Overrides:
numberedListItem_
in classSinkAdapter
-
getItemHeader
private java.lang.String getItemHeader()
-
definitionList
public void definitionList()
Starts a definition list element.- Specified by:
definitionList
in interfaceSink
- Overrides:
definitionList
in classSinkAdapter
- See Also:
Sink.definitionList(SinkEventAttributes)
-
definitionList_
public void definitionList_()
Ends a definition list element.- Specified by:
definitionList_
in interfaceSink
- Overrides:
definitionList_
in classSinkAdapter
-
definitionListItem
public void definitionListItem()
Starts a list item element within a definition list.- Specified by:
definitionListItem
in interfaceSink
- Overrides:
definitionListItem
in classSinkAdapter
- See Also:
Sink.definitionListItem(SinkEventAttributes)
-
definitionListItem_
public void definitionListItem_()
Ends a list item element within a definition list.- Specified by:
definitionListItem_
in interfaceSink
- Overrides:
definitionListItem_
in classSinkAdapter
-
definedTerm
public void definedTerm()
Starts a definition term element within a definition list.- Specified by:
definedTerm
in interfaceSink
- Overrides:
definedTerm
in classSinkAdapter
- See Also:
Sink.definedTerm(SinkEventAttributes)
-
definedTerm_
public void definedTerm_()
Ends a definition term element within a definition list.- Specified by:
definedTerm_
in interfaceSink
- Overrides:
definedTerm_
in classSinkAdapter
-
definition
public void definition()
Starts a definition element within a definition list.- Specified by:
definition
in interfaceSink
- Overrides:
definition
in classSinkAdapter
- See Also:
Sink.definition(SinkEventAttributes)
-
definition_
public void definition_()
Ends a definition element within a definition list.- Specified by:
definition_
in interfaceSink
- Overrides:
definition_
in classSinkAdapter
-
table
public void table()
Starts a table element for marking up tabular information in a document.- Specified by:
table
in interfaceSink
- Overrides:
table
in classSinkAdapter
- See Also:
Sink.table(SinkEventAttributes)
-
table_
public void table_()
Ends a table element.- Specified by:
table_
in interfaceSink
- Overrides:
table_
in classSinkAdapter
-
tableRows
public void tableRows(int[] justification, boolean grid)
Starts an element that contains rows of table data.- Specified by:
tableRows
in interfaceSink
- Overrides:
tableRows
in classSinkAdapter
- Parameters:
justification
- the default justification of columns. This can be overridden by individual table rows or table cells. If null a left alignment is assumed by default. If this array has less elements than there are columns in the table then the value of the last array element will be taken as default for the remaining table cells.grid
- true to provide a grid, false otherwise.- See Also:
Sink.table(SinkEventAttributes)
,Sink.JUSTIFY_CENTER
,Sink.JUSTIFY_LEFT
,Sink.JUSTIFY_RIGHT
-
tableRows_
public void tableRows_()
Ends an element that contains rows of table data.- Specified by:
tableRows_
in interfaceSink
- Overrides:
tableRows_
in classSinkAdapter
-
pageWidth
private int pageWidth()
-
setBorder
private void setBorder(boolean bt, boolean bb, boolean bl, boolean br)
-
setJustification
private void setJustification(int justification)
-
setStyle
private void setStyle(int style)
-
tableRow
public void tableRow()
Starts a row element which acts as a container for a row of table cells.- Specified by:
tableRow
in interfaceSink
- Overrides:
tableRow
in classSinkAdapter
- See Also:
Sink.tableRow(SinkEventAttributes)
-
tableRow_
public void tableRow_()
Ends a row element.- Specified by:
tableRow_
in interfaceSink
- Overrides:
tableRow_
in classSinkAdapter
-
tableHeaderCell
public void tableHeaderCell()
Starts a cell element which defines a cell that contains header information.- Specified by:
tableHeaderCell
in interfaceSink
- Overrides:
tableHeaderCell
in classSinkAdapter
- See Also:
Sink.tableHeaderCell(SinkEventAttributes)
-
tableHeaderCell_
public void tableHeaderCell_()
Ends a cell header element.- Specified by:
tableHeaderCell_
in interfaceSink
- Overrides:
tableHeaderCell_
in classSinkAdapter
-
tableCell
public void tableCell()
Starts a cell element which defines a cell that contains data.- Specified by:
tableCell
in interfaceSink
- Overrides:
tableCell
in classSinkAdapter
- See Also:
Sink.tableCell(SinkEventAttributes)
-
tableCell_
public void tableCell_()
Ends a cell element.- Specified by:
tableCell_
in interfaceSink
- Overrides:
tableCell_
in classSinkAdapter
-
tableCaption
public void tableCaption()
Starts a caption element of a table.- Specified by:
tableCaption
in interfaceSink
- Overrides:
tableCaption
in classSinkAdapter
- See Also:
Sink.tableCaption(SinkEventAttributes)
-
tableCaption_
public void tableCaption_()
Ends a caption element of a table.- Specified by:
tableCaption_
in interfaceSink
- Overrides:
tableCaption_
in classSinkAdapter
-
paragraph
public void paragraph()
Starts an element which represents a paragraph.- Specified by:
paragraph
in interfaceSink
- Overrides:
paragraph
in classSinkAdapter
- See Also:
Sink.paragraph(SinkEventAttributes)
-
paragraph_
public void paragraph_()
Ends a paragraph element.- Specified by:
paragraph_
in interfaceSink
- Overrides:
paragraph_
in classSinkAdapter
-
beginParagraph
private void beginParagraph(RtfSink.Paragraph p)
-
endParagraph
private void endParagraph()
-
verbatim
public void verbatim(boolean boxed)
Starts an element which indicates that whitespace in the enclosed text has semantic relevance.- Specified by:
verbatim
in interfaceSink
- Overrides:
verbatim
in classSinkAdapter
- Parameters:
boxed
- true to add a box, false otherwise
-
verbatim_
public void verbatim_()
Ends a verbatim element.- Specified by:
verbatim_
in interfaceSink
- Overrides:
verbatim_
in classSinkAdapter
-
figure
public void figure()
Starts a basic image embedding element.- Specified by:
figure
in interfaceSink
- Overrides:
figure
in classSinkAdapter
- See Also:
Sink.figure(SinkEventAttributes)
-
figure_
public void figure_()
Ends a basic image embedding element.- Specified by:
figure_
in interfaceSink
- Overrides:
figure_
in classSinkAdapter
-
figureGraphics
public void figureGraphics(java.lang.String name)
Adding a source of a graphic.- Specified by:
figureGraphics
in interfaceSink
- Overrides:
figureGraphics
in classSinkAdapter
- Parameters:
name
- the source
-
writeImage
private void writeImage(java.lang.String source) throws java.lang.Exception
- Throws:
java.lang.Exception
-
figureCaption
public void figureCaption()
Starts a caption of an image element.- Specified by:
figureCaption
in interfaceSink
- Overrides:
figureCaption
in classSinkAdapter
- See Also:
Sink.figureCaption(SinkEventAttributes)
-
figureCaption_
public void figureCaption_()
Ends a caption of an image.- Specified by:
figureCaption_
in interfaceSink
- Overrides:
figureCaption_
in classSinkAdapter
-
horizontalRule
public void horizontalRule()
Adding a separator of sections from a text to each other.- Specified by:
horizontalRule
in interfaceSink
- Overrides:
horizontalRule
in classSinkAdapter
- See Also:
Sink.horizontalRule(SinkEventAttributes)
-
pageBreak
public void pageBreak()
Adding a new page separator.- Specified by:
pageBreak
in interfaceSink
- Overrides:
pageBreak
in classSinkAdapter
-
anchor
public void anchor(java.lang.String name)
Starts an element which defines an anchor.- Specified by:
anchor
in interfaceSink
- Overrides:
anchor
in classSinkAdapter
- Parameters:
name
- the name of the anchor.- See Also:
Sink.anchor(String,SinkEventAttributes)
-
anchor_
public void anchor_()
Ends an anchor element.- Specified by:
anchor_
in interfaceSink
- Overrides:
anchor_
in classSinkAdapter
-
link
public void link(java.lang.String name)
Starts an element which defines a link.- Specified by:
link
in interfaceSink
- Overrides:
link
in classSinkAdapter
- Parameters:
name
- the name of the link.- See Also:
Sink.link(String,SinkEventAttributes)
-
link_
public void link_()
Ends a link element.- Specified by:
link_
in interfaceSink
- Overrides:
link_
in classSinkAdapter
-
inline
public void inline()
Starts an inline element.- Specified by:
inline
in interfaceSink
- Overrides:
inline
in classSinkAdapter
- See Also:
Sink.inline(SinkEventAttributes)
-
inline
public void inline(SinkEventAttributes attributes)
Starts an inline element.The inline method is similar to
Sink.text(String,SinkEventAttributes)
, but allows you to wrap arbitrary elements in addition to text.Supported attributes are the
base attributes
plusSEMANTICS
(values "emphasis", "strong", "small", "line-through", "citation", "quote", "definition", "abbreviation", "italic", "bold", "monospaced", "variable", "sample", "keyboard", "superscript", "subscript", "annotation", "highlight", "ruby", "rubyBase", "rubyText", "rubyTextContainer", "rubyParentheses", "bidirectionalIsolation", "bidirectionalOverride", "phrase", "insert", "delete").- Specified by:
inline
in interfaceSink
- Overrides:
inline
in classSinkAdapter
- Parameters:
attributes
- A set ofSinkEventAttributes
, may benull
.
-
inline_
public void inline_()
Ends an inline element.- Specified by:
inline_
in interfaceSink
- Overrides:
inline_
in classSinkAdapter
-
italic
public void italic()
Starts an italic element. Alternatively one may useSink.text(String,SinkEventAttributes)
withSTYLE
instead.- Specified by:
italic
in interfaceSink
- Overrides:
italic
in classSinkAdapter
-
italic_
public void italic_()
Ends an italic element. Alternatively one may useSink.text(String,SinkEventAttributes)
withSTYLE
instead.- Specified by:
italic_
in interfaceSink
- Overrides:
italic_
in classSinkAdapter
-
bold
public void bold()
Starts a bold element. Alternatively one may useSink.text(String,SinkEventAttributes)
withSTYLE
instead.- Specified by:
bold
in interfaceSink
- Overrides:
bold
in classSinkAdapter
-
bold_
public void bold_()
Ends a bold element. Alternatively one may useSink.text(String,SinkEventAttributes)
withSTYLE
instead.- Specified by:
bold_
in interfaceSink
- Overrides:
bold_
in classSinkAdapter
-
monospaced
public void monospaced()
Starts a monospaced element. Alternatively one may useSink.text(String,SinkEventAttributes)
withSTYLE
instead.- Specified by:
monospaced
in interfaceSink
- Overrides:
monospaced
in classSinkAdapter
-
monospaced_
public void monospaced_()
Ends a monospaced element. Alternatively one may useSink.text(String,SinkEventAttributes)
withSTYLE
instead.- Specified by:
monospaced_
in interfaceSink
- Overrides:
monospaced_
in classSinkAdapter
-
beginStyle
private void beginStyle(int style)
-
endStyle
private void endStyle()
-
lineBreak
public void lineBreak()
Adds a line break.- Specified by:
lineBreak
in interfaceSink
- Overrides:
lineBreak
in classSinkAdapter
- See Also:
Sink.lineBreak(SinkEventAttributes)
-
nonBreakingSpace
public void nonBreakingSpace()
Adding a non breaking space, ie a space without any special formatting operations.- Specified by:
nonBreakingSpace
in interfaceSink
- Overrides:
nonBreakingSpace
in classSinkAdapter
-
text
public void text(java.lang.String text)
Adding a text.- Specified by:
text
in interfaceSink
- Overrides:
text
in classSinkAdapter
- Parameters:
text
- The text to write.- See Also:
Sink.text(String,SinkEventAttributes)
-
unknown
public void unknown(java.lang.String name, java.lang.Object[] requiredParams, SinkEventAttributes attributes)
Add an unknown event. This may be used by parsers to notify a general Sink about an event that doesn't fit into any event defined by the Sink API. Depending on the parameters, a Sink may decide whether or not to process the event, emit it as raw text, as a comment, log it, etc. Unkown events just log a warning message but are ignored otherwise.- Specified by:
unknown
in interfaceSink
- Overrides:
unknown
in classSinkAdapter
- Parameters:
name
- The name of the event.requiredParams
- An optional array of required parameters to the event. May benull
.attributes
- A set ofSinkEventAttributes
, may benull
.- See Also:
Sink.unknown(String,Object[],SinkEventAttributes)
-
normalize
private static java.lang.String normalize(java.lang.String s)
-
escape
private static java.lang.String escape(java.lang.String s)
-
getFont
protected Font getFont(int style, int size)
getFont.
- Parameters:
style
- a int.size
- a int.- Returns:
- a
Font
object.
-
textWidth
private static int textWidth(java.lang.String text, Font font)
-
flush
public void flush()
Flush the writer or the stream, if needed. Flushing a previously-flushed Sink has no effect.- Specified by:
flush
in interfaceSink
- Overrides:
flush
in classSinkAdapter
-
close
public void close()
Close the writer or the stream, if needed. Closing a previously-closed Sink has no effect.- Specified by:
close
in interfaceSink
- Overrides:
close
in classSinkAdapter
-
logMessage
private void logMessage(java.lang.String key, java.lang.String msg)
If debug mode is enabled, log themsg
as is, otherwise add unique msg inwarnMessages
.- Parameters:
key
- not nullmsg
- not null- Since:
- 1.1.1
- See Also:
close()
-
init
protected void init()
This is called inSink.head()
or inSink.close()
, and can be used to set the sink into a clear state so it can be re-used.- Overrides:
init
in classAbstractSink
-
-