Class XsltFOFunctions

java.lang.Object
org.docx4j.convert.out.fo.XsltFOFunctions

public class XsltFOFunctions extends Object
This class contains static functions that are specific to the FO xsl-transformation and are called from docx2fo.xslt.
  • Constructor Details

    • XsltFOFunctions

      public XsltFOFunctions()
  • Method Details

    • getLayoutMasterSetFragment

      public static DocumentFragment getLayoutMasterSetFragment(AbstractWmlConversionContext context)
    • createBlockForSdt

      public static DocumentFragment createBlockForSdt(FOConversionContext context, org.w3c.dom.traversal.NodeIterator pPrNodeIt, String pStyleVal, org.w3c.dom.traversal.NodeIterator childResults, String tag)
    • createInlineForSdt

      public static DocumentFragment createInlineForSdt(FOConversionContext context, org.w3c.dom.traversal.NodeIterator rPrNodeIt, org.w3c.dom.traversal.NodeIterator childResults, String tag)
    • createBlockForPPr

      public static DocumentFragment createBlockForPPr(FOConversionContext context, org.w3c.dom.traversal.NodeIterator pPrNodeIt, String pStyleVal, org.w3c.dom.traversal.NodeIterator childResults)
      This is invoked on every paragraph, whether it has a pPr or not.
      Parameters:
      wmlPackage -
      pPrNodeIt -
      pStyleVal -
      childResults - - the already transformed contents of the paragraph.
      Returns:
    • createBlock

      protected static DocumentFragment createBlock(WordprocessingMLPackage wmlPackage, RunFontSelector runFontSelector, String pStyleVal, org.w3c.dom.traversal.NodeIterator childResults, boolean sdt, org.docx4j.wml.PPr pPrDirect, org.docx4j.wml.PPr pPr, org.docx4j.wml.RPr rPr, org.docx4j.wml.RPr rPrParagraphMark)
    • createListBlock

      protected static boolean createListBlock(WordprocessingMLPackage wmlPackage, RunFontSelector runFontSelector, String pStyleVal, org.docx4j.wml.PPr pPrDirect, org.docx4j.wml.PPr pPr, org.docx4j.wml.RPr rPr, org.docx4j.wml.RPr rPrParagraphMark, Document document, Element foBlockElement, Element foListBlock)
    • setFont

      protected static void setFont(RunFontSelector runFontSelector, Element foListItemLabelBody, org.docx4j.wml.PPr pPr, org.docx4j.wml.RPr rPr, String text)
      Use RunFontSelector to determine the correct font for the list item label.
      Parameters:
      context -
      foListItemLabelBody -
      pPr -
      rPr -
      text -
    • getDistanceToNextTabStop

      protected static int getDistanceToNextTabStop(int pos, int numWidth, org.docx4j.wml.Tabs pprTabs, DocumentSettingsPart settings)
    • applyFoAttributes

      public static void applyFoAttributes(List<Property> properties, Element foElement)
    • createBlockForRPr

      public static DocumentFragment createBlockForRPr(FOConversionContext context, org.w3c.dom.traversal.NodeIterator pPrNodeIt, org.w3c.dom.traversal.NodeIterator rPrNodeIt, org.w3c.dom.traversal.NodeIterator childResults)
      On a block representing a run, we just put run properties from this rPr node. The paragraph style rPr's have been taken care of on the fo block which represents the paragraph.
      Parameters:
      wmlPackage -
      rPrNodeIt -
      childResults -
      Returns:
    • getPageNumberFormat

      public static String getPageNumberFormat(FOConversionContext context)
    • getPageNumberInitial

      public static String getPageNumberInitial(FOConversionContext context)
    • getForcePageCount

      public static String getForcePageCount(FOConversionContext context)
      FOP inserts a blank page if necessary so that a section with page numbering from 1 would be face up when printed double sided. Word doesn't do that (unless you have an odd section type), so this function mimics Word's behaviour.
      Parameters:
      context -
      Returns:
      Since:
      3.2.2
    • hasPgNumTypeStart

      public static boolean hasPgNumTypeStart(FOConversionContext context)