Word(docx) Output no-LT

AH Formatter V7.1 can output a simple Word(docx).

Customers must subscribe “AH Formatter Word(docx) Output Option” to output Word(docx). For more details, see also Antenna House website.

Word(docx) Output is not available with AH Formatter V7.1 Lite.

Features of Word(docx) Output

Word(docx) is expressed in XML called WordprocessingML. WordprocessingML is an XML for expressing Word in Office documents. The XML of this Office document is called OOXML (Office Open XML) and is defined in Standard ECMA-376. The document models expressed by WordprocessingML and FO are very different. Therefore, we cannot output all FO exactly as WordprocessingML. “AH Formatter Word(docx) Output Option” outputs documents with a relatively simple structure as WordprocessingML.

Restrictions

The following shows the known restrictions of Word(docx) output. There may have some other restrictions that are not listed here.

  • The docx output is available only from FO. It cannot be outputted from the AreaTree or HTML.

  • In WordprocessingML, basically there are only document structures of the paragraph <w:p> and the table <w:tbl>. They are only lining up under <w:body>. <w:p> cannot be nested. In FO you can nest blocks arbitrarily, but they will expand to a flat structure in Word output. Therefore, the following nested borders etc. will not be the same as FO.

    <fo:block border="solid 5pt red">
     Hello,
    <fo:block border="solid 5pt green">
     こんにちは
    </fo:block>
     World!
    </fo:block>
    
  • The WordprocessingML <w:tbl> does not have the ability to associate a table with its caption like <fo:table-and-caption>. Captions are generated independently from the table.

  • A table cannot be rotated.

  • The border is outputted as one of the ruled lines that can be expressed in WordprocessingML. In Word, when the ruled lines of adjacent paragraphs (blocks) are the same, they are merged. It is not possible to draw the same ruled line independently in adjacent paragraphs (blocks). Rounded Corners, Diagonal Border are not reflected.

  • Image formats not supported by Word are not reflected.

  • The background color and the background image of the first <fo:page-sequence> becomes the background color and the background image of the document.

  • The background and border specified in <fo:region-*> are not reflected.

  • As for superscripts and subscripts, the font size and the baseline are simply adjusted and its meaning is lost.

  • AH Formatter V7.1 performs complicated font processing such as ligature, and outputs it as a glyph in PDF. In Word(docx) output, any ligatures are not performed to leave such processing to Word itself, and it is outputted as a character string. The same is true for complex scripts.

  • Printer marks are not reflected.

  • Watermarks are not reflected.

  • Line Numbering is not reflected.

  • Revision Bar (including fo:change-bar-*) is not reflected.

  • Emphasis marks becomes one of the emphasis marks that can be expressed by WordprocessingML.

  • text shadow is not reflected.

  • box shadow is not reflected.

  • annotation is not reflected.

  • <fo:region-before> is considered a header. <fo:region-after> is considered a footer. <fo:region-start> and <fo:region-end> are discarded.

  • Headers and footers in Word can only control even and odd pages and the first page. The other complicated <fo:page-sequence-master> in FO is not supported.

  • Footnotes are assumed to be axf:footnote-stacking="block", axf:footnote-position="page". Sidenotes, etc. are not supported.

  • Spread Page Master cannot be outputted.

  • It's not available to Float to the absolute position.

  • WordprocessingML does not have a feature equivalent to <fo:inline-container>. Even if expressing a complicated document structure (eg a table) in <fo:inline-container>, only inline elements are retrieved.

  • WordprocessingML does not have a feature equivalent to <fo:block-container>. <fo:block-container> is substituted using a single-cell table. Nested <fo:block-container> is not supported. Columns specified in <fo:block-container> are not reflected.