16.5.0 Word (DOCX) Report Template Limitations

This article documents limitations in Windward support for Word (DOCX) Report Templates.

Jump ahead to these sections using the links below:

Document Limitations

Paragraph Limitations

Table Limitations

Section Limitations

Style Limitations

Miscellaneous Limitations

Document Limitations

Inserting Tags in the Main Document

We support colors, but not drawing objects (yet).

Not supported:

  • Watermarks. (Instead, just add the image you want as your watermark to the Header Section, then set the image properties to "Behind the Text.")
  • Glossary.
  • Mail merge. (Use Designer to do this for you!)

Headers and Footers

Headers and footers are fully supported.

Footnotes

  • Previous versions, beginning with 12.5.31.0, support DOCX -> DOCX only.
  • Support for other output types is available in version 13 and newer.
  • Footnotes are supported for the main Report Template only; they are not supported for imported Report Templates.

Document Properties

Windward fully supports these properties (and only these properties):

  • creator
  • description
  • keywords
  • subject
  • title

Document Settings

Windward fully supports:

  • Auto-hyphenation
  • Default tab stop
  • Do not use indent as numbering tab stop (compatibility setting)
  • Even and odd headers
  • Mirror margins
  • No column balance (compatibility setting)

Windward partially supports:

  • Attached template
  • Display background shape
  • Hyphenation properties (consecutive limit, zone, no caps) supported for DOCX output only
  • Track revisions (we don't copy revisions, just this setting)
  • Table of Contents (TOC) can be inaccurate if you are importing templates (via Out Tag or Import Tag) or HTML.

Absolute positioning of tables and images is not supported. See Template Best Practices for more information.

Nothing else is supported.

Content Controls

  • Content controls are not supported for Tags
  • Content controls are supported for DOCX --> DOCX as a page element

Paragraph Limitations

Fully Supported

  • Content controls
  • Hyphens: breaking and non-breaking
  • Page and column breaks (a carriage return will always precede a page break on output)
  • Symbol command; it is replaced with the symbol's character.
  • Tabs and absolute tabs (w:ptab)

Fully Supported DOCX -> DOCX; Partially Supported DOCX -> Other

Textbox Limitations

Windward only supports standard text boxes.

  • The border will always be a solid line if any border is set.
    • Standard dot and dash border (DOCX only)
  • Background always rendered as a solid color
  • Absolute positioning of tables and images is not supported. See Template Best Practices for more information.

Linked textbox support: 

  • If the output is not DOCX:
    • The anchor points for the textboxes must be in the same order as the next links.
  • All other settings are ignored.

Grouped textboxes (which are fundamentally grouped shapes) are not supported.

Word Fields Limitations

  • We ignore formatting within the field results (basically we always do \* MERGEFORMAT).
  • We ignore formulas.
  • calcOnExit(), entryMacro(), and exitMacro() are not applicable for report generation.

For fields we pass blindly across, like DATE or NUMCHARS, any formatting should appear in the generated report.

However, for fields where we calculate the result such as PRINTDATE and PAGE, the formatting is limited as follows:

  • We only handle the general formats: ALPHABETIC, alphabetic, Arabic, Roman, & roman.
  • Numeric and date formats such as "00.00" and "mm-dd-yyyy" are passed to the Java classes DecimalFormat or SimpleDateFormat. These are about 98% identical, but there are some differences.

Fields written as based on the report content

We write the following fields based on the report content.

The form fields FORMCHECKBOX, FORMDROPDOWN, and FORMTEXT are written as forms to DOCX, PDF, and HTML output. For other formats they are written as text.

Field Windward Output
FORMCHECKBOX
Written as forms to DOCX, PDF, and HTML output. For other formats this is written as text.
FORMDROPDOWN
Written as forms to DOCX, PDF, and HTML output. For other formats this is written as text.
FORMTEXT
Written as forms to DOCX, PDF, and HTML output. For other formats this is written as text.
HYPERLINK Converted to a standard hyperlink.
INDEX
Uses very few of the configuration settings.
KEYWORDS
Will use the value from Report. Keywords if set; if not set, it will use the value in the template properties.
NUMPAGES
Only use number formatting codes listed above.
PAGE
Only use number formatting codes listed above.
PAGEREF
Ignores the \p setting.
PRINTDATE
The date/time the report is generated.
REF
Converted to a standard hyperlink.
SECTION
Only use number formatting codes listed above.
SECTIONPAGES
Only use number formatting codes listed above.
SUBJECT
Will use the value from Report. Subject if set; if not set, it will use the value in the template properties.
SYMBOL
Converted to the specified character.
TITLE
Will use the value from Report. Title if set; if not set, it will use the value in the template properties.
TOC
Ignores \a, \b, \c, \d, \f, \s, \u, \w, \x, and \z. For \n ignores the level range.
XE
Only uses the \b, \i, and \t codes.

Fields written to DOCX reports, but not passed to other report output formats

The following fields are blindly written to DOCX reports but are not passed to any other report output formats:

Field Windward Output
Document Automation
COMPARE, DOCVARIABLE, GOTOBUTTON, IF, MACROBUTTON, PRINT
Equations and Formulas
=formula, ADVANCE, EQ
Index and Tables
RD, TA, TC, TOA
Links and References
INCLUDEPICTURE, INCLUDETEXT, LINK

Fields written to all output formats

The following fields are blindly written to all output formats. For formats other than DOCX the result text of the field is written.

Field Windward Output
Date and Time
CREATEDATE, DATE, EDITTIME, SAVEDATE, TIME
Document Information
AUTHOR, COMMENTS, DOCPROPERTY, FILENAME, FILESIZE*, INFO, LASTSAVEDBY, NUMCHARS*, NUMWORDS*, TEMPLATE
Links and References
AUTOTEXT, AUTOTEXTLIST**, BIBLIOGRAPHY , CITATION, NOTEREF, QUOTE, STYLEREF
Mail Merge
ADDRESSBLOCK, ASK, BARCODE, COMPARE, DATABASE, FILLIN, GREETINGLINE, IF, MERGEFIELD, MERGEREC, MERGESEQ, NEXT, NEXTIF, SET, SKIPIF
Numbering
AUTONUM, AUTONUMLGL, AUTONUMOUT, LISTNUM, REVNUM

FILESIZE, NUMCHARS, and NUMWORDS should logically be the values of the generated report. However, calculating these is expensive and no one needs them so for performance reasons, these will be the values for the template, not the report.

** AUTOTEXTLIST is normally used for Windward tags. But if it does not contain a tag, then it is passed across blindly.

Embedded Object Limitations

An embedded object in an Office document requires the program that embedded the object to be able to edit or display that object. An object can be from any program and writing a renderer for each program would be an infinite task. 

Microsoft realized that no program could write a renderer for every type of embedded object, so every embedded object contains a bitmap of the last time the object was rendered in Office. This bitmap is what is used by applications instead of the filetype of the app that created the object.


Windward does the following:

  1. For DOCX -> DOCX and XLSX -> XLSX, Windward copies the object across as the object element. In the generated report it will be the same object. 
  2. XLSX is only supported for Excel 2010 and later (Excel 2007 stores the metafile in a very convoluted way).
  3. For all other cases it uses the embedded bitmap and displays that bitmap for the object in the output.

 

This generally works exactly as you want. But there are two limitations to this approach:

  1. If the embedded object uses live data, it will not re-render based on the latest data when the report is generated. It will be the render from the last time Office caused the object to render.
  2. When you zoom in on a report, the bitmap for the object has limited resolution and when zooming past that limit, the image will look pixelated.

SmartArt and Shapes Limitations

Shapes as object or elements

Windward supports the output of Shapes and Smart Art when added as elements to a document. 

 

Version 15  

Version 15 includes limited support of MS Office's native Shapes and Smart Art. Tags can be placed inside Shapes and Smart Art and will output as follows:

  • DOCX to DOCX - Fully Supported
  • DOCX to PDF - Limited functionality
  • DOCX - HTML - Unsupported

Version 14 and earlier

Smart Art and Shapes are not supported for use with Designer Tags.  This means that Tags cannot be placed inside Shapes or Smart Art.  

Partially Supported

  • Bookmarks - Standard bookmarks are supported. Column and custom XML bookmarks are not supported.
  • Hyperlinks - Links are supported but the history, target, and tooltip are ignored.

Not Supported

  • <w:cr/> carriage return command. Word never uses it.
  • Controls (tied to VML objects).
  • Date and time blocks (short and long) - Word never uses them.
  • Movies. (Windward has partial support for objects which can include a movie. But it does not support the explicit movie command.)
  • Page number blocks (we do support page numbers using the PAGE field).
  • VML (drawing) objects. VML has been deprecated and Word now uses Shapes and Smart Art drawing objects instead.
  • Embedded objects (Excel Spreadsheets, Visio Diagrams)
  • Web-only markers.

Paragraph Properties

Fully Supported

  • Bi-directional (bidi) settings
  • Contextual spacing (ignore spacing between paragraphs with identical properties)
  • Keep paragraphs together
  • Keep paragraph with next
  • List and outline numbering
  • Page break before paragraph
  • Style (see style limits)
  • Widows and orphans

Fully Supported DOCX -> DOCX; Partially Supported DOCX -> Other

  • Alignment: support left, right, center, justify for all output. Other alignments supported for DOCX output only (and set to left for non DOCX).
  • Background: patterns are supported for DOCX output only. All other settings supported for all output formats.
  • Borders: fancy borders are DOCX output only. All other border settings supported for all output.
  • Tabs: bar and decimal tabs supported for DOCX output only. All other settings supported for all output formats.

Partially Supported

  • Indents: position settings are supported for all output formats. Character indents (this are rarely used) are ignored.
  • Line and paragraph spacing: settings in absolute units are supported for all output. Autospacing and settings in-line units (these are rarely used) not supported.

Supported DOCX -> DOCX Only

  • Mirror indents
  • Text alignment (non DOCX uses baseline alignment)
  • Textbox wrapping

Not Supported

  • Autospace
  • Frames (note: Windward does support textboxes)
  • Grids - adjust, align to, etc.
  • Line and paragraph numbering
  • Punctuation rules - top line and overflow
  • Text flow direction (Windward always uses left to right (or bidi), top to bottom)
  • Typography rules (this is mostly for Asian text)
  • Word wrap off

Text Run Properties

Fully Supported

  • Bold
  • Capital (regular and small caps)
  • Color
  • Fonts (DOCX defines 4 fonts for each run that are used based on the character set.)
  • Font size
  • Hidden text
  • Highlight
  • Italics
  • Language setting
  • Right to Left (RTL) and bi-directional (bidi) settings
  • Script (ASCII, high-ANSI, complex, and east-Asia)
  • Shading and highlighting (highlighting is converted to shading)
  • Strikethrough (single and double)
  • Style (see style limits).
  • Subscript and superscript.
  • Vertical position of text

Fully Supported DOCX -> DOCX; Partially Supported DOCX -> Other

Underline: for non-DOCX output Windward supports single, double, thick and words only.

Supported DOCX -> DOCX Only

  • Character spacing adjustment
  • Character effects: emboss, imprint, outline and shadow
  • Expanded and compressed text
  • Fit text to run width
  • Kerning 

Not Supported

  • Animated text effects
  • East Asian typography settings
  • Math (Office Open XML Math)
  • Snap to grid

Lists: Bulleted and Numbered

Fully Supported

  • Legal numbering
  • Linked numbering styles
  • Overriding settings
  • Paragraph properties (as defined here)
  • Re-start numbering
  • Start numbering at
  • Styles (as defined here)
  • Suffix placed between bullet and start of paragraph text
  • Text formats for bullet/number
  • Text run properties (as defined here)

Fully Supported DOCX -> DOCX; Partially Supported DOCX -> Other

Alignment: Windward supports left, right, center, and justify for all output. Other alignments are supported for DOCX output only (and set to left for non DOCX).

Not Supported

Bitmap bullets

Table Limitations

Table and Cell Width

Microsoft does not specify how it determines the width of each column when a table is set to auto-fit. (It's possible no one at Microsoft even knows what Word is truly doing.) So Windward has an auto-fit algorithm that does a good job. But it will not match what Microsoft does in many cases. Auto-fit will be different.

For specified (non auto-fit) widths, Windward will match Word. 

Table Properties

Absolute positioning of tables and images is not supported. See Template Best Practices for more information.

Fully Supported

  • Bi-directional setting
  • Cell margins
  • Conditional formatting (first/last row/column, banding, etc.)
  • Cell spacing
  • Floating positioning
  • Indent (left margin)
  • Style

Fully Supported DOCX -> DOCX, Partially Supported DOCX -> Other

  • Alignment: Windward supports left, right, center, justify for all output. Other alignments supported for DOCX output only (and set to left for non DOCX).
  • Background: patterns are supported for DOCX output only. All other settings supported for all output formats.
  • Borders: fancy borders are supported for DOCX output only. All other border settings supported for all output.

Supported DOCX -> DOCX Only

  • Table overlap is allowed. For other outputs overlap is always allowed.
  • If a table is within newspaper columns, it cannot break across columns for paged (PDF, Printer, etc.) output.

Row Properties

Fully Supported

  • Cannot split a row across pages
  • Columns before and after the row (a row does not extend across the entire table)
  • Repeat row on every new page
  • Table height
  • Width before and after the row (a row does not extend across the entire table)

Fully Supported DOCX -> DOCX, Partially Supported DOCX -> Other

Alignment: Windward supports left, right, center, justify for all output. Other alignments supported for DOCX output only (and set to left for non DOCX).

Supported DOCX -> DOCX Only

Cell spacing  

Cell Properties

Fully Supported

  • Cell Margins
  • Cell Width
  • Horizontally merged cells
  • Text direction
  • Vertical alignment
  • Vertically merged cells
  • Word wrap in cell turned on/off

Fully Supported DOCX -> DOCX, Partially Supported DOCX -> Other

  • Background: patterns are supported for DOCX output only. All other settings supported for all output formats.
  • Borders: fancy borders are supported for DOCX output only. All other border settings supported for all output.

Supported DOCX -> DOCX Only

Fit text within cell

Cell Content

Section Limitations

Fully Supported

  • Bi-directional support
  • Headers and footers.
  • Page margins
  • Paper source (for printers)

Fully Supported DOCX -> DOCX, Partially Supported DOCX -> Other

  • Multiple columns: the line separator between columns DOCX only, all other settings supported in all formats.
  • Page borders: fancy borders are supported for DOCX output only. All other border settings are supported for all output. Conditional display, offset, and order are not supported (even on DOCX).

Partially Supported

  • Page numbering: Windward only supports setting the page number for the first page of the section.
  • The Table of Contents can be inaccurate if you are importing templates (via Out Tag or Import Tag) or HTML.
  • Page size: height, width, and orientation are fully supported; printer code is not supported.

Supported DOCX -> DOCX Only

  • Line numbering
  • Text direction

Not Supported

  • Grid settings (for Asian typography)
  • Gutter on right side (RTL)
  • Printer settings
  • Vertical alignment (superscript/subscript). This is supported as a [text run property].

Style Limitations

Not Supported

  • Aliases
  • Auto redefine
  • E-mail style settings
  • Hidden
  • Locked
  • Next Style

Fully Supported Microsoft Word Versions

  • Word 2010
  • Word 2013
  • Word 2016
  • Word 2019

This list applies to Excel and PowerPoint as well


Note:  Windward Studios stops support of an Office Version 11 years after the Office Release

Miscellaneous Limitations

Images - DOCX --> DOCX is supported (as of v12)

  • Image location & size supported. Border always drawn as a solid line.
  • All image properties rendered in output such as 3-D transforms, fancy borders, shadows, etc. are copied to the output.
  • Transforms to the image itself are not copied to the output.
  • PDF Limitations. (For almost perfect PDF rendering, see How Do I Use Microsoft Office to Generate PDF Output in Report Designer?)
    • Images are copied from the template and the resolution in the PDF may not be as high quality. 

Restricting editing of the document

  • DOCX -> DOCX document marked No changes (read only). DOCX -> DOCX - [all additional restrictions supported]
  • No support for:
    • Autoshapes
    • customXml
    • Math (Office Open XML Math). We support equations created using the old equation editor which saves them as an OLE object (pre DOCX), but not equations saved as XML Math.

0 Comments

Add your comment

E-Mail me when someone replies to this comment