writer2latex.latex

Class NoteConverter


public class NoteConverter
extends ConverterHelper

This class handles conversion of footnotes and endnotes, including references. It takes advantage of the packages endnotes.sty and perpage.sty if allowed in the configuration.

Field Summary

Fields inherited from class writer2latex.latex.ConverterHelper

config, ofr, palette

Constructor Summary

NoteConverter(OfficeReader ofr, LaTeXConfig config, ConverterPalette palette)

Method Summary

void
addEndnoteName(String sName)
Add an endnote name.
void
addFootnoteName(String sName)
Add a footnote name.
void
appendDeclarations(LaTeXDocumentPortion pack, LaTeXDocumentPortion decl)
Append declarations needed by the NoteConverter to the preamble.
void
flushFootnotes(LaTeXDocumentPortion ldp, Context oc)
Flush the queue of postponed footnotes
void
handleEndnote(Element node, LaTeXDocumentPortion ldp, Context oc)
Process an endnote (text:endnote tag)
void
handleEndnoteRef(Element node, LaTeXDocumentPortion ldp, Context oc)
Process an endnote reference (text:endnote-ref tag)
void
handleFootnote(Element node, LaTeXDocumentPortion ldp, Context oc)
Process a footnote (text:footnote tag)
void
handleFootnoteRef(Element node, LaTeXDocumentPortion ldp, Context oc)
Process a footnote reference (text:footnote-ref tag)
void
handleNoteRef(Element node, LaTeXDocumentPortion ldp, Context oc)
Process a note reference (text:note-ref tag, oasis)
void
insertEndnotes(LaTeXDocumentPortion ldp)
Insert the endnotes into the documents.

Methods inherited from class writer2latex.latex.ConverterHelper

appendDeclarations

Constructor Details

NoteConverter

public NoteConverter(OfficeReader ofr,
                     LaTeXConfig config,
                     ConverterPalette palette)

Method Details

addEndnoteName

public void addEndnoteName(String sName)
Add an endnote name. The method handleEndnote includes a \label only if the endnote name is already known to the NoteConverter. Hence this method is invoked by the prepass for each endnote reference. The end result is, that only necessary labels will be included.
Parameters:
sName - the name (id) of the endnote

addFootnoteName

public void addFootnoteName(String sName)
Add a footnote name. The method handleFootnote includes a \label only if the footnote name is already known to the NoteConverter. Hence this method is invoked by the prepass for each footnote reference. The end result is, that only necessary labels will be included.
Parameters:
sName - the name (id) of the footnote

appendDeclarations

public void appendDeclarations(LaTeXDocumentPortion pack,
                               LaTeXDocumentPortion decl)
Append declarations needed by the NoteConverter to the preamble.
Overrides:
appendDeclarations in interface ConverterHelper
Parameters:
pack - the LaTeXDocumentPortion to which declarations of packages should be added (\\usepackage).
decl - the LaTeXDocumentPortion to which other declarations should be added.

flushFootnotes

public void flushFootnotes(LaTeXDocumentPortion ldp,
                           Context oc)
Flush the queue of postponed footnotes

handleEndnote

public void handleEndnote(Element node,
                          LaTeXDocumentPortion ldp,
                          Context oc)
Process an endnote (text:endnote tag)
Parameters:
node - The element containing the endnote
ldp - the LaTeXDocumentPortion to which LaTeX code should be added
oc - the current context

handleEndnoteRef

public void handleEndnoteRef(Element node,
                             LaTeXDocumentPortion ldp,
                             Context oc)
Process an endnote reference (text:endnote-ref tag)
Parameters:
node - The element containing the endnote reference
ldp - the LaTeXDocumentPortion to which LaTeX code should be added
oc - the current context

handleFootnote

public void handleFootnote(Element node,
                           LaTeXDocumentPortion ldp,
                           Context oc)
Process a footnote (text:footnote tag)
Parameters:
node - The element containing the footnote
ldp - the LaTeXDocumentPortion to which LaTeX code should be added
oc - the current context

handleFootnoteRef

public void handleFootnoteRef(Element node,
                              LaTeXDocumentPortion ldp,
                              Context oc)
Process a footnote reference (text:footnote-ref tag)
Parameters:
node - The element containing the footnote reference
ldp - the LaTeXDocumentPortion to which LaTeX code should be added
oc - the current context

handleNoteRef

public void handleNoteRef(Element node,
                          LaTeXDocumentPortion ldp,
                          Context oc)
Process a note reference (text:note-ref tag, oasis)
Parameters:
node - The element containing the note reference
ldp - the LaTeXDocumentPortion to which LaTeX code should be added
oc - the current context

insertEndnotes

public void insertEndnotes(LaTeXDocumentPortion ldp)
Insert the endnotes into the documents.
Parameters:
ldp - the LaTeXDocumentPortion to which the endnotes should be added.