Professional Documents
Culture Documents
Variable formatted flow has its content and formatting controlled by a variable.
2. From the Flows Layout Properties, select Variable formatted or Overflowable variable formatted as the flow type.
3. Assign a (string) variable to the flow that will control the formatting.
It is recommended to use the overflowable variable formatted flow for relatively few combinations of different flow contents
because the whole flow content is kept in memory, which means that:
● for more complex flows you may run out of memory before the job is printed
● on the other hand, it can be faster than Variable formatted flow in case of relatively few combinations of flow
contents
Both overflowable variable formatted and variable formatted flows have the following Layout Properties window:
Options Description
Visible flow width Defines the width of the visible space of the flow in the Layout Area. This option is general for all
types of flows; see the detailed description in Flow Layout Properties section.
6 Design Input Modules | 578
6.3 Layout Module
Lock for Docx Sets the lock for editing the flow content in the produced DOCX file. This option is general for all types
of flows; see the detailed description in Flow Layout Properties section.
Variable Allows you to select a variable controlling the content and formatting. In other words, the variable delivers
text enriched with formatting tags.
Inherit para/text styles If this option is not checked or the variable flow is the first flow in flow area, Normal style is
used.
If checked, the paragraph and text style can be inherited from the previous flow if there is any. For more details see
also Paragraph Styles section.
Syntax
The content and formatting of the flow is defined by a markup language similar to HTML or XML. Commands (tags,
markups) are enclosed in angle brackets (e.g. <b> for bold) and they are intermixed with the text content.
Hello <b>world</b>!
will be printed as
Hello world!
NOTE
● Command and parameter names are case sensitive and use lower case letters. The only exception is the
pageIndex parameter of the <image> command.
● Special characters, like angle brackets, have to be defined with special keywords:
● Boolean parameters can have the following values: 0, 1, F, T, FALSE, TRUE, N, Y, NO, YES. They
are not case sensitive.
See Commands Overview for the list of available commands and the Commands Reference section for a comprehensive
description of commands and their parameters.
Commands Overview
Paragraphs
Text styles
Tables
Other objects
Conditionals
This is an example of using an inline condition. If the page index equals zero, "First condition common text" will
be printed. If the page index equals one, "Second condition common text" will be printed. Otherwise "Third
condition common text" will be printed.
<if inline="[condition]"><fontsize=10pt>
<else><font size=12pt><var DATA.Value>
because <var DATA.Value> must come after each <if> or <else> statement. Thus the correct code is:
Commands Reference
<p>
This command starts a new paragraph and defines its properties. See also Paragraph Style Layout Properties panel.
EXAMPLE
● You can use an existing paragraph style and override some attributes:
Parameters
The name of the paragraph style that will be used for this paragraph, e.g. MyParaStyle1 or ParaFamily1.Style2.
usedefaultts (bool)
To be used in combination with the name parameter. If set to YES, the default text style of the paragraph style is used.
Otherwise, the text style of the previous paragraph is kept.
alignment (keyword)
Text alignment (optional). The permitted values are left, right, center, justifyleft, justifyright, justifycenter,
justifyblock.
Determines the space on the left side of the paragraph. This setting applies to all lines of the paragraph.
Determines the space on the right side of the paragraph. This setting applies to all lines of the paragraph.
Determines the space on the left side of the first line of the paragraph.
spacebeforeonfirst (bool)
Determines, if the value set in the spacebefore parameter will be applied when the current paragraph is the first
paragraph in a flow area. When set to the default setting NO, the paragraph always starts at the top of the flow area
regardless of the setting made by the spacebefore parameter. When YES is set, the value set by the spacebefore
parameter is always applied.
NOTE When a paragraph overflows into a new flow area, this setting will also determine the position of
the first line of the paragraph in the new flow area.
linespacingtype (keyword)
Sets the space between the lines of the text. Permitted values are additional, atleast, exact, multipleof.
Specifies the value for line spacing (see the linespacingtype parameter above).
ignoreemptylines (bool)
flowbreakbefore (keyword)
Sets the position of the paragraph to which it is applied. Permitted values are no, flowarea, page, column.
flowbreakafter (keyword)
Sets the position of the following paragraph. Permitted values are no, flowarea, page, column.
keeplinestogether (bool)
Determines whether a paragraph may overflow from one flow area to another.
keepwithnextparagraph (bool)
If set to YES, the last line of the paragraph will always be displayed in the same flow area as the first line of the fol-
lowing paragraph.
donotwrap (bool)
6 Design Input Modules | 582
6.3 Layout Module
Determines whether or not the text will be wrapped. If set to YES, text will not wrap when reaching the border of
the flow area in which it is contained.
The name of the border style to be used for this paragraph, e.g. MyBorderStyle or BorderFamily1.Style4
connectborders (bool)
borderwithlinegap (bool)
hyphenate (bool)
Sets whether hyphenation within the text of the paragraph will or will not be permitted.
hyphminleft (int)
Sets the minimum number of characters that will remain before the hyphen.
hyphminright (int)
Sets the minimum number of characters you want to carry over to a new line after the hyphen.
hyphmaxconsecutive (int)
Defines the maximum number of consecutively following lines ending with hyphens.
<t>
This command applies a text style on the text content. See also Text Style Layout Properties panel.
EXAMPLE
● You can use an existing text style and override some attributes:
Parameters
affectsupersubscriptstrikethrough (bool)
If set to YES, superscript/subscript will be struck through independently from the remaining text (discontinuous un-
derline). If set to NO, superscript/subscript will be will be struck through as if it was a normal text (continuous underline).
affectsupersubscriptunderline (bool)
If set to YES, superscript/subscript will be underlined independently from the remaining text (discontinuous underline).
If set to NO, superscript/subscript will be will be underlined as if it was a normal text (continuous underline).
afpcodec (string)
afpcodepage (location)
bold (bool)
The name of the border style that will be used for the text, e.g. MyBorderStyle or BorderFamily1.Style4
borderwithlinegap (bool)
Determines whether the border will be extended slightly below the text.
cap (keyword)
Controls the corners of the outline when two line segments intersect. Permitted values are butt, round, square.
color (RGB)
connectborders (bool)
The name of the fill style that will be used for the text, e.g. MyFillStyle or MyFillFamily.Style2
fontlocation (location)
horizontalscale (percent)
Horizontally scales the text by the specified percentage, e.g. <t horizontalscale=150>Text
italic (bool)
join (keyword)
Controls the shape of the intersection points of the outline. Permitted values are mitter, round, bevel.
kerning (bool)
language (string)
Determines the alphabet/characters that will be used in the document. This needs to be set in order to hyphenate
the text.
miter (double)
Controls the effect of the Join setting when the Miter outline join is selected.
The name of the text style that will be used, e.g. MyTextStyle or MyTextFamily.Style2.
The name of the fill style that will be used for outlines of this text, e.g. MyFillStyle or MyFillFamily.Style2
Determines the width of the outline of the text, if the fill color is different from the outline color.
smallcap (bool)
If set to YES, the text will be written in small caps. Small caps means that lowercase letters are capitalized, but are
slightly smaller than uppercase letters.
smallcapsize (percent)
strikethrough (bool)
strikethroughoffset (percent)
6 Design Input Modules | 585
6.3 Layout Module
strikethroughwidth (percent)
subscript (bool)
subscriptoffset (percent)
superscript (bool)
superscriptoffset (percent)
supersubscriptsize (percent)
underline (bool)
underlineoffset (percent)
underlinewidth (percent)
urltarget (string)
Sets an URL link, which will be active in the output files in PDF, TNO, HTML, and HTML Simple format.
NOTE For HTML and HTML Simple outputs the URL link has to contain the http:// prefix, otherwise the link
may not work.
<font>
This command controls which font will be used for the text content. It overrides font settings from the active text style.
EXAMPLE
Parameters
The name of the font that will be used, e.g. Arial or MyFonts.BoldFont.
fontlocation (location)
afpcodec (string)
afpcodepage (location)
color (RGB)
<b>
This command overrides the active text style and turns on the Bold option.
EXAMPLE
<i>
This command overrides the active text style and turns on the Italic option.
<u>
This command overrides the active text style and turns on the Underline option.
<s>, <strike>
These commands overrides the active text style and turns on the Strikethrough option.
<sup>
This command overrides the active text style and turns on the Superscript option.
<sub>
This command overrides the active text style and turns on the Subscript option.
<smallcap>
This command overrides the active text style and turns on the Smallcap option.
6 Design Input Modules | 587
6.3 Layout Module
<if>
This command begins a conditional block, defines the condition and also the content, which will be used, if the condition
is true.
EXAMPLE
Parameters
Name of the boolean variable which will be evaluated as the condition, e.g. SYS.Overflow
inline (string)
Defines a flow, the content of which will be inserted into the active flow, if the condition is true.
EXAMPLE
<else>
This command contains a conditional block and defines the content, which will be used, if the condition was not true.
EXAMPLE
Parameters
Defines a flow, the content of which will be inserted into the active flow.
EXAMPLE
<else flow="PageFlow">
6 Design Input Modules | 588
6.3 Layout Module
<elseif>
This command is a shortcut for <else><if>.
EXAMPLE
Parameters
Name of the boolean variable which will be evaluated as the condition, e.g. SYS.Overflow
inline (string)
Defines a flow, the content of which will be inserted into the active flow, if the condition is true.
EXAMPLE
<table>
This command inserts a table into the flow. See also Tables Layout Properties.
EXAMPLE
<table name=Table1>
Parameters
Name of the specific border style that you want to apply on the selected table.
alignment (keyword)
6 Design Input Modules | 589
6.3 Layout Module
Selects the horizontal alignment of the table within the flow area where it is inserted. Permitted values are left,
right, center.
NOTE The effect of this setting is only visible when you set percentwidth to a value below 100%.
percentwidth (double)
The relationship between the width of the table and the width of the flow area in which it is inserted.
Sets the minimum width of the table. This will override the percent width, if there is a conflict.
Sets the minimum space between the table and the left border of the flow area.
Sets the minimum space between the table and the top border of the flow area.
Sets the minimum space between the table and the right border of the flow area.
Sets the minimum space between the table and the bottom border of the flow area.
Sets the size ratio of the columns in the table. When a table is created, all columns have the same width, so the values
will always be the same for each column. Default settings are calculated in the following way: 1 is divided by the
number of columns.
EXAMPLE
Sets the minimum widths of the columns. These will override the percent widths if there is a conflict. The default
setting is 1mm.
6 Design Input Modules | 590
6.3 Layout Module
EXAMPLE
<row>
This command inserts a row into the table. See also Row Set Layout Properties Orphan/Widow Tab.
EXAMPLE
<table><row name=Row1>
Parameters
Name of the variable which controls whether the row set is kept with the previous one, i.e. these row sets are not
separated.
Name of the variable which controls whether the row set is kept with the following one, i.e. these row sets are not
separated.
Name of the variable which controls whether the table is broken (i.e. continues in the next flow area) before the se-
lected row set.
Name of the variable which controls whether the table is broken (i.e. continues in the next flow area) after the selected
row set.
<cell>
This command inserts a cell into the row. See also Cells.
6 Design Input Modules | 591
6.3 Layout Module
EXAMPLE
<table><row><cell name=Row1>
Parameters
Name of the specific border style that you want to apply to the cell.
alignment (keyword)
Selects the vertical alignment of the cell content. Permitted values are top, bottom, center.
Sets the minimum width of the cell. This will override the percent width if there is a conflict.
Forces a constant height for the cell. Use this option to increase the speed of table processing.
spanleft (bool)
Select this option to merge this cell with the cell to the left.
spanup (bool)
Select this option to merge this cell with the cell above.
alwaysprocess (bool)
Allows you to determine whether or not will the cell be formatted for wrapping text. If the text in the cell will not
wrap, it is recommended to leave the default setting NO for optimal production speed.
flowtonextpage (bool)
When set, the content of the cell will be allowed to overflow to another flow area.
6 Design Input Modules | 592
6.3 Layout Module
<headerfooter>
This command allows you to create complex tables with header and footer rows.
EXAMPLE
<table>
<headerfooter><rowset type=header><row><cell>header
<rowset type=body><row><cell>body
<rowset>
This command allows you to create a set of rows (e.g. header or footer).
EXAMPLE
<table>
<headerfooter><rowset type=header><row><cell>header
<rowset type=body><row><cell>body
Parameters
type (keyword)
Sets the type of the rowset; permitted values are header, firstheader, contheader, body, contfooter,
lastfooter, footer.
<image>
This command inserts an image into the flow.
EXAMPLE
<image name=Image1>
<image path="c:/image.png">
Parameters
path (string)
pageIndex (int)
6 Design Input Modules | 593
6.3 Layout Module
Selects the page of the image that you want to be shown. This is intended for multi page images, such as PDF docu-
ments.
colortype (keyword)
native (Boolean)
nativeInOverlay (Boolean)
Creates a separate overlay for the image to be processed in (if set to true), e.g. <image path="MyImage.pdf" nat-
iveInOverlay=true>.
This also enables native loading of the image, i.e. you don't need to specify the native parameter.
TIP If loaded natively, you can use an image file with its own variables, in the same way as if the Use dynamic
variables option of the Image Layout Properties panel was applied. This feature may be of use, e.g. if you insert
a PDF file containing variables.
To do so, use the following script: <image variable=ImageName dynamic=true>, where the ImageName
variable contains the path to the image file.
<flowobject>
This command inserts an element into the flow.
EXAMPLE
<flowobject name="Element1">
Parameters
<flow>
This command inserts a flow into the current flow.
6 Design Input Modules | 594
6.3 Layout Module
EXAMPLE
<flow name="Flow1">
Parameters
location (string)
EXAMPLE
<variable>
This command inserts the content of a variable into the flow.
EXAMPLE
<br>
This command inserts a line break into the flow.
EXAMPLE
Line1<br>Line2
Simple text
Color changes
Font changes
Paragraph styles
Text style
This is normal.
<t fill=RedFill border=BlueBorderStyle>This is another text style.
<t name=MyTextStyle>This is an existing text style
6 Design Input Modules | 596
6.3 Layout Module
Table
<table><row><cell>aaa<cell>bbb<row><cell>ccc<cell>ddd
Table
<table>
<row> <cell border=TableBorder>aaa<cell border=TableBorder>bbb
<row> <cell border=TableBorder>
<table>
<row><cell>xxx<cell>yyy
<row><cell>zzz
</table>
<cell border=TableBorder>ddd
We invite you, as one of our most honored customers, dear Mr. David Smith, to join us on a special event in the
Swiss Mountains, free of any cost for you. This will become an unforgettable...
Conditional flow
Conditional flow
Returns the result (if the condition "PageIndex equals 0" is met ):
Special characters
This is <inside greater than, less than signs> and <b>it works</b> like this.
This is <inside greater than, less than signs> and it works like this.
Flows
Template Merger Module
Language flows and Language texts are for creating versions documents or electronic messages in different languages,
allowing for switches to be made between prepared translations of a document's content. The language that is to be
used can be determined by any variable that is suitable for this purpose, e.g. a country code from an address that is read
from an input data file.
EXAMPLE The below screenshot represents a new flow area which comprises Flow 1 with some text content.
After converting the flow to a language flow, the user added two new languages included it the data file - FR for
French and ES for Spanish. Flow 1 which is selected by language now contains three simple flows: Flow 1_ for