WordTemplate can insert certain types of documents into docx files by adding the "document(format)" modifier to the merge field, where format is one of the following:
- rtf - The binary data in the data source will be inserted as an rtf document, e.g.
- html - The binary data in the data source will be inserted as an html document, e.g.
To add the modifier:
- Create or open a WordWriter template (for instructions, see Creating a WordWriter Template).
- Add the "document(rtf)" or "document(html)" modifier in parentheses to the merge field in which you want to insert the document. For example, change «Product.Doc» to «Product.Doc(document(rtf))»
When inserting an embedded document, the document must go at the same level as the paragraphs, to align the template file with the output, document fields should be put in their own paragraph:
If there is content on both sides, paragraph breaks will be inserted on either side of the document:
Having only text before or only text after, will result in a blank paragraph on the other side, such as:
Rtf and html documents maintain their own formatting, so if there is some bold text, or a right-aligned paragraph in the document it will maintain that formatting. This includes the default font for the document, which may not match the default font of the template.
Like regular merge fields document fields can be in an if field's optional text to display, but, because WordTemplate does not parse the contents of the document, document fields in the comparison portion of if fields are not supported, when UpdateIfFields is set to true.
Because inserting an embedded document is not the same as inserting a character run, some formatting and document structures do not support document fields:
- The displayed output of another field, however if it is in the field codes it will be handled like other fields.
- Phonetic guides
- Structured document tags (these are the items created when quick parts are inserted, and have the little tab, e.g. "Title").