case class FOFormatter(renderChild: (FOFormatter, Element) => String, currentElement: Element, parents: List[Element], pathTranslator: PathTranslator, path: Path, styles: StyleDeclarationSet, indentation: Indentation, messageFilter: MessageFilter) extends TagFormatter[FOFormatter] with FOProperties with Product with Serializable
API for renderers that produce XSL-FO output.
- renderChild
the function to use for rendering child elements
- currentElement
the active element currently being rendered
- parents
the stack of parent elements of this formatter in recursive rendering, with the root element being the last in the list
- pathTranslator
translates paths of input documents to the corresponding output path
- path
the virtual path of the document getting rendered, used for generating unique ids
- styles
the styles to apply when writing the attributes of an element
- indentation
the indentation mechanism for this formatter
- messageFilter
the filter to apply before rendering runtime messages
- Alphabetic
- By Inheritance
- FOFormatter
- Serializable
- Product
- Equals
- FOProperties
- TagFormatter
- BaseFormatter
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new FOFormatter(renderChild: (FOFormatter, Element) => String, currentElement: Element, parents: List[Element], pathTranslator: PathTranslator, path: Path, styles: StyleDeclarationSet, indentation: Indentation, messageFilter: MessageFilter)
- renderChild
the function to use for rendering child elements
- currentElement
the active element currently being rendered
- parents
the stack of parent elements of this formatter in recursive rendering, with the root element being the last in the list
- pathTranslator
translates paths of input documents to the corresponding output path
- path
the virtual path of the document getting rendered, used for generating unique ids
- styles
the styles to apply when writing the attributes of an element
- indentation
the indentation mechanism for this formatter
- messageFilter
the filter to apply before rendering runtime messages
Type Members
- type StyleHint = Element
- Definition Classes
- FOFormatter → TagFormatter
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def attribute(name: String, value: String): String
Renders the specified attribute including a preceding space character.
Renders the specified attribute including a preceding space character.
- Definition Classes
- TagFormatter
- def attributes(tag: String, element: Element, attrs: Seq[(String, String)]): String
Renders all attributes derived from the style hint and the explicitly provided attributes.
Renders all attributes derived from the style hint and the explicitly provided attributes.
- Definition Classes
- FOFormatter → TagFormatter
- def attributes(attrs: Seq[(String, String)]): String
Renders the specified attributes (passed as name-value tuples), including a preceding space character.
Renders the specified attributes (passed as name-value tuples), including a preceding space character.
- Definition Classes
- TagFormatter
- def block(styleHint: Element, attr: (String, String)*): String
Renders an empty FO
block
element. - def block(styleHint: Element, content: Seq[Span], attr: (String, String)*): String
Renders an FO
block
element and the specified nested spans on the same line. - def blockContainer(styleHint: Element, content: Seq[Block], attr: (String, String)*): String
Renders an FO
block
element, containing nested blocks.Renders an FO
block
element, containing nested blocks. The content will be rendered indented one level to the right. - def blockWithWS(styleHint: Element, content: Seq[Span], attr: (String, String)*): String
Renders an FO
block
element and the specified nested spans, preserving all whitespace within the text elements of those spans. - def bookmark(bookmark: NavigationItem): String
Renders an FO
bookmark
element and all of its nested bookmarks. - def bookmarkTitle(title: BookmarkTitle): String
Renders an FO
bookmark-title
element. - def bookmarkTree(tree: NavigationList): String
Renders an FO
bookmark-tree
element and all of its nested bookmarks. - def buildId(path: Path): String
Generates an id that is unique within the entire document tree for the specified path of the target document and its local reference.
- def buildLocalId(ref: String): String
Generates an id that is unique within the entire document tree for the specified local reference.
- def child(element: Element): String
Renders the specified element on the current line.
Renders the specified element on the current line.
- Definition Classes
- BaseFormatter
- def childPerLine(elements: Seq[Element]): String
Renders the specified elements, each of them on a new line using the current level of indentation.
Renders the specified elements, each of them on a new line using the current level of indentation.
- Definition Classes
- BaseFormatter
- def children(elements: Seq[Element]): String
Renders the specified elements, all on the same line, without any separators.
Renders the specified elements, all on the same line, without any separators.
- Definition Classes
- BaseFormatter
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def comment(content: String): String
Renders an HTML/XML comment.
Renders an HTML/XML comment.
- Definition Classes
- TagFormatter
- val currentElement: Element
- def element(tagName: String, styleHint: StyleHint, content: Seq[Element], attrs: (String, String)*): String
Renders an element with the specified tag name, attributes derived from the style hint and content consisting of the provided child elements, all rendered on the same line.
Renders an element with the specified tag name, attributes derived from the style hint and content consisting of the provided child elements, all rendered on the same line.
- Definition Classes
- TagFormatter
- def emptyElement(tagName: String): String
Renders an empty element with the specified tag name.
Renders an empty element with the specified tag name.
- Definition Classes
- TagFormatter
- def emptyElement(tagName: String, styleHint: StyleHint, attrs: (String, String)*): String
Renders an empty element with the specified tag name and attributes derived from the style hint.
Renders an empty element with the specified tag name and attributes derived from the style hint.
- Definition Classes
- TagFormatter
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def externalGraphic(styleHint: Element, src: String, width: Option[Length], height: Option[Length]): String
Renders an FO
external-graphic
element. - def externalLink(styleHint: Element, url: String, content: Seq[Span], attr: (String, String)*): String
Renders an FO
basic-link
element for an external target. - def filterAttributes(tagName: String, attributes: Seq[(String, String)]): Seq[(String, String)]
Filters out all unsupported attributes for the specified tagName and return a new sequence containing only attributes valid for that tag.
Filters out all unsupported attributes for the specified tagName and return a new sequence containing only attributes valid for that tag.
- tagName
the name of tag to filter the attributes for
- attributes
the attributes to filter as a sequence of key-name tuples
- returns
a new sequence containing only attributes valid for that tag
- Definition Classes
- FOProperties
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def footnote(styleHint: Element, label: String, body: Seq[Block], options: Options): String
Renders an FO
footnote
element, with the body indented one level to the right. - def forMessage(message: RuntimeMessage)(whenEnabled: String): String
Renders the specified string only when the given message has at least the minimum message level defined for this formatter instance.
Renders the specified string only when the given message has at least the minimum message level defined for this formatter instance.
- Definition Classes
- BaseFormatter
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- val indentation: Indentation
- def indented(f: (FOFormatter) => String): String
Invokes the specified render function with a new formatter that is indented one level to the right of this formatter.
Invokes the specified render function with a new formatter that is indented one level to the right of this formatter.
- Definition Classes
- BaseFormatter
- def indentedChildren(elements: Seq[Element]): String
Renders the specified elements, each of them on a new line with the indentation increased one level to the right.
Renders the specified elements, each of them on a new line with the indentation increased one level to the right.
- Definition Classes
- BaseFormatter
- def indentedElement(tagName: String, styleHint: StyleHint, content: Seq[Element], attrs: (String, String)*): String
Renders an element with the specified tag name, attributes derived from the style hint and indented content consisting of the provided child elements.
Renders an element with the specified tag name, attributes derived from the style hint and indented content consisting of the provided child elements.
- Definition Classes
- TagFormatter
- def inline(styleHint: Element, content: Seq[Span], attr: (String, String)*): String
Renders an FO
inline
element and the specified nested spans on the same line. - def internalLink(styleHint: Element, target: Path, content: Seq[Span], attr: (String, String)*): String
Renders an FO
basic-link
element for an internal target. - def internalLinkTarget(element: Element): String
Renders an FO
block
orinline
element for this internal link target, depending on whether it is inside aBlockContainer
orSpanContainer
. - final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def listBlock(styleHint: Element, content: Seq[ListItem], attr: (String, String)*): String
Renders an FO
list-block
element, and the specified list items.Renders an FO
list-block
element, and the specified list items. The content will be rendered indented one level to the right. - def listItem(styleHint: Element, label: Seq[Span], body: Seq[Block], attr: (String, String)*): String
Renders an FO
list-item
element with the specified label and body.Renders an FO
list-item
element with the specified label and body. The content will be rendered indented one level to the right. - def listItemBody(styleHint: Element, content: Seq[Block], attr: (String, String)*): String
Renders an FO
list-item-body
element, with the content indented one level to the right. - def listItemLabel(styleHint: Element, content: Block, attr: (String, String)*): String
Renders an FO
list-item-label
element, with the content indented one level to the right. - val messageFilter: MessageFilter
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val newLine: String
A newline character followed by whitespace matching the indentation level of this instance.
A newline character followed by whitespace matching the indentation level of this instance.
- Definition Classes
- BaseFormatter
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def optAttributes(attrs: (String, Option[String])*): Seq[(String, String)]
Filters empty values from the provided list of name-value pairs.
Filters empty values from the provided list of name-value pairs.
- Definition Classes
- TagFormatter
- val parents: List[Element]
- val path: Path
- val pathTranslator: PathTranslator
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- def rawElement(tagName: String, styleHint: StyleHint, content: String, attrs: (String, String)*): String
Renders an element with the specified tag name, attributes derived from the style hint and content based on the provided string that is interpreted as already rendered in the target format.
Renders an element with the specified tag name, attributes derived from the style hint and content based on the provided string that is interpreted as already rendered in the target format. That means that no character escaping will be performed on the provided content.
- Definition Classes
- TagFormatter
- def rawText(styleHint: Element, content: String, attr: (String, String)*): String
Renders an FO
inline
element and the specified text, treating it as "raw", pre-rendered XSL-FO output, so that no escaping of special character will be performed.Renders an FO
inline
element and the specified text, treating it as "raw", pre-rendered XSL-FO output, so that no escaping of special character will be performed. Renders only the text itself in case there are no attributes associated with the text. - val renderChild: (FOFormatter, Element) => String
- val styles: StyleDeclarationSet
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def text(styleHint: Element, content: String, attr: (String, String)*): String
Renders an FO
inline
element and the specified text.Renders an FO
inline
element and the specified text. Renders only the text itself in case there are no attributes associated with the text. - def text(str: String): String
Renders the specified string on the same line, with all special XML/HTML characters converted to entities.
Renders the specified string on the same line, with all special XML/HTML characters converted to entities.
- Definition Classes
- TagFormatter
- def textBlockWithWS(styleHint: Element, content: String, attr: (String, String)*): String
Renders an FO
block
element and the specified text, preserving all whitespace.Renders an FO
block
element and the specified text, preserving all whitespace. Renders only the text itself in case there are no attributes associated with the text. - def textElement(tagName: String, styleHint: StyleHint, txt: String, attrs: (String, String)*): String
Renders a text element with the specified tag name, attributes derived from the style hint and content based on the provided text content that gets rendered with all special XML/HTML characters converted to entities.
Renders a text element with the specified tag name, attributes derived from the style hint and content based on the provided text content that gets rendered with all special XML/HTML characters converted to entities.
- Definition Classes
- TagFormatter
- def textWithWS(styleHint: Element, content: String, attr: (String, String)*): String
Renders an FO
inline
element and the specified text, preserving all whitespace.Renders an FO
inline
element and the specified text, preserving all whitespace. Renders only the text itself in case there are no attributes associated with the text. - final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def withChild(element: Element): FOFormatter
- Attributes
- protected
- Definition Classes
- FOFormatter → BaseFormatter
- def withCitation(ref: String)(f: (Citation) => String): String
Obtains a Citation with the specified reference name and, if it exists, passes it to the provided render function.
- def withFootnote(ref: String)(f: (Footnote) => String): String
Obtains a Footnote with the specified reference name and, if it exists, passes it to the provided render function.
- def withIndentation(newIndentation: Indentation): FOFormatter
- Attributes
- protected
- Definition Classes
- FOFormatter → BaseFormatter
- def withMinIndentation(minIndent: Int)(f: (FOFormatter) => String): String
Invokes the specified render function with a formatter that has at least the specified minimum level of indentation.
Invokes the specified render function with a formatter that has at least the specified minimum level of indentation. If this instance already has an indentation equal or greater to this value, the current level of indentation will be kept.
- Definition Classes
- BaseFormatter
- def withoutIndentation(f: (FOFormatter) => String): String
Invokes the specified render function with a new formatter that has all indentation disabled.
Invokes the specified render function with a new formatter that has all indentation disabled.
This is usually only required when rendering literal elements or source code where rendered whitespace would be significant.
- Definition Classes
- BaseFormatter