布局设计 layout-design
XFA表单模板或XDP是用于以下项目的模板:
XDP是在AdobeForms Designer中设计的。 本文详细介绍了如何设计您的XDP以创建有效的对应/交互式通信,例如,在何处使用表单字段或目标区域,以及在何时使用布局片段。
为信件或交互式通信的打印渠道创建布局 creating-a-layout-for-letters-or-for-interactive-communications-print-channel
布局定义交互式通信的信件/打印渠道的图形布局。 布局可包含典型的表单字段,如“Address”和“Reference Number”。 它还包含表示目标区域的空子表单。 在表单设计器中创建布局,完成后,应用程序专家会将其上传到AEM服务器。 从那里,您可以在创建交互式通信的通信模板或打印渠道时选择布局。
请按照以下步骤为交互式通信的信件/打印渠道创建布局:
-
分析布局并确定所有页面中重复的内容;通常页眉和页脚适合此类别。 此内容放置在布局的母版页上。 其余内容将转至布局的正文页面。 在保单夹克中,徽标和公司地址可以添加到母版页眉和页脚。 例如,取消通知使用相同的布局。
-
设计正文页面时,将页面内容划分为多个部分。 每个部分都设计为嵌入到布局本身的子表单或片段布局。 如果节包含表,则将节建模为布局片段。
-
布局可按如下方式设计:
- 将每个节设置为包含该节所有元素的单独子表单。
- 将每个部分子表单设为相同父子表单的子表单。 如果前几节中合并了大数据,则父子表单的布局设置为流动,以允许各节向下移动。
- 区段主要居住地也可以跨其他布局重复使用。 创建为片段布局。
- 部分其他感兴趣的详细信息仅包含两个元素,它们彼此放在下方,可以包含大型数据,并且按流程设计。
- 其他部分包含特定位置的元素,因此它们被设计为位置布局。
- 如果分区包含位于特定位置的元素,并且这些元素包含大量数据,则将分区划分为子表单。 然后排列子表单以获得所需的行为。
- 对于“主要居所”部分,请添加占位符目标区域。 在设计信件/交互式通信时,此占位符绑定到片段主要居所。
- 将布局(以及使用布局的片段,如果有)上传到AEM Forms服务器。
在XDP模板中使用子表单 usesubformxdp
分析创建交互式通信所需的布局后,您可以使用Forms Designer在XDP模板中创建子表单。 XDP模板中使用的空白子表单组件导致在交互式通信的打印渠道中显示目标区域。
执行以下步骤以在XDP模板中使用子表单:
-
打开Forms Designer,选择 文件 > 新建 > 使用空白表单,选择 下一步,然后选择 完成 以打开用于创建模板的表单。
确保从 窗口 菜单选择 对象库 和 对象 选项。
-
将 子表单 组件从 对象库 拖放到表单中。
-
选择子表单以在右窗格的 对象 窗口中显示子表单的选项。
-
选择 子表单 选项卡,然后从 内容 下拉列表中选择 流式。 拖动子表单的左端点以调整长度。
-
在 绑定 选项卡中:
- 在 名称 字段中指定子表单的名称。
- 从 数据绑定 下拉列表中选择 无数据绑定。
-
同样,从左窗格中选择根子表单。
-
选择 子表单 选项卡,然后从 内容 下拉列表中选择 流式。 在 绑定 选项卡中:
- 在 名称 字段中指定子表单的名称。
- 从 数据绑定 下拉列表中选择 无数据绑定。
重复步骤2-5以向XDP模板添加更多子表单。 仅在创作交互式通信时将文本、文档片段、图像和图表添加到目标区域。
-
选择 文件 > 另存为,将文件保存在本地文件系统中:
-
导航到保存文件的位置,并指定XDP模板的名称。
-
从 保存类型 下拉列表中选择 .xdp。
-
选择 保存。
-
在XDP模板中使用图像字段组件 use-image-field-component-in-an-xdp-template
使用XDP模板中的图像字段或子表单组件,并在创作交互式通信时添加图像。
执行以下步骤以在XDP模板中使用图像字段组件:
-
将 图像字段 组件从 对象库 拖放到表单中。
-
选择子表单以在右窗格的 对象 窗口中显示子表单的选项。
-
在 绑定 选项卡中:
- 在 名称 字段中指定图像字段的名称。
- 从 数据绑定 下拉列表中选择 无数据绑定。
为布局片段创建XDP模板 xdplayoutfragments
使用Forms Designer中的表组件创建布局片段,然后在创作交互式通信的打印渠道时使用它们创建表。 使用布局片段创建表可确保在使用打印渠道自动生成Web渠道时,表内容保持结构。
执行以下步骤,使用Forms Designer在XDP模板中使用表组件:
-
将 Table 组件从 对象库 拖放到窗体中。
-
在 插入表 对话框中:
- 指定表的行数和列数。
- 选中 Include Header Row in Table 复选框可包含表头行。
- 选择 确定。
-
在表名称旁边的左窗格中选择 +,右键单击标题和其他行中包含的单元格名称,然后选择 重命名对象 以重命名表单元格。
-
单击 设计视图 中的表标题文本字段并重命名它们。
-
将 文本字段 组件从 对象库 拖放到 设计视图 中的每个表单元格中。 执行此步骤,以便在创作交互式通信时能够将表单元格与表单数据模型对象绑定。
-
从左窗格中选择行的名称,然后选择 对象 > 绑定 > 为每个数据项重复行。 执行此步骤可以确保,如果此行的表单元格与集合类型的表单数据模型对象之间创建了绑定,则会自动为数据库中可用的每个数据项重复表行。
在表单元格中输入文本,或仅在创作交互式通信时创建与表单数据模型对象的绑定。
-
选择 文件 > 另存为,将文件保存在本地文件系统中:
-
导航到保存文件的位置,并指定XDP模板的名称。
-
从 保存类型 下拉列表中选择 .xdp。
-
选择 保存。
-
将XDP模板上传到AEM Forms服务器 uploadxdptemplate
使用Forms Designer创建XDP模板后,必须将其上传到AEM Forms服务器,以便在创建交互式通信时使用该模板。
- 选择 Forms > Forms和文档。
- 选择 创建 > 文件上传。
- 导航到XDP模板在本地文件系统中的位置,并选择 打开 以将XDP模板导入AEM Forms服务器。
使用架构 using-schema
您可以在布局或布局片段中使用架构,但不是必需的。 如果使用架构,请确保满足以下条件:
- 布局和字母/交互式通信中使用的所有片段布局使用与字母/交互式通信相同的架构。
- 需要使用数据填充的所有字段都将绑定到架构。
创建可关联字段 creating-relatable-fields
默认情况下,所有字段都被视为与各种其他数据源相关。 如果布局包含任何与数据源不相关的字段,请将该字段命名为“_int”(内部)后缀;例如pageCount_int。
可关联字段必须:
- 是XFA <字段>或<exclGroup>
- 具有XFA绑定引用
- 如果是<excelGroup>,则必须至少具有一个子单选按钮字段;否则,无法确定其值类型
可关联字段必须:
- 有一个名称
可关联字段不得:
- 在其名称中包含“_int”后缀
- 已将绑定设置为“none”
- 是<exclGroup>元素的子级
只要可关联字段符合上述标准,它就可以在布局中的任何位置和任何嵌套深度。 可以在母版页中使用可关联字段。
字段的布局配置比目标区域子表单更灵活;但它们都与单个值类型相关联。 您可以使字段变大,或将其设置为固定的宽度和高度,等等。 已解析的模块或规则结果将被推送到字段中。
决定何时使用子表单和文本字段 deciding-when-to-use-subforms-and-text-nbsp-fields
如果要以自上而下的垂直流布局捕获多个模块内容(多个段落或图像),请使用子表单。 您的布局必须处理子表单高度增大以适应其内容这一事实。 如果不能确定与子表单/目标关联的内容长度永远不会超过为版面中的子表单保留的空间,请创建子表单作为流式子表单容器中的子表单。 此过程可确保子表单下面的布局对象随着子表单的增长向下流动。
如果要将模块数据或数据字典元素数据捕获到布局的架构中(因为字段绑定到数据),或要在母版页上显示模块内容,请使用字段。 请记住,母版页中的内容不能与正文页面内容一起流动,因此您必须确保将图像字段用作页眉徽标。 此表提供了更多用于确定何时在布局中使用子表单或字段的标准。
设置重复要素 setting-up-repetitive-elements
当诸如贵组织的徽标和地址之类的元素出现在信件/交互式通信的所有页面上时,请为这些元素创建表单字段并将其放在母版页上。 为这些字段使用名称(字段名称)绑定。
指定服务器渲染格式 specify-the-server-nbsp-render-format
使用布局的服务器渲染格式生成动态XML表单;否则,无法正确渲染基于此布局的任何字母/交互式通信。 默认情况下,Forms Designer中的服务器渲染格式设置为动态XML表单。 要确保使用正确的格式,请执行以下操作:
- 在Designer中,单击 文件 > 表单属性 > 默认值,并确保PDF渲染/格式设置设置为动态XML表单。