XFA Specification
Chapter 7, Layout for Growable Objects
219
Non-null
attribute
h
w
Axis along
which
container
grows
Y
Explanation
If
w
is specified (non-null) and
h
is null, the container is vertically
growable and horizontally fixed. Any
minW/maxW
values are irrelevant.
Examples of containers that are growable only in the X axis follows:
<field name="A" w="2in" minH=".5in" maxH="3in"/>
<field name="A" w="2in" />
<subform name="B" w="6in" minH="1in" maxH="5in"/>
X and Y
If neither
h
nor
w
is specified, the container is growable on both axes.
Example of containers that are growable in both the X and Y axes follows:
<field name="A" minH=".5in" maxH="3in"
minW="1in" maxW="3in"/>
<field name="A"/>
For those draws and fields that do not support the notion of growableness (such as
arcs
and
rects
) the
minW
and/or
minH
are used in the absence of a specified
w
or
h
attribute.
Forbidden condition: value of -1 not allowed for minH, maxH, minW, or maxW
Specifying -1 as a value of w/h/minH/maxH/minW/maxW is undefined. It does not indicate growableness
or infinity.
Forbidden condition: maxH/W must be null or greater than or equal to minH/W
If both minimum and maximum widths are supplied for the same element the minimum width must be
smaller than or equal to the maximum width. Similarly if both minimum and maximum heights are
supplied for the same element the minimum height must be smaller than or equal to the maximum
height. However it is anticipated that layout processors will encounter some templates that are not
conforming in this way. In such a case the layout processor should emit a warning and swap the offending
maximum and minimum.
Warning condition: maxW/H should be null or non-zero
The following expression results in a zero-width container:
<field name="text_field" h="1in" maxW="0in"/>
Growth and the Box Model
Typically, a growable object grows or shrinks when the geographical size of its content changes. The
object responds to the size change by adjusting the size of its
nominal content region
to appropriately
enclose the content. As a result, this triggers a change in the container's
nominal extent,
to keep the box
model consistent. The change in nominal extent may cause the container's parent to adjust itself, possibly
changing its own size as well. Note that some of a container's graphical content may be outside the
nominal extent both before and after the size changes. It's up to the object to manage this in a way that is
intuitive for users of the object.
Home Index Bookmark Pages
Pages: Home Index All Pages