|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.maven.doxia.sink.AbstractSink org.apache.maven.doxia.sink.SinkAdapter org.apache.maven.doxia.sink.AbstractXmlSink org.apache.maven.doxia.module.fo.FoSink
public class FoSink
A Doxia Sink that produces a FO model. The usage is similar to the following:
FoSink sink = new FoSink( writer ); sink.beginDocument(); ... sink.endDocument();
Field Summary | |
---|---|
protected Map<String,Set<String>> |
warnMessages
Map of warn messages with a String as key to describe the error type and a Set as value. |
Fields inherited from interface org.apache.maven.doxia.module.fo.FoMarkup |
---|
BASIC_LINK_TAG, BLOCK_TAG, BOOKMARK_TAG, BOOKMARK_TITLE_TAG, BOOKMARK_TREE_TAG, FLOW_TAG, FO_NAMESPACE, INLINE_TAG, LAYOUT_MASTER_SET_TAG, LEADER_TAG, LIST_BLOCK_TAG, LIST_ITEM_BODY_TAG, LIST_ITEM_LABEL_TAG, LIST_ITEM_TAG, PAGE_NUMBER_CITATION_TAG, PAGE_NUMBER_TAG, PAGE_SEQUENCE_TAG, REGION_AFTER_TAG, REGION_BEFORE_TAG, REGION_BODY_TAG, ROOT_TAG, SIMPLE_PAGE_MASTER_TAG, STATIC_CONTENT_TAG, TABLE_AND_CAPTION_TAG, TABLE_BODY_TAG, TABLE_CAPTION_TAG, TABLE_CELL_TAG, TABLE_COLUMN_TAG, TABLE_ROW_TAG, TABLE_TAG |
Fields inherited from interface org.apache.maven.doxia.markup.XmlMarkup |
---|
BANG, CDATA, DOCTYPE_START, ENTITY_START, XML_NAMESPACE |
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 |
Constructor Summary | |
---|---|
protected |
FoSink(Writer writer)
Constructor, initialize the Writer. |
protected |
FoSink(Writer writer,
String encoding)
Constructor, initialize the Writer and tells which encoding is used. |
protected |
FoSink(Writer writer,
String encoding,
String languageId)
Constructor, initialize the Writer and tells which encoding and languageId are used. |
Method Summary | |
---|---|
void |
anchor_()
Ends an anchor element. |
void |
anchor(String name)
Starts an element which defines an anchor. |
void |
anchor(String name,
SinkEventAttributes attributes)
Starts an element which defines an anchor.
The ID and NAME tokens must begin with a letter ([A-Za-z]) and may be followed by any number of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), colons (":"), and periods (".").
Supported attributes are the |
void |
author_()
Ends an author element. |
void |
author()
Starts an author element. |
void |
author(SinkEventAttributes attributes)
Starts an author element. This is used to identify the author of the document.
Supported attributes are: |
void |
beginDocument()
Writes the beginning of a FO document. |
void |
body_()
Ends the body element. |
void |
body()
Starts the body of a document. |
void |
body(SinkEventAttributes attributes)
Starts the body of a document. This contains the document's content.
Supported attributes are the |
void |
bold_()
Ends a bold element. Alternatively one may use Sink.text(String,SinkEventAttributes) with
STYLE instead. |
void |
bold()
Starts a bold element. Alternatively one may use Sink.text(String,SinkEventAttributes) with
STYLE instead. |
protected void |
chapterHeading(String headerText,
boolean chapterNumber)
Writes a chapter heading. |
void |
close()
Close the writer or the stream, if needed. Closing a previously-closed Sink has no effect. |
void |
comment(String comment)
Add a comment. |
protected void |
content(String text)
Writes content, escaping special characters. |
void |
date_()
Ends the date element. |
void |
date()
Starts the date element. The date is recommended (but it is not a requirement) to be align to the ISO-8601 standard, i.e.: YYYY-MM-DDwhere
|
void |
date(SinkEventAttributes attributes)
Starts the date element. This is used to identify the date of the document. Supported attributes are: none. |
void |
definedTerm_()
Starts a definition term element within a definition list. |
void |
definedTerm()
Starts a definition term element within a definition list. |
void |
definedTerm(SinkEventAttributes attributes)
Starts a definition term element within a definition list.
Supported attributes are the |
void |
definition_()
Ends a definition element within a definition list. |
void |
definition()
Starts a definition element within a definition list. |
void |
definition(SinkEventAttributes attributes)
Starts a definition element within a definition list.
Supported attributes are the |
void |
definitionList_()
Ends a definition list element. |
void |
definitionList()
Starts a definition list element. |
void |
definitionList(SinkEventAttributes attributes)
Starts a definition list.
Supported attributes are the |
void |
definitionListItem_()
Ends a list item element within a definition list. |
void |
definitionListItem()
Starts a list item element within a definition list. |
void |
definitionListItem(SinkEventAttributes attributes)
Starts a list item element within a definition list.
Every definitionListItem has to contain exactly one
Supported attributes are the |
void |
endDocument()
Writes the end of a FO document, flushes and closes the stream. |
static String |
escaped(String text,
boolean verb)
Escapes special characters so that the text can be included in a fo file. |
void |
figure_()
Ends a basic image embedding element. |
void |
figure()
Starts a basic image embedding element. |
void |
figure(SinkEventAttributes attributes)
Starts a basic image embedding element. The canonical sequence of events for the figure element is: sink.figure(); sink.figureGraphics( "figure.png" ); sink.figureCaption(); sink.text( "Figure caption",); sink.figureCaption_(); sink.figure_(); where the figureCaption element is optional. However, NOTE that the order of figureCaption and figureGraphics events is arbitrary, ie a parser may emit the figureCaption before or after the figureGraphics. Implementing sinks should be prepared to handle both possibilities.
NOTE also that the figureGraphics() event does not have to be embedded
inside figure(), in particular for in-line images the figureGraphics() should be used
stand-alone (in HTML language, figureGraphics() produces a
Supported attributes are the |
void |
figureCaption_()
Ends a caption of an image. |
void |
figureCaption()
Starts a caption of an image element. |
void |
figureCaption(SinkEventAttributes attributes)
Starts a figure caption.
Supported attributes are the |
void |
figureGraphics(String name)
Adding a source of a graphic. |
void |
figureGraphics(String src,
SinkEventAttributes attributes)
Adds a graphic element.
The
Supported attributes are the
If the |
void |
flush()
Flush the writer or the stream, if needed. Flushing a previously-flushed Sink has no effect. |
protected String |
getChapterString()
Returns the current chapter number as a string. |
protected FoConfiguration |
getFoConfiguration()
Returns the configuration object of this sink. |
void |
head_()
Ends the head element. |
void |
head()
Starts the head element. |
void |
head(SinkEventAttributes attributes)
Starts the head element.
This contains information about the current document, (eg its title) that is not
considered document content. The head element is optional but if it exists, it has to be
unique within a sequence of Sink events that produces one output document, and it has
to come before the The canonical sequence of events for the head element is: sink.head(); sink.title(); sink.text( "Title" ); sink.title_(); sink.author(); sink.text( "Author" ); sink.author_(); sink.date(); sink.text( "Date" ); sink.date_(); sink.head_(); but none of the enclosed events is required. However, if they exist they have to occur in the order shown, and the title() and date() events have to be unique (author() events may occur any number of times). Supported attributes are:
|
void |
horizontalRule()
Adding a separator of sections from a text to each other. |
void |
horizontalRule(SinkEventAttributes attributes)
Adds a horizontal separator rule.
Supported attributes are the
|
protected void |
init()
This is called in Sink.head() or in Sink.close() , and can be used
to set the sink into a clear state so it can be re-used. |
protected boolean |
isFigure()
Flags if we are inside a figure. |
void |
italic_()
Ends an italic element. Alternatively one may use Sink.text(String,SinkEventAttributes) with
STYLE instead. |
void |
italic()
Starts an italic element. Alternatively one may use Sink.text(String,SinkEventAttributes) with
STYLE instead. |
void |
lineBreak()
Adds a line break. |
void |
lineBreak(SinkEventAttributes attributes)
Adds a line break. Supported attributes are:
|
void |
link_()
Ends a link element. |
void |
link(String name)
Starts an element which defines a link. |
void |
link(String name,
SinkEventAttributes attributes)
Starts a link.
The
Supported attributes are the
If |
void |
list_()
Ends an unordered list element. |
void |
list()
Starts an unordered list element. |
void |
list(SinkEventAttributes attributes)
Starts an unordered list.
Supported attributes are the |
void |
listItem_()
Ends a list item element within an unordered list. |
void |
listItem()
Starts a list item element within an unordered list. |
void |
listItem(SinkEventAttributes attributes)
Starts a list item element within an unordered list.
Supported attributes are the |
void |
load(File configFile)
Load configuration parameters from a File. |
protected void |
logMessage(String key,
String msg)
If debug mode is enabled, log the msg as is, otherwise add unique msg in warnMessages . |
void |
monospaced_()
Ends a monospaced element. Alternatively one may use Sink.text(String,SinkEventAttributes) with
STYLE instead. |
void |
monospaced()
Starts a monospaced element. Alternatively one may use Sink.text(String,SinkEventAttributes) with
STYLE instead. |
void |
nonBreakingSpace()
Adding a non breaking space, ie a space without any special formatting operations. |
void |
numberedList_()
Ends an ordered list element. |
void |
numberedList(int numbering)
Starts an ordered list element. |
void |
numberedList(int numbering,
SinkEventAttributes attributes)
Starts an ordered list element.
Supported attributes are the |
void |
numberedListItem_()
Ends a list item element within an ordered list. |
void |
numberedListItem()
Starts a list item element within an ordered list. |
void |
numberedListItem(SinkEventAttributes attributes)
Starts a list item element within an ordered list.
Supported attributes are the |
void |
pageBreak()
Adding a new page separator. |
void |
paragraph_()
Ends a paragraph element. |
void |
paragraph()
Starts an element which represents a paragraph. |
void |
paragraph(SinkEventAttributes attributes)
Starts a paragraph.
Supported attributes are the |
protected void |
pdfBookmarks()
Writes a fo:bookmark-tree. |
void |
rawText(String text)
Adding a raw text, ie a text without any special formatting operations. |
protected void |
regionAfter(String footerText)
Writes a 'xsl-region-after' block. |
protected void |
regionBefore(String headerText)
Writes a 'xsl-region-before' block. |
protected void |
resetSectionCounter()
Resets the section counter to 0. |
void |
section_(int level)
Ends a section at the given level. |
void |
section(int level,
SinkEventAttributes attributes)
Start a new section at the given level. Sections with higher level have to be entirely contained within sections of lower level.
Supported attributes are the |
void |
section1_()
Ends a first heading element. |
void |
section1()
Starts a first heading element which contains the topic of the section. |
void |
section2_()
Ends a second heading element. |
void |
section2()
Starts a second heading element which contains the topic of the section. This has to be contained within a Sink.section1() element. |
void |
section3_()
Ends a third heading element. |
void |
section3()
Starts a third heading element which contains the topic of the section. This has to be contained within a Sink.section2() element. |
void |
section4_()
Ends a 4th heading element. |
void |
section4()
Starts a 4th heading element which contains the topic of the section. This has to be contained within a Sink.section3() element. |
void |
section5_()
Ends a 5th heading element. |
void |
section5()
Starts a 5th heading element which contains the topic of the section. This has to be contained within a Sink.section4() element. |
void |
sectionTitle_()
Ends a title heading element. |
void |
sectionTitle_(int level)
Ends a section title at the given level. |
void |
sectionTitle()
Starts a title heading element. |
void |
sectionTitle(int level,
SinkEventAttributes attributes)
Start a new section title at the given level.
This element is optional, but if it exists, it has to be contained, and be the first
element, within a corresponding NOTE: It is strongly recommended not to make section titles implicit anchors. Neither Parsers nor Sinks should insert any content that is not explicitly present in the original source document, as this would lead to undefined behaviour for multi-format processing chains. However, while Parsers must never emit anchors for section titles, some specialized Sinks may implement such a feature if the resulting output documents are not going to be further processed (and this is properly documented).
Supported attributes are the |
void |
sectionTitle1_()
Ends a first title heading element. |
void |
sectionTitle1()
Starts a first title heading element. This element is optional, but if it exists, it has to be contained, and be the first element, within a Sink.section1() element. |
void |
sectionTitle2_()
Ends a second title heading element. |
void |
sectionTitle2()
Starts a second title heading element. This element is optional, but if it exists, it has to be contained, and be the first element, within a Sink.section2() element. |
void |
sectionTitle3_()
Ends a third title heading element. |
void |
sectionTitle3()
Starts a third title heading element. This element is optional, but if it exists, it has to be contained, and be the first element, within a Sink.section3() element. |
void |
sectionTitle4_()
Ends a 4th title heading element. |
void |
sectionTitle4()
Starts a 4th title heading element. This element is optional, but if it exists, it has to be contained, and be the first element, within a Sink.section4() element. |
void |
sectionTitle5_()
Ends a 5th title heading element. |
void |
sectionTitle5()
Starts a 5th title heading element. This element is optional, but if it exists, it has to be contained, and be the first element, within a Sink.section5() element. |
protected void |
startPageSequence(String initPageNumber,
String headerText,
String footerText)
Starts a page sequence. |
void |
table_()
Ends a table element. |
void |
table()
Starts a table element for marking up tabular information in a document. |
void |
table(SinkEventAttributes attributes)
Starts a table. The canonical sequence of events for the table element is: sink.table(); sink.tableRows( justify, true ); sink.tableRow(); sink.tableCell(); sink.text( "cell 1,1" ); sink.tableCell_(); sink.tableCell(); sink.text( "cell 1,2" ); sink.tableCell_(); sink.tableRow_(); sink.tableRows_(); sink.tableCaption(); sink.text( "Table caption" ); sink.tableCaption_(); sink.table_(); where the tableCaption element is optional.
However, NOTE that the order of tableCaption and
Supported attributes are the
|
void |
tableCaption_()
Ends a caption element of a table. |
void |
tableCaption()
Starts a caption element of a table. |
void |
tableCaption(SinkEventAttributes attributes)
Starts a table caption.
Note that the order of tableCaption and
Supported attributes are the |
void |
tableCell_()
Ends a cell element. |
void |
tableCell()
Starts a cell element which defines a cell that contains data. |
void |
tableCell(SinkEventAttributes attributes)
Starts a table cell.
Supported attributes are the
|
void |
tableCell(String width)
Starts a cell element which defines a cell that contains data. |
void |
tableHeaderCell_()
Ends a cell header element. |
void |
tableHeaderCell()
Starts a cell element which defines a cell that contains header information. |
void |
tableHeaderCell(SinkEventAttributes attributes)
Starts a table header cell.
Supported attributes are the same as for |
void |
tableHeaderCell(String width)
Starts a cell element which defines a cell that contains header information. |
void |
tableRow_()
Ends a row element. |
void |
tableRow()
Starts a row element which acts as a container for a row of table cells. |
void |
tableRow(SinkEventAttributes attributes)
Starts a table row.
Supported attributes are the
|
void |
tableRows_()
Ends an element that contains rows of table data. |
void |
tableRows(int[] justification,
boolean grid)
Starts an element that contains rows of table data. |
void |
text(String text)
Adding a text. |
void |
text(String text,
SinkEventAttributes attributes)
Adds a text.
The
If
Supported attributes are the
|
void |
title_()
Ends the title element. |
void |
title()
Starts the title element. |
void |
title(SinkEventAttributes attributes)
Starts the title element. This is used to identify the document.
Supported attributes are the |
void |
unknown(String name,
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. |
void |
verbatim_()
Ends a verbatim element. |
void |
verbatim(boolean boxed)
Starts an element which indicates that whitespace in the enclosed text has semantic relevance. |
void |
verbatim(SinkEventAttributes attributes)
Starts a verbatim block, ie a block where whitespace has semantic relevance. Text in a verbatim block must only be wrapped at the linebreaks in the source, and spaces should not be collapsed. It should be displayed in a fixed-width font to retain the formatting but the overall size may be chosen by the implementation. Most Sink events may be emitted within a verbatim block, the only elements explicitly forbidden are font-changing events and figures. Also, verbatim blocks may not be nested.
Supported attributes are the
|
protected void |
write(String text)
Write a text to the sink. Writes a text, swallowing any exceptions. |
protected void |
writeEmptyTag(HTML.Tag tag,
String attributeId)
Writes a simple tag, appending EOL. |
protected void |
writeEmptyTag(HTML.Tag tag,
String id,
String name)
Writes an empty tag, prepending EOL. |
protected void |
writeEndTag(HTML.Tag t)
Ends a Tag without writing an EOL. |
protected void |
writeln(String text)
Writes a text, appending EOL. |
protected void |
writeStartTag(HTML.Tag t,
MutableAttributeSet att,
boolean isSimpleTag)
Starts a Tag with attributes. |
protected void |
writeStartTag(HTML.Tag tag,
String attributeId)
Writes a start tag, prepending EOL. |
protected void |
writeStartTag(HTML.Tag tag,
String id,
String name)
Writes a start tag, prepending EOL. |
protected void |
writeStartTag(HTML.Tag tag,
String id,
String name,
String attributeId)
Writes a start tag, prepending EOL. |
Methods inherited from class org.apache.maven.doxia.sink.AbstractXmlSink |
---|
getNameSpace, setNameSpace, writeEOL, writeSimpleTag, writeSimpleTag, writeStartTag, writeStartTag |
Methods inherited from class org.apache.maven.doxia.sink.AbstractSink |
---|
enableLogging, getLog, unifyEOLs |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected Map<String,Set<String>> warnMessages
Constructor Detail |
---|
protected FoSink(Writer writer)
writer
- not null writer to write the result. Should be an UTF-8 Writer.
You could use newXmlWriter
methods from WriterFactory
.protected FoSink(Writer writer, String encoding)
writer
- not null writer to write the result.encoding
- the encoding used, that should be written to the generated HTML content
if not null
.protected FoSink(Writer writer, String encoding, String languageId)
writer
- not null writer to write the result.encoding
- the encoding used, that should be written to the generated HTML content
if not null
.languageId
- language identifier for the root element as defined by
IETF BCP 47, Tags for the Identification of Languages;
in addition, the empty string may be specified.Method Detail |
---|
public void load(File configFile) throws IOException
configFile
- the configuration file.
IOException
- if the File cannot be read
or some error occurs when initializing the configuration parameters.public void head(SinkEventAttributes attributes)
This contains information about the current document, (eg its title) that is not
considered document content. The head element is optional but if it exists, it has to be
unique within a sequence of Sink events that produces one output document, and it has
to come before the Sink.body(SinkEventAttributes)
element.
The canonical sequence of events for the head element is:
sink.head(); sink.title(); sink.text( "Title" ); sink.title_(); sink.author(); sink.text( "Author" ); sink.author_(); sink.date(); sink.text( "Date" ); sink.date_(); sink.head_();
but none of the enclosed events is required. However, if they exist they have to occur in the order shown, and the title() and date() events have to be unique (author() events may occur any number of times).
Supported attributes are:
PROFILE
,LANG
.
head
in interface Sink
head
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void head()
head
in interface Sink
head
in class SinkAdapter
Sink.head(SinkEventAttributes)
public void head_()
head_
in interface Sink
head_
in class SinkAdapter
public void title(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
title
in interface Sink
title
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.Sink.head(SinkEventAttributes)
public void title()
title
in interface Sink
title
in class SinkAdapter
Sink.title(SinkEventAttributes)
public void title_()
title_
in interface Sink
title_
in class SinkAdapter
public void author(SinkEventAttributes attributes)
Supported attributes are: EMAIL
.
author
in interface Sink
author
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.Sink.head(SinkEventAttributes)
public void author()
author
in interface Sink
author
in class SinkAdapter
Sink.author(SinkEventAttributes)
public void author_()
author_
in interface Sink
author_
in class SinkAdapter
public void date(SinkEventAttributes attributes)
Supported attributes are: none.
date
in interface Sink
date
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.Sink.head(SinkEventAttributes)
public void date()
YYYY-MM-DDwhere
date
in interface Sink
date
in class SinkAdapter
Sink.date(SinkEventAttributes)
public void date_()
date_
in interface Sink
date_
in class SinkAdapter
public void body(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
body
in interface Sink
body
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.Sink.head(SinkEventAttributes)
public void body()
body
in interface Sink
body
in class SinkAdapter
Sink.body(SinkEventAttributes)
public void body_()
body_
in interface Sink
body_
in class SinkAdapter
public void sectionTitle()
sectionTitle
in interface Sink
sectionTitle
in class SinkAdapter
public void sectionTitle_()
sectionTitle_
in interface Sink
sectionTitle_
in class SinkAdapter
public void section(int level, SinkEventAttributes attributes)
Sections with higher level have to be entirely contained within sections of lower level.
Supported attributes are the base attributes
.
section
in interface Sink
section
in class SinkAdapter
level
- the section level.attributes
- A set of SinkEventAttributes
, may be null
.public void section_(int level)
section_
in interface Sink
section_
in class SinkAdapter
level
- the section level.public void sectionTitle(int level, SinkEventAttributes attributes)
This element is optional, but if it exists, it has to be contained, and be the first
element, within a corresponding section
element of the same level.
NOTE: It is strongly recommended not to make section titles implicit anchors. Neither Parsers nor Sinks should insert any content that is not explicitly present in the original source document, as this would lead to undefined behaviour for multi-format processing chains. However, while Parsers must never emit anchors for section titles, some specialized Sinks may implement such a feature if the resulting output documents are not going to be further processed (and this is properly documented).
Supported attributes are the base attributes
plus
ALIGN
.
sectionTitle
in interface Sink
sectionTitle
in class SinkAdapter
level
- the section title level.attributes
- A set of SinkEventAttributes
, may be null
.public void sectionTitle_(int level)
sectionTitle_
in interface Sink
sectionTitle_
in class SinkAdapter
level
- the section title level.public void section1()
section1
in interface Sink
section1
in class SinkAdapter
Sink.section(int,SinkEventAttributes)
public void sectionTitle1()
Sink.section1()
element.
sectionTitle1
in interface Sink
sectionTitle1
in class SinkAdapter
Sink.sectionTitle(int,SinkEventAttributes)
public void sectionTitle1_()
sectionTitle1_
in interface Sink
sectionTitle1_
in class SinkAdapter
public void section1_()
section1_
in interface Sink
section1_
in class SinkAdapter
public void section2()
Sink.section1()
element.
section2
in interface Sink
section2
in class SinkAdapter
Sink.section(int,SinkEventAttributes)
public void sectionTitle2()
Sink.section2()
element.
sectionTitle2
in interface Sink
sectionTitle2
in class SinkAdapter
Sink.sectionTitle(int,SinkEventAttributes)
public void sectionTitle2_()
sectionTitle2_
in interface Sink
sectionTitle2_
in class SinkAdapter
public void section2_()
section2_
in interface Sink
section2_
in class SinkAdapter
public void section3()
Sink.section2()
element.
section3
in interface Sink
section3
in class SinkAdapter
Sink.section(int,SinkEventAttributes)
public void sectionTitle3()
Sink.section3()
element.
sectionTitle3
in interface Sink
sectionTitle3
in class SinkAdapter
Sink.sectionTitle(int,SinkEventAttributes)
public void sectionTitle3_()
sectionTitle3_
in interface Sink
sectionTitle3_
in class SinkAdapter
public void section3_()
section3_
in interface Sink
section3_
in class SinkAdapter
public void section4()
Sink.section3()
element.
section4
in interface Sink
section4
in class SinkAdapter
Sink.section(int,SinkEventAttributes)
public void sectionTitle4()
Sink.section4()
element.
sectionTitle4
in interface Sink
sectionTitle4
in class SinkAdapter
Sink.sectionTitle(int,SinkEventAttributes)
public void sectionTitle4_()
sectionTitle4_
in interface Sink
sectionTitle4_
in class SinkAdapter
public void section4_()
section4_
in interface Sink
section4_
in class SinkAdapter
public void section5()
Sink.section4()
element.
section5
in interface Sink
section5
in class SinkAdapter
Sink.section(int,SinkEventAttributes)
public void sectionTitle5()
Sink.section5()
element.
sectionTitle5
in interface Sink
sectionTitle5
in class SinkAdapter
Sink.sectionTitle(int,SinkEventAttributes)
public void sectionTitle5_()
sectionTitle5_
in interface Sink
sectionTitle5_
in class SinkAdapter
public void section5_()
section5_
in interface Sink
section5_
in class SinkAdapter
protected void resetSectionCounter()
protected String getChapterString()
public void list(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
list
in interface Sink
list
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void list()
list
in interface Sink
list
in class SinkAdapter
Sink.list(SinkEventAttributes)
public void list_()
list_
in interface Sink
list_
in class SinkAdapter
public void listItem(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
listItem
in interface Sink
listItem
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void listItem()
listItem
in interface Sink
listItem
in class SinkAdapter
Sink.listItem(SinkEventAttributes)
public void listItem_()
listItem_
in interface Sink
listItem_
in class SinkAdapter
public void numberedList(int numbering, SinkEventAttributes attributes)
Supported attributes are the base attributes
.
numberedList
in interface Sink
numberedList
in class SinkAdapter
numbering
- the numbering style.attributes
- A set of SinkEventAttributes
, may be null
.Sink.NUMBERING_DECIMAL
,
Sink.NUMBERING_LOWER_ALPHA
,
Sink.NUMBERING_LOWER_ROMAN
,
Sink.NUMBERING_UPPER_ALPHA
,
Sink.NUMBERING_UPPER_ROMAN
public void numberedList(int numbering)
numberedList
in interface Sink
numberedList
in class SinkAdapter
numbering
- the numbering style.Sink.numberedList(int,SinkEventAttributes)
public void numberedList_()
numberedList_
in interface Sink
numberedList_
in class SinkAdapter
public void numberedListItem(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
numberedListItem
in interface Sink
numberedListItem
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void numberedListItem()
numberedListItem
in interface Sink
numberedListItem
in class SinkAdapter
Sink.numberedListItem(SinkEventAttributes)
public void numberedListItem_()
numberedListItem_
in interface Sink
numberedListItem_
in class SinkAdapter
public void definitionList(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
definitionList
in interface Sink
definitionList
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void definitionList()
definitionList
in interface Sink
definitionList
in class SinkAdapter
Sink.definitionList(SinkEventAttributes)
public void definitionList_()
definitionList_
in interface Sink
definitionList_
in class SinkAdapter
public void definitionListItem(SinkEventAttributes attributes)
Every definitionListItem has to contain exactly one Sink.definedTerm(SinkEventAttributes)
and one Sink.definition(SinkEventAttributes)
, in this order.
Supported attributes are the base attributes
.
definitionListItem
in interface Sink
definitionListItem
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void definitionListItem()
definitionListItem
in interface Sink
definitionListItem
in class SinkAdapter
Sink.definitionListItem(SinkEventAttributes)
public void definitionListItem_()
definitionListItem_
in interface Sink
definitionListItem_
in class SinkAdapter
public void definedTerm(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
definedTerm
in interface Sink
definedTerm
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void definedTerm()
definedTerm
in interface Sink
definedTerm
in class SinkAdapter
Sink.definedTerm(SinkEventAttributes)
public void definedTerm_()
definedTerm_
in interface Sink
definedTerm_
in class SinkAdapter
public void definition(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
definition
in interface Sink
definition
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void definition()
definition
in interface Sink
definition
in class SinkAdapter
Sink.definition(SinkEventAttributes)
public void definition_()
definition_
in interface Sink
definition_
in class SinkAdapter
public void figure(SinkEventAttributes attributes)
The canonical sequence of events for the figure element is:
sink.figure(); sink.figureGraphics( "figure.png" ); sink.figureCaption(); sink.text( "Figure caption",); sink.figureCaption_(); sink.figure_();
where the figureCaption element is optional.
However, NOTE that the order of figureCaption and figureGraphics events is arbitrary, ie a parser may emit the figureCaption before or after the figureGraphics. Implementing sinks should be prepared to handle both possibilities.
NOTE also that the figureGraphics() event does not have to be embedded
inside figure(), in particular for in-line images the figureGraphics() should be used
stand-alone (in HTML language, figureGraphics() produces a <img>
tag, while figure() opens a paragraph- or <div>
- like environment).
Supported attributes are the base attributes
.
figure
in interface Sink
figure
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void figure()
figure
in interface Sink
figure
in class SinkAdapter
Sink.figure(SinkEventAttributes)
public void figure_()
figure_
in interface Sink
figure_
in class SinkAdapter
public void figureGraphics(String name)
figureGraphics
in interface Sink
figureGraphics
in class SinkAdapter
name
- the sourcepublic void figureGraphics(String src, SinkEventAttributes attributes)
The src
parameter should be a valid link, ie it can be an absolute
URL or a link relative to the current source document.
Supported attributes are the base attributes
plus:
SRC
,ALT
,WIDTH
,HEIGHT
,ALIGN
,BORDER
,HSPACE
,VSPACE
,ISMAP
,USEMAP
.
If the SRC
attribute is specified in SinkEventAttributes,
it will be overridden by the src
parameter.
figureGraphics
in interface Sink
figureGraphics
in class SinkAdapter
src
- the image source, a valid URL.attributes
- A set of SinkEventAttributes
, may be null
.Sink.figure(SinkEventAttributes)
protected boolean isFigure()
figure()
and figure_()
calls.public void figureCaption(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
figureCaption
in interface Sink
figureCaption
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.Sink.figure(SinkEventAttributes)
public void figureCaption()
figureCaption
in interface Sink
figureCaption
in class SinkAdapter
Sink.figureCaption(SinkEventAttributes)
public void figureCaption_()
figureCaption_
in interface Sink
figureCaption_
in class SinkAdapter
public void paragraph()
paragraph
in interface Sink
paragraph
in class SinkAdapter
Sink.paragraph(SinkEventAttributes)
public void paragraph(SinkEventAttributes attributes)
Supported attributes are the base attributes
plus ALIGN
.
paragraph
in interface Sink
paragraph
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void paragraph_()
paragraph_
in interface Sink
paragraph_
in class SinkAdapter
public void verbatim(SinkEventAttributes attributes)
Text in a verbatim block must only be wrapped at the linebreaks in the source, and spaces should not be collapsed. It should be displayed in a fixed-width font to retain the formatting but the overall size may be chosen by the implementation.
Most Sink events may be emitted within a verbatim block, the only elements explicitly forbidden are font-changing events and figures. Also, verbatim blocks may not be nested.
Supported attributes are the base attributes
plus:
DECORATION
(value: "boxed"),ALIGN
,WIDTH
.
verbatim
in interface Sink
verbatim
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void verbatim(boolean boxed)
verbatim
in interface Sink
verbatim
in class SinkAdapter
boxed
- true to add a box, false otherwisepublic void verbatim_()
verbatim_
in interface Sink
verbatim_
in class SinkAdapter
public void horizontalRule(SinkEventAttributes attributes)
Supported attributes are the base attributes
plus:
ALIGN
,NOSHADE
,SIZE
,WIDTH
.
horizontalRule
in interface Sink
horizontalRule
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void horizontalRule()
horizontalRule
in interface Sink
horizontalRule
in class SinkAdapter
Sink.horizontalRule(SinkEventAttributes)
public void pageBreak()
pageBreak
in interface Sink
pageBreak
in class SinkAdapter
public void table(SinkEventAttributes attributes)
The canonical sequence of events for the table element is:
sink.table(); sink.tableRows( justify, true ); sink.tableRow(); sink.tableCell(); sink.text( "cell 1,1" ); sink.tableCell_(); sink.tableCell(); sink.text( "cell 1,2" ); sink.tableCell_(); sink.tableRow_(); sink.tableRows_(); sink.tableCaption(); sink.text( "Table caption" ); sink.tableCaption_(); sink.table_();
where the tableCaption element is optional.
However, NOTE that the order of tableCaption and
Sink.tableRows(int[],boolean)
events is arbitrary,
ie a parser may emit the tableCaption before or after the tableRows.
Implementing sinks should be prepared to handle both possibilities.
Supported attributes are the base attributes
plus:
ALIGN
,BGCOLOR
,BORDER
,CELLPADDING
,CELLSPACING
,FRAME
,RULES
,SUMMARY
,WIDTH
.
table
in interface Sink
table
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void table()
table
in interface Sink
table
in class SinkAdapter
Sink.table(SinkEventAttributes)
public void table_()
table_
in interface Sink
table_
in class SinkAdapter
public void tableRows(int[] justification, boolean grid)
tableRows
in interface Sink
tableRows
in class SinkAdapter
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.Sink.table(SinkEventAttributes)
,
Sink.JUSTIFY_CENTER
,
Sink.JUSTIFY_LEFT
,
Sink.JUSTIFY_RIGHT
public void tableRows_()
tableRows_
in interface Sink
tableRows_
in class SinkAdapter
public void tableRow(SinkEventAttributes attributes)
Supported attributes are the base attributes
plus:
ALIGN
,BGCOLOR
,VALIGN
.
tableRow
in interface Sink
tableRow
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void tableRow()
tableRow
in interface Sink
tableRow
in class SinkAdapter
Sink.tableRow(SinkEventAttributes)
public void tableRow_()
tableRow_
in interface Sink
tableRow_
in class SinkAdapter
public void tableCell(SinkEventAttributes attributes)
Supported attributes are the base attributes
plus:
ABBRV
,ALIGN
,AXIS
,BGCOLOR
,COLSPAN
,HEADERS
,HEIGHT
,NOWRAP
,ROWSPAN
,SCOPE
,VALIGN
,WIDTH
.
tableCell
in interface Sink
tableCell
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void tableCell()
tableCell
in interface Sink
tableCell
in class SinkAdapter
Sink.tableCell(SinkEventAttributes)
public void tableCell(String width)
tableCell
in interface Sink
tableCell
in class SinkAdapter
width
- the size of the cell.public void tableHeaderCell(SinkEventAttributes attributes)
Supported attributes are the same as for tableCell
.
tableHeaderCell
in interface Sink
tableHeaderCell
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void tableHeaderCell()
tableHeaderCell
in interface Sink
tableHeaderCell
in class SinkAdapter
Sink.tableHeaderCell(SinkEventAttributes)
public void tableHeaderCell(String width)
tableHeaderCell
in interface Sink
tableHeaderCell
in class SinkAdapter
width
- the size of the header cell.public void tableCell_()
tableCell_
in interface Sink
tableCell_
in class SinkAdapter
public void tableHeaderCell_()
tableHeaderCell_
in interface Sink
tableHeaderCell_
in class SinkAdapter
public void tableCaption(SinkEventAttributes attributes)
Note that the order of tableCaption and
Sink.tableRows(int[],boolean)
events is arbitrary,
ie a parser may emit the tableCaption before or after the tableRows.
Implementing sinks should be prepared to handle both possibilities.
Supported attributes are the base attributes
plus ALIGN
.
tableCaption
in interface Sink
tableCaption
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.Sink.table(SinkEventAttributes)
public void tableCaption()
tableCaption
in interface Sink
tableCaption
in class SinkAdapter
Sink.tableCaption(SinkEventAttributes)
public void tableCaption_()
tableCaption_
in interface Sink
tableCaption_
in class SinkAdapter
public void anchor(String name, SinkEventAttributes attributes)
The name
parameter has to be a valid SGML NAME token.
According to the
HTML 4.01 specification section 6.2 SGML basic types:
ID and NAME tokens must begin with a letter ([A-Za-z]) and may be followed by any number of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), colons (":"), and periods (".").
Supported attributes are the base attributes
.
If NAME
is specified in the SinkEventAttributes,
it will be overwritten by the name
parameter.
anchor
in interface Sink
anchor
in class SinkAdapter
name
- the name of the anchor. This has to be a valid SGML NAME token.attributes
- A set of SinkEventAttributes
, may be null
.public void anchor(String name)
anchor
in interface Sink
anchor
in class SinkAdapter
name
- the name of the anchor.Sink.anchor(String,SinkEventAttributes)
public void anchor_()
anchor_
in interface Sink
anchor_
in class SinkAdapter
public void link(String name, SinkEventAttributes attributes)
The name
parameter has to be a valid html href
parameter, ie for internal links (links to an anchor within the same source
document), name
should start with the character "#".
Supported attributes are the base attributes
plus:
CHARSET
,COORDS
,HREF
,HREFLANG
,REL
,REV
,SHAPE
,TARGET
,TYPE
.
If HREF
is specified in the
SinkEventAttributes, it will be overwritten by the name
parameter.
link
in interface Sink
link
in class SinkAdapter
name
- the name of the link.attributes
- A set of SinkEventAttributes
, may be null
.public void link(String name)
link
in interface Sink
link
in class SinkAdapter
name
- the name of the link.Sink.link(String,SinkEventAttributes)
public void link_()
link_
in interface Sink
link_
in class SinkAdapter
public void italic()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.
italic
in interface Sink
italic
in class SinkAdapter
public void italic_()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.
italic_
in interface Sink
italic_
in class SinkAdapter
public void bold()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.
bold
in interface Sink
bold
in class SinkAdapter
public void bold_()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.
bold_
in interface Sink
bold_
in class SinkAdapter
public void monospaced()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.
monospaced
in interface Sink
monospaced
in class SinkAdapter
public void monospaced_()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.
monospaced_
in interface Sink
monospaced_
in class SinkAdapter
public void lineBreak(SinkEventAttributes attributes)
Supported attributes are:
ID
,CLASS
,TITLE
,STYLE
.
lineBreak
in interface Sink
lineBreak
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void lineBreak()
lineBreak
in interface Sink
lineBreak
in class SinkAdapter
Sink.lineBreak(SinkEventAttributes)
public void nonBreakingSpace()
nonBreakingSpace
in interface Sink
nonBreakingSpace
in class SinkAdapter
public void text(String text, SinkEventAttributes attributes)
The text
parameter should contain only real content, ie any
ignorable/collapsable whitespace/EOLs or other pretty-printing should
be removed/normalized by a parser.
If text
contains any variants of line terminators, they should
be normalized to the System EOL by an implementing Sink.
Supported attributes are the base attributes
plus
VALIGN
(values "sub", "sup"),DECORATION
(values "underline", "overline", "line-through"),STYLE
(values "italic", "bold", "monospaced").
text
in interface Sink
text
in class SinkAdapter
text
- The text to write.attributes
- A set of SinkEventAttributes
, may be null
.public void text(String text)
text
in interface Sink
text
in class SinkAdapter
text
- The text to write.Sink.text(String,SinkEventAttributes)
public void rawText(String text)
rawText
in interface Sink
rawText
in class SinkAdapter
text
- The text to write.public void flush()
flush
in interface Sink
flush
in class SinkAdapter
public void close()
close
in interface Sink
close
in class SinkAdapter
public void unknown(String name, Object[] requiredParams, SinkEventAttributes attributes)
unknown
in interface Sink
unknown
in class SinkAdapter
name
- The name of the event.requiredParams
- An optional array of required parameters to the event.
May be null
.attributes
- A set of SinkEventAttributes
, may be null
.Sink.unknown(String,Object[],SinkEventAttributes)
public void comment(String comment)
comment
in interface Sink
comment
in class SinkAdapter
comment
- The comment to write.public void beginDocument()
public void endDocument()
protected FoConfiguration getFoConfiguration()
protected void writeStartTag(HTML.Tag tag, String attributeId)
tag
- The tag.attributeId
- An id identifying the attribute set.protected void writeStartTag(HTML.Tag tag, String id, String name)
tag
- The tag.id
- An id to add.name
- The name (value) of the id.protected void writeStartTag(HTML.Tag tag, String id, String name, String attributeId)
tag
- The tag.id
- An id to add.name
- The name (value) of the id.attributeId
- An id identifying the attribute set.protected void writeEmptyTag(HTML.Tag tag, String id, String name)
tag
- The tag.id
- An id to add.name
- The name (value) of the id.protected void writeEmptyTag(HTML.Tag tag, String attributeId)
tag
- The tag name.attributeId
- An id identifying the attribute set.protected void write(String text)
write
in class AbstractXmlSink
text
- the given text to writeprotected void writeln(String text)
text
- The text to write.protected void content(String text)
text
- The text to write.public static String escaped(String text, boolean verb)
text
- The text to process.verb
- In verbatim mode, white space and newlines are escaped.
protected void writeStartTag(HTML.Tag t, MutableAttributeSet att, boolean isSimpleTag)
<tag attName="attValue">
writeStartTag
in class AbstractXmlSink
t
- a non null tag.att
- a set of attributes. May be null.isSimpleTag
- boolean to write as a simple tag.protected void writeEndTag(HTML.Tag t)
</tag>.
writeEndTag
in class AbstractXmlSink
t
- a tag.protected void startPageSequence(String initPageNumber, String headerText, String footerText)
initPageNumber
- The initial page number. Should be either "0" (for the first page) or "auto".headerText
- The text to write in the header, if null, nothing is written.footerText
- The text to write in the footer, if null, nothing is written.protected void regionBefore(String headerText)
headerText
- The text to write in the header, if null, nothing is written.protected void regionAfter(String footerText)
footerText
- The text to write in the footer, if null, nothing is written.protected void chapterHeading(String headerText, boolean chapterNumber)
headerText
- The text to write in the header, if null, the current document title is written.chapterNumber
- True if the chapter number should be written in front of the text.protected void pdfBookmarks()
protected void logMessage(String key, String msg)
msg
as is, otherwise add unique msg in warnMessages
.
key
- not nullmsg
- not nullclose()
protected void init()
Sink.head()
or in Sink.close()
, and can be used
to set the sink into a clear state so it can be re-used.
init
in class AbstractSink
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |