Sie sind auf Seite 1von 188

bc

Adobe Output Designer


Version 5.7

Developing Templates

Developing Templates
Edition 3.0, March 2009
2009 Adobe Systems Incorporated.
All rights reserved.
As of April 12, 2002, Accelio Corporation (formerly JetForm Corporation) was purchased by Adobe Systems Incorporated. As of that
date, any reference to JetForm or Accelio shall be deemed to refer to Adobe Systems Incorporated.
Technical information contained herein is subject to change without notice.
The Spelling portion of this product is based on Proximity
Linguistic Technology
THE PROXIMITY/Merriam-Webster Inc. LINGUIBASE
Copyright 1983, 1990
Merriam-Webster Inc.
Copyright 1983, 1990 All Rights Reserved
Proximity Technology Inc.
Portions 19951999 Access Softek, Inc. All rights reserved.
The use and copying of this product are subject to a license agreement. Any other use is prohibited. No part of this publication may
be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language in any form by any means without
the prior written consent of Adobe Systems Incorporated. Information in this publication is subject to change without notice and does
not represent a commitment on the part of the vendor. Any reference to company names, persons, or data in this documentation is
for demonstration purposes only and is not intended to refer to any actual organization, person, or data.
Adobe Systems Incorporated does not warrant that Adobe Output Designer will function properly in every hardware/software
environment.

Trademarks
Adobe, Reader, and PostScript are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States
and/or other countries.
Hewlett Packard and HP are registered trademarks of Hewlett-Packard Company.
Microsoft and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other
countries.
UNIX is a registered trademark in the United States and other countries, licensed exclusively through X/Open Company, Ltd.
All other product names are trademarks or registered trademarks of their respective trademark holders.

Contents
1

Introduction....................................................................................................... 8
Whats in this Guide?.........................................................................................................8
About Output Designer ......................................................................................................9
Integrating Output Designer into Your Solution...........................................................9
Central ..................................................................................................................9
Web Output Pak .................................................................................................10
Related Documentation ................................................................................................... 11
Output Designer Documentation............................................................................... 12
Central Documentation ............................................................................................. 12
Web Output Pak Documentation............................................................................... 13
About this Guide .............................................................................................................. 13

Exploring the Output Designer Workspace ................................................. 14


Elements of the Output Designer Window....................................................................... 15
Title Bar..................................................................................................................... 16
Menu Bar................................................................................................................... 16
Toolbar ......................................................................................................................16
Control Bar ................................................................................................................ 17
Tear-Offs ............................................................................................................ 17
Color ................................................................................................................... 20
Go To Page ........................................................................................................20
Page and Subform Name ...................................................................................20
Rulers and Ruler Guidelines ..................................................................................... 21
Grids.......................................................................................................................... 22
Page.......................................................................................................................... 22
Status Bar ................................................................................................................. 23
Toolbox ..................................................................................................................... 24
Drawing Tools..................................................................................................... 25
Graphics Tool ..................................................................................................... 26
Text Tools........................................................................................................... 26
Barcode Tool ...................................................................................................... 26
Selection Tools ................................................................................................... 27
Data Presentment Tools..................................................................................... 28
Customizing the Output Designer Workspace................................................................. 29
Customizing the Toolbar and Toolbox ...................................................................... 30
Managing Rulers and Grids ...................................................................................... 31
Using Guidelines ....................................................................................................... 31
Setting the View of the Template .............................................................................. 32
Specifying How to Display Elements on the Page .................................................... 33
Setting Drawing Options ........................................................................................... 34
Specifying File Locations ..........................................................................................35

Adobe Output Designer


Developing Templates

Contents

Enabling the Job Ticket Feature ............................................................................... 36


Additional Ways to Customize the Workspace ......................................................... 37

Basic Template Design .................................................................................. 38


What is an Electronic Template?..................................................................................... 38
Using Output Designer to Create Electronic Templates ........................................... 38
Design Phases ................................................................................................... 39
Templates as Part of a Larger Solution.....................................................................39
Using Templates with Central............................................................................. 40
Using Templates with Web Output Pak..............................................................40
Elements of a Template ............................................................................................ 41
Types of Template Designs ...................................................................................... 42
Static Templates.................................................................................................42
Dynamic Templates............................................................................................ 43
Designing a Static Template............................................................................................ 43
Steps to Successful Template Creation .................................................................... 44
Planning the Template .............................................................................................. 44
Analyzing the Requirements............................................................................... 44
Understanding the Type of Data......................................................................... 45
Use of Graphics.................................................................................................. 48
Creating the Static Template..................................................................................... 48
Specify the Presentment Target(s) .....................................................................48
Formatting the Template .................................................................................... 51
Drawing the Template ............................................................................................... 56
Working with Pages............................................................................................ 57
Techniques for Adding and Formatting Objects ................................................. 57
Adding Field Objects ..........................................................................................60
Adding Table Objects ......................................................................................... 68
Adding Text Objects ........................................................................................... 69
Adding Graphic Objects...................................................................................... 72
Ordering Fields ................................................................................................... 75
Testing Your Template Design.................................................................................. 76
Generate a Report.............................................................................................. 76
Test Your Template Design................................................................................ 77
Print Your Template Design without Data .......................................................... 79
Compiling a Template Design ...................................................................................80
Setting Default Compile Options ........................................................................ 80
Specifying the Compile Rules............................................................................. 84
The Compile Process ......................................................................................... 86
Deploying the Template ............................................................................................ 87

Special Fields.................................................................................................. 88
Global Fields.................................................................................................................... 88
Specifying a Global Field ..........................................................................................88
How the Output Agent Processes Global Fields ................................................89
Design Considerations ....................................................................................... 89
Using Global Data in an XML Data File .................................................................... 89
Fields in the Boilerplate ................................................................................................... 90

Adobe Output Designer


Developing Templates

Contents

Defining the Boilerplate Field .................................................................................... 90


Adding Boilerplate Fields to the Template.......................................................... 90
Modifying the Data File....................................................................................... 91
A Note About the Output of Boilerplate Fields.................................................... 91
Reserved Fields...............................................................................................................91
Reserved Field Names.............................................................................................. 91

Developing Dynamic Templates.................................................................... 94


Why Dynamic Templates?............................................................................................... 94
Subforms: Building-Blocks of a Dynamic Template .................................................. 95
How do Subforms Correspond to a Page?......................................................... 95
Matching the Data to the Subform...................................................................... 95
Planning a Dynamic Template......................................................................................... 96
Creating a Dynamic Template ......................................................................................... 96
Creating a Static Template........................................................................................ 97
Test the Static Template..................................................................................... 98
Blocking Off the Subforms ........................................................................................ 98
Creating the Subform ................................................................................................ 99
Locating a Specific Subform............................................................................. 100
Modifying Individual Objects in a Subform ....................................................... 100
Setting Subform Attributes ...................................................................................... 100
Specify the Subform Type ................................................................................ 101
Re-ordering Subforms ...................................................................................... 103
Understanding the Order of the Subforms........................................................ 104
Setting the Size and Position of a Subform ...................................................... 105
Controlling the Paging ...................................................................................... 106
Using Positioning Fields.......................................................................................... 107
How Positioning Fields Work............................................................................ 108
Creating Your Own Positioning Fields.............................................................. 108
Absolute Positioning of Subforms..................................................................... 109
Understanding the Foundation Page ...................................................................... 109
Designing Your Own Foundation Page ............................................................109
Additional Field Techniques .................................................................................... 110
Examining the Data................................................................................................. 111
Testing the Dynamic Template ............................................................................... 111
Template with Fields......................................................................................................112
Compiling the Dynamic Template ........................................................................... 114
Deploying the Dynamic Template ........................................................................... 115

Advanced Font Considerations................................................................... 116


Customizing Fonts......................................................................................................... 116
Using Soft Font Cartridges...................................................................................... 117
Types of Soft Font Cartridges........................................................................... 117
Font Mapping................................................................................................................. 120
Specifying the Font Mapping Options ..................................................................... 121
Font Mapping in the Production Environment ......................................................... 121
Symbol Sets for Windows Printers ................................................................................ 122
Double-byte Font Support For Label Printers................................................................ 122

Adobe Output Designer


Developing Templates

Contents

Additional Development Tools .................................................................... 123


JFBatch Utility................................................................................................................123
How JFBatch Works................................................................................................ 123
Using JFBatch......................................................................................................... 124
Template Object Library ................................................................................................ 124
Opening the Template Object Library ..................................................................... 124
Template Object Library Window ............................................................................ 125
Using the Template Object Library in Output Designer........................................... 125
Enabling the Template Object Library .............................................................. 126
Submitting Objects and Fields..........................................................................126
Retrieving Objects and Fields........................................................................... 126
Submitting Templates....................................................................................... 127
Retrieving Templates........................................................................................127
Managing the Template Object Library ...................................................................128
Generating Reports .......................................................................................... 129
Importing Templates into Output Designer.................................................................... 129
Schema Definition Files................................................................................................. 130
Using a Schema Definition in Output Designer....................................................... 130
Inserting Fields from a Schema Definition File ................................................. 130
User-Created Schema Definition File ............................................................... 132
BizTalk XML Files............................................................................................. 133

Job Tickets .................................................................................................... 134


How Job Tickets Work................................................................................................... 134
Creating a Job Ticket .............................................................................................. 135

Advanced Template Concepts .................................................................... 138


Processing a Dynamic Template................................................................................... 138
Rules for Processing a Dynamic Template ............................................................. 139
Understanding JFPREAMBLE and JFPREAMBLE_1 ...................................... 139
Overriding the Processing Rules in JFPREAMBLE_1...................................... 140
Which Preamble Takes Priority? ...................................................................... 141
Subform Processing................................................................................................ 142
Advanced Field Techniques .......................................................................................... 143
Expandable Fields................................................................................................... 143
Designing an Expandable Field........................................................................ 144
Using !Format Events in Fields ............................................................................... 145
Components of a !Format Event Expression.................................................... 145
Summary of How !Format Event Works ........................................................... 147
Creating a !Format Event .................................................................................147
Examining JFPREAMBLE_1 After Compiling................................................... 150
Intelligent Pagination ..................................................................................................... 150
How Do You Invoke Intelligent Pagination? ............................................................151
Overriding Intelligent Pagination Commands.......................................................... 151
Groups and Events........................................................................................... 151
The Group Dictionary ....................................................................................... 152
Defining Groups and Events............................................................................. 152

Adobe Output Designer


Developing Templates

Contents

Group Events and Field Events Handlers ........................................................ 154


Intelligent Pagination Commands..................................................................... 154

Intelligent Pagination Reference ................................................................. 155


Group Event Handlers ................................................................................................... 155
groupname!DuplexBack (At Duplex Page Back) .................................................... 155
groupname!DuplexFront (At Duplex Page Front).................................................... 155
groupname!OnBOF (At Bottom of Page) ................................................................ 155
groupname!OnEntry (At Activation of Group) ......................................................... 156
groupname!OnExit (At Exit Current Group) ............................................................156
groupname!OnTOF (At Top of Page)...................................................................... 156
groupname!Simplex (At Simplex Mode).................................................................. 157
JfEndData!EndData (End Data Processing) ........................................................... 157
Field Event Handlers ..................................................................................................... 157
fieldname!FldUsed (Field Used).............................................................................. 158
fieldname!Format (Field Formatting)....................................................................... 158
fieldname!OnOverflow (Field Overflow) .................................................................. 160
fieldname!FldNotAvail (Field Not Available)............................................................160
!Replace! (Replace Line) ...............................................................................................161
Intelligent Pagination Commands.................................................................................. 163

Dictionaries ................................................................................................... 167


Global Dictionary ........................................................................................................... 167
Group Dictionary............................................................................................................ 168
User Dictionary .............................................................................................................. 168
Environment Dictionary ................................................................................................. 168
DocVar Dictionary.......................................................................................................... 169
Fax Dictionary................................................................................................................ 170
Sys Dictionary................................................................................................................ 170

Supported Graphics Formats ...................................................................... 172

Defining Custom Finish Options ................................................................. 173


Printing Using Custom Finish Options........................................................................... 174

Glossary ........................................................................................................ 176


Index .............................................................................................................. 181

Introduction
Adobe Output Designer is a graphical design and development tool for creating template
designs that play an integral role in the automation of your business processes. Output
Designer is very powerful, yet flexible and easy to use. With Output Designer, you will discover
new and exciting ways to meet your organizations evolving business requirements.

WHATS IN THIS GUIDE?


The Developing Templates guide is designed to help you create, test, and deploy template
designs. The guide is organized into these main sections.

Introduction: Introduces you to Output Designer and where it fits with other Adobe
products, and describes where you can obtain additional information and support.

Exploring the Output Designer Workspace: This chapter takes you through a tour of the
workspace and shows you how to customize it to suit your own personal requirements.

Basic Template Design Process: This chapter introduces you to electronic templates, their
components, and their use. We also look at the process of designing a basic static template,
from the analysis and planning stage, through creation, testing, and deploying.

Special Fields: In this chapter we examine the use of special fields in Output Designer and
how to make the best use of them.

Developing Dynamic Templates: The focus of this chapter is dynamic templates. It takes
you through the process of creating a dynamic template.

Advanced Font Considerations: Here we look at methods for optimizing your use of fonts,
including font mapping and customization.

Additional Development Tools: This chapter describes additional tools included with
Output Designer that facilitate the development of effective template designs.

Job Tickets: This chapter is intended for designers who are developing templates
specifically for Xerox DocuPrint and DocuTech printers.

Advanced Template Concepts: This chapter describes the processing that occurs for
dynamic templates and looks at some advanced design techniques.

At the end of the guide you will also find a Glossary of Terms and three reference sections that
describe advanced commands and supported graphic formats.

Adobe Output Designer


Developing Templates

Introduction

ABOUT OUTPUT DESIGNER


Organizations require e-document presentment solutions that enable them to output
documents from a single system, in a variety of formats for delivery via multiple channels
including mail, e-mail, fax, and the Web.
With an effective end-to-end solution delivery, organizations can also offer customers flexible
alternatives for receiving information. An organization can automatically send information to its
customers, and at the same time, its customers can actively seek out up-to-the-minute
information.
Output Designer gives you the ability to create the templates that form the basis of your
document output solutions. Each template contains the basic structure for presenting the
requested information, including data presentment fields, company logos, and other layout
elements. When merged with data, the template enables you to present:

Customer specific information.

A layout that flexes to the amount of data for each customer and that is consistent with the
organizations standards.

An output document delivered through different output mechanisms, be it on paper, via


e-mail or fax, as PDF, or viewable online through a standard browser.

Output Designer enables you to create professional looking templates for the most simple
business function or the most complex, without complex programming.
As you construct a template design, you see exactly how template elements such as text, fields,
lines, boxes, and logos will appear on the selected presentment target. You can build your
template design for one presentment target, or multiple.

Integrating Output Designer into Your Solution


Output Designer is one of the development tools that Adobe provides to enable you to develop
an effective solution for automating your business processes. The templates you create in
Output Designer do not function in isolation, but rather are part of a broader end-to-end
solution. These templates provide the presentation mechanism that you will use with Adobe
Central Output Server (Central) or Adobe Web Output Pak.

Central
Central is a server-based application that takes application data and merges it with an
electronic template. You create the electronic templates using Output Designer.
Central can accept input from different sources and deliver output simultaneously to a variety of
presentment targets including print, fax, e-mail, and PDF. Using Output Designer, you can
create output templates for use with any of these supported presentment targets. This enables

Adobe Output Designer


Developing Templates

Introduction

10

you to create and generate sophisticated output templates from your line-of-business
applications, while at the same time meeting the document output challenges of a hybrid
paper-electronic world.
Integrating Output Designer with Central

Web Output Pak


Web Output Pak is a tool that enables you to develop e-document presentment applications in
a Web environment. A Web Output Pak application accepts a request for information,
processes that request, and then merges the requested data with an output template. The
application presents the merged data and output template in HTML or PDF format in a standard
Web browser.
Output Designer gives you the means to create the templates that enable PDF output on the
Web. Once you have designed and compiled your template in Output Designer, it is ready to
integrate into a Web Output Pak application. You can also use Output Designer to create
templates that form the starting point for an HTML output template. You complete these HTML
templates in an HTML authoring tool of your choice.

Adobe Output Designer


Developing Templates

Introduction

11

Processing with Web Output Pak

RELATED DOCUMENTATION
Output Designer provides you with a complete documentation set to assist you with the creation
of templates for use with Central or Web Output Pak. The documentation includes both online
assistance and guides in PDF format.
In addition to the Output Designer documentation, you will find the documentation that
accompanies both Central and Web Output Pak extremely useful. Here you will find information
about:

How these applications use the templates you create in Output Designer.

Requirements of the different Central and Web Output Pak output Agents for processing the
templates.

Steps to integrate the template into the overall solution or custom application.

The documentation for Output Designer is installed with the Output Designer software. You can
access all the documentation from inside Output Designer by selecting Help > View
Documentation. You can also access it by selecting Start > Programs > Adobe Output
Designer 5.7 > Documentation.
The documentation for Central and Web Output Pak is installed with each of those products.
You can access it in the same similar manner as Output Designer, either from the Help or Start
menus.

Adobe Output Designer


Developing Templates

Introduction

12

Output Designer Documentation


In addition to this guide, the documentation set that accompanies Output Designer includes:

The Output Designer Help, where you can find information about the specific features of
Output Designer and how to use them. You can access this from inside Output Designer by
clicking Help > Help Topics.

The Template Object Library Help, which provides information about using the Template
Object Library. You can access this from inside the Template Object Library by clicking
Help > Template Object Library Help.

The Getting Started guide, which provides information about installing the software, as well
as instructions for modifying your installation.

Central Documentation
The guides that accompany Central provide information about integrating your templates into
that environment:

Working with Central describes the interaction between Central and its components in
managing electronic templates in a networked environment.

Print Agent Reference describes the processing and commands of Print Agent, an output
Agent of Central.

If you need information about transforming your data into a format acceptable to Central, refer
to these guides:

Developing Data Transformations provides an introduction to performing data


transformations using Visual Transformation Editor and Transformation Agent.

Advanced Transformations provides a detailed description of how to use Transformation


Agent to perform advanced data transformations.

Scripting for Data Transformations provides details on using the scripting feature of Visual
Transformation Editor or Transformation Agent to customize data transformations.

XML Import Agent Reference provides an overview of XML Import Agent and describes how
to configure the Agent. It describes the command line that developers can use to override
the default settings for translating XML data into field-nominated format.

Integrating XML with Central provides information about using Print Agent or XML Import
Agent to translate XML data into field-nominated format. It also describes how to migrate
applications in field-nominated format to XML.

If you need information about Messaging Agent, the electronic mail component of Central, refer
to:

Sending E-Mail Messages from Central, which describes how to send selected documents,
such as PDF files, to a mailbox or set of addresses.

Adobe Output Designer


Developing Templates

Introduction

13

Web Output Pak Documentation


The documentation that accompanies Web Output Pak provides information about integrating
templates with Web Output Pak:

Developing Applications provides information about creating an application for use with Web
Output Pak, and describes where the output template fits in the solution.

HTML Agent Reference describes the processing and commands for HTML Agent, the
output Agent to produce HTML documents.

PDF Agent Reference describes the processing and commands for PDF Agent, the output
Agent to produce PDF documents.

ABOUT THIS GUIDE


As well as the new features listed in the Whats New! document, there are additional changes
throughout the guide. These symbols draw your attention to new and updated topics.

NE

UP

New - indicates a new topic in the Developing Templates guide.

TE
DA

Updated - indicates an updated topic in the Developing Templates guide.


In addition to the symbol, updated text within the topic is marked
with change bars, like the one to the left of this text.

Exploring the Output Designer


Workspace

Before you begin developing your first template, it would be useful to take a quick tour of the
Output Designer workspace. This chapter will familiarize you with the fundamentals of Output
Designer including:

The window and its basic components such as the Title Bar, Menu Bar, Toolbar, and
Control Bar.

Different types of objects that you can add to your template design.

Tools available for creating and manipulating various objects on a template design.

How to customize the Output Designer workspace to suit your working requirements.

If you are already comfortable with the information in this chapter, go on to the chapter Basic
Template Design on page 38.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

15

ELEMENTS OF THE OUTPUT DESIGNER WINDOW


Output Designer uses a standard window layout that follows Microsoft Windows conventions.
The Output Designer window incorporates features such as a Title Bar, Menu Bar, and
Toolbar that are all common to Windows applications. It also includes two elements that
contain tools very specific to Output Designer - the Control Bar and the Toolbox. The Output
Designer window is illustrated on the next page.
The Output Designer Workspace
Title bar showing template name and page
Menu bar
Toolbar
Control Bar
Guidelines tool
Toolbox
Rulers

The gray space


is the page and
drawing area.
This is the view
in 3-D mode.

This white
space is
the
off-page
area.

Status bar displaying the


name of the selected object,
in this case a text block.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

16

Title Bar
At the top of the Output Designer window is the Title Bar. The Title Bar displays the name of
your template design. When you first create a template design, the default name of Untitled
appears in the Title Bar. In addition to the title, it displays the number of the currently selected
page. If the page has a name, the Title Bar displays the name instead of the number.
Title Bar for Page Body_Margin of the Template Design Invoice

Menu Bar
The Menu Bar shows the names of the standard menus that appear by default: File, Edit,
View, Insert, Format, Tools, Area and Help. If you choose to enable job ticketing, the Menu
Bar also displays the Xerox menu. Each menu contains a set of menu items or commands that
give you access to different elements of the application.
Menu Bar with Custom Xerox Menu

The custom Xerox


menu appears
when job ticketing
is active.

Toolbar
The Toolbar provides a convenient way to access the commands you use most frequently. The
default Toolbar contains buttons corresponding to some very standard commands. You can
customize it by selecting View > Toolbars.
Default Output Designer Toolbar

Each toolbar button has an associated ToolTip that explains the buttons purpose. Simply
hover the mouse pointer over the button and the explanation appears in a small pop-up
window.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

17

Control Bar
The Control Bar appears in the Output Designer window directly below the Toolbar. The
Control Bar gives you quick access to a variety of essential tools that you will use while
creating your template design. These tools include:

Tear-offs

Color button

Page button

Page Name drop-down list


Elements of the Control Bar
Width and Height
spinners
Move button

Click the spinner to


see different Tear-offs

Tear-off drop-list

Page name and


subform list

Go To Page
buttons

Color

Tear-Offs
Tear-offs provide quick access to the formatting options for font, graphic, and field objects in
your template design. Using Tear-offs, you can conveniently position objects; set attributes for
fields, fonts, and graphical objects; and access objects in the Template Object Library. The
Control Bar contains five Tear-offs:

Field

Font

Graphics

Library

Position

To select a Tear-off, use the spinner at the left edge of the Control Bar.
Graphics Tear-Off
Move button

Expand button

A Tear-off initially shows only a single line of options. The Expand button provides access to
all the options for the Tear-off. When you click Expand, the full Tear-off appears. Expand
changes to Compress, for returning the expanded Tear-off to a single line.
Expanded Graphics Tear-Off
Compress button

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

18

Instead of working with a single Tear-off on the Control Bar, you can also drag a Tear-off to
your drawing area. Simply click the Move button and drag the Tear-off to your workspace. The
Tear-off becomes a moveable window.
You might find it useful to group multiple Tear-offs into a single window. Drag the Tear-off so
that it touches and aligns with the top or bottom of another Tear-off. The Tear-offs snap
together. To separate them, start with the bottom Tear-off and drag them away from the group.
Group of Graphics, Text, and Field Tear-Offs

Field Tear-Off
When you are working with fields, you can use the Field Tear-off to quickly set basic attributes
common to all fields. These include the fields name, height, and width. This is especially useful
when you first create the fields. Then, when you are ready, you can use the Field Format
dialog box to access the complete set of attributes for the specific field type.
Field Tear-Off

For more information about setting field attributes, see Formatting Fields on page 61. For
additional information about the Field Tear-off, see the Output Designer Help.

Font Tear-Off
The Font Tear-off provides a convenient way to set font attributes for text blocks, text labels,
and fields. The Text/Field button indicates the type of object for which the attributes are set: T
for text or F for field. Font attributes include the typeface, point size, style, and justification.
When you expand the Font Tear-off, you have the same options as you do in the Format Font
dialog box.
Expanded Font Tear-Off for Text

Text/Field button

You can use the Font Tear-off to control the appearance of individual text items and fields. You
can also use it to establish default font attributes for the text and fields of an entire template
design.
For more information about setting font attributes, see Techniques for Adding and Formatting
Objects on page 57. For additional information about the Font Tear-off, see the Output
Designer Help.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

19

Graphics Tear-Off
You can set attributes for graphical objects using the Graphics Tear-Off. You have access to
the same attributes for graphical objects in the Graphics Tear-Off as you do in the Format
Graphics dialog box.
Expanded Graphics Tear-Off

The graphical attributes you can set include line width, line style, and shading for circles and
boxes. You can also set the angle for an arc, the radius for a circle, and the corner radius of
rounded boxes.
For more information about setting graphics attributes, see Adding Graphic Objects on
page 72. For more information about the Graphics Tear-off, see the Output Designer Help.

Library Tear-Off
The Library Tear-off gives you access to the Template Object Library. This library contains
objects, fields, and entire templates that have been previously created and saved. Using the
Library Tear-off, you can easily retrieve elements that you use repeatedly and incorporate
them in your template design. This eliminates the need to recreate frequently used items. It also
facilitates the design of templates that require a consistent look and feel.
Library Tear-Off

Before you can use the Library Tear-off, you must activate access to the Template Object
Library from within Output Designer.
For more information about accessing and using the Template Object Library, see the
Template Object Library on page 124. For additional information about retrieving Object and
Field elements using the Library Tear-off, see the Output Designer Help.

Position Tear-Off
Using the Position Tear-off, you can precisely position and size objects on your template
design. The Position Tear-off shows the horizontal (X) and vertical (Y) position of the mouse
pointer as you move it around the drawing area. When you draw or select an object, the
Position Tear-off shows the X and Y coordinates of the upper-left corner of the object, relative
to the rulers. It also shows the width (W) and height (H) dimensions of the object. As you move
or resize the object, the Position Tear-off displays the new coordinates.
Position Tear-Off

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

20

In addition to positioning objects by simply moving them around, you can also specify exact
coordinates and dimensions. Simply type the desired values into the appropriate boxes in the
Position Tear-off, or use the spinners to change the values.
For additional information about the Position Tear-off, see the Output Designer Help.

Color
To the right of the Tear-offs is the Color button. Use the Color button to select a drawing color
for objects. The selected color appears on the paintbrush that you see on the button.
The options available to you through the Color button are exactly the same as those available
by clicking Format > Color. For information about colors, see the Output Designer Help.

Go To Page
To the right of the Color button is the area that contains one or more Go To Page buttons.
Using these buttons, you can easily jump to the different pages in your template design.
Clicking a button once takes you directly to the corresponding page. This is the same as
clicking Edit > Go To Page. Double-clicking a button takes you to the page and opens the
formatting options for that page.
Page Icons

Up to five Page buttons appear at any one time and the button corresponding to the current
page is highlighted. When a template design is more than five pages, you can use the browse
arrows at either end of the buttons to move backward and forward through the buttons.

Page and Subform Name


At the far right of the Control Bar is a drop-down list that shows the names of the pages in your
template design, and any subforms they might contain. Each page and its subforms are
grouped together. You can use this tool to quickly access specific pages and subforms.
Page and Subform Name Drop-down list
Page name
Subform name(s)

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

21

When you need to edit a specific page or subform, select the subform name from the
drop-down list. Output Designer moves to the appropriate page and highlights the subform.
The Page and Subform Name drop-down list appears when you do one of the following:

Name a page something different than the default numeric name set by
Output Designer.

Add one or more subforms to your template design.

Rulers and Ruler Guidelines


The rulers appear at the top and to the left of the drawing area. The top ruler is the horizontal or
X axis, and the left ruler is the vertical or Y axis. Use the rulers to precisely place objects on the
page. As you move an object, pairs of markers on each ruler show the location and size of the
object.
At the intersection of the two rulers is the Guidelines icon. You use guidelines to align objects,
or to block areas of the page as margins, work areas, or subforms. Simply click the Guidelines
button and drag the guidelines onto the drawing area. Arrow pointers appear on the rulers to
mark the locations of the guidelines. If you want to adjust the position of the guidelines, drag the
arrow pointer to the desired location.
Rulers and Guidelines
Horizontal ruler
Guidelines icon

Arrow pointer
shows the
position of the
guideline on the
ruler. To move
a guideline,
drag the arrow.

Guidelines

Vertical ruler

You can use as many guidelines as you like. Guidelines appear only on screen and do not print
with the template. Output Designer saves your guideline settings between each session. The
quickest way to remove the guidelines from the screen is to click View > Grids and select
Erase Guidelines. To remove individual guidelines, select the associated arrow and drag it off
the ruler.
For additional information about using rulers and guidelines, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

22

Grids
Output Designer uses a variable grid that makes it very easy to position and align objects on a
page. The grid consists of intersection points, much like a piece of graph paper. When you draw
new objects or change existing ones, the objects snap to the grid intersection that is nearest the
current position of the pointer. This effect facilitates the layout and drawing process. With little
or no effort the lines you draw meet exactly, and object and text spacing is automatically even
and aligned.
The grid intersection points occur at intervals determined by the increments on the horizontal (X
axis) and vertical (Y axis) rulers. When you change the unit of measure or the settings on a
ruler, the grid intersection points change accordingly. The larger the grid spacing, the more you
notice the snapping effect on the objects.
You can set the increments on the horizontal and vertical rulers independently to any value. By
default, when you start a new template design, the horizontal ruler is set to 10ths of an inch and
the vertical ruler is set to 6ths of an inch. These divisions mimic the spacing of a 10-pitch
typewriter (10 characters per horizontal inch and 6 lines per vertical inch).
The grid is always active, although you can turn its display on or off. When you first launch
Output Designer, the grid is invisible. When you display the grid, a tiny dot appears at each
intersection point.
For detailed information about working with the grid, see the Output Designer Help.

Page
The page or drawing area constitutes the major part of the Output Designer window. It appears
as a rectangle on the screen. The area inside the rectangle represents the portion of your
template design that will be visible in the final output. The size of the final output area is
determined by the presentment targets that you select. For example, if your selected
presentment target is a printer, the page area shows you the maximum printable area for that
specific printer.
Output Designer displays the page area so that you can design templates that take maximum
advantage of the output area. Within the page area, you position the objects that will contain the
information you want your users to see.
Outside the page area is the off-page area. You can use the off-page area to place objects that
are important for producing the final output, but that your users do not need to see. Objects in
the off-page area are not included in the final output.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

23

Page or Drawing Area in 3-D View

The gray portion


of the workspace
is the page or
drawing area.

The white portion


of the workspace
is the off-page
area.

You can change the page to any size your printer supports. You can also choose between
Portrait and Landscape for the orientation.
By default, Output Designer sets the working view in your template design to be three
dimensional. You see a gray rectangle representing the page area, and a white border
representing the off-page area. If you change the view to be two dimensional, the page area is
white, and is differentiated from the off-page area by the outline of a rectangle.
For information about changing between three dimensional and two dimensional views, see
Setting the View of the Template on page 32.

Status Bar
The bottom left of the Output Designer window contains the Status Bar. The Status Bar
provides very useful information. For example:

If you need a quick reminder about the purpose of a menu item, simply hover the mouse
pointer over that item and a description appears in the Status Bar.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

24

When you select an object on your template design, the Status Bar displays its name. If you
select several objects at once, it displays the number of objects. If you select a group, the
Status Bar displays the name of the group, as well as the number of objects it contains.

If you have nothing selected, or you elect to compile your template design, the Status Bar
shows your default presentment target.
Status Bar

Status Bar
showing
details of the
selected
subform.

Toolbox
The Toolbox contains the drawing tools you need to create your template design, as well as
selection tools for controlling the text and objects you place on it. To use a tool, click its button
in the Toolbox. You can completely customize the contents, layout, and position of the
Toolbox. The next illustration shows the default layout of the Toolbox.
Toolbox
Pick

Table

Text

Edit Text

Field
Radio Button
Line
Circle
Barcode

Check Box
Box
Diagonal Line
Logo

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

25

Before you start designing your first template, you should become familiar with the tools in the
Output Designer Toolbox. The tools give you the ability to:

Draw lines, circles, and boxes.

Add graphic images.

Create and modify text.

Add barcode labels.

Add a variety of presentment fields including data fields, radio buttons, check boxes, and
tables.

Select, rearrange, and delete objects.

For complete information about using the Toolbox, see the Output Designer Help.

Drawing Tools
Output Designer gives you the tools to manually draw a variety objects on your template
design, including lines, boxes, circles, and free form shapes. These types of objects are the
most common objects in a template design. They are often referred to as boilerplate because
they remain static and do not change when the output Agent merges the template with data.
When you draw an object, the corners or ends of the object snap to the grid intersections
nearest the pointer position.
For complete information about using drawing tools, see the Output Designer Help.

Box
Using the Box tool, you can draw various styles of boxes, including shaded or un-shaded boxes
with square or rounded corners. You can control the line style used for the outline, as well as
the shading pattern for boxes.

Circle
Using the Circle tool, you can draw a circle of any radius you need. The Circle tool works much
like the Line or Box tool, except that you draw the circle from its center outwards.

Diagonal Line
Using the Diagonal Line tool, you can draw lines of any angle on the page. Use this only for
lines that you cannot create using the Line tool. To emphasize certain areas of a template
design, you can draw lines in varying styles, widths, and colors.

Line
Using the Vertical/Horizontal Line tool, you can draw horizontal and vertical lines, as well as a
line at a 45 angle. To indicate sections or areas of emphasis on a template design, you can
draw lines in varying styles, widths, and colors.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

26

Graphics Tool
Using the Logo tool, you can place a previously saved graphic image on the template design.
This is particularly useful when you want to incorporate a company logo or pre-designed image.
Output Designer supports logos prepared in several different formats.
You can make these graphic images transparent and rotate them (depending on your
presentment target). You can also resize these graphic images using the pick handles. For
information about picking an object, see Selection Tools on page 27.
For a list of supported graphic formats, see the Output Designer Help. For additional
information about working with graphic images, see Placing Graphic Images in Your Template
on page 73.

Text Tools
Output Designer enables you to include different types of text in your template design. Text
labels and text blocks represent static information on your template design. Once you add text
to your template design, you can reposition and edit it. You can assign multiple fonts, as well as
specify different font attributes for specific text labels or blocks.
For more information about working with text objects, see Adding Text Objects on page 69.
For complete information about using the text tools, see the Output Designer Help.

Add Text
Using the Text tool, you can place text headings and static information on your template
design. There are two types of text that you can add: text labels and text blocks.

Edit Text
The Edit Text tool provides a direct method of picking a text object for editing. When you click
Edit Text and then click a text label or text block, the text is picked and ready for editing.
You can also pick a text object with the Pick tool. When you do this, you can move the text
object, size it or delete it from the page. However, if you begin typing, you are automatically in
edit mode, and the pick handles no longer appear. The new characters appear at the end of the
existing text.
You can easily switch between editing the text and moving it by pressing CTRL+E.

Barcode Tool
Using the Barcode tool, you can place a barcode label on the boilerplate of your template
design. When you format a barcode label, you must specify the type of barcode and value for
the barcode. The barcode label appears on your output template. Output Designer supports a
variety of barcode types.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

27

The Barcode tool is particularly useful for templates for documents that require the same
barcode label, such as specific government publications. If you need the barcode value to
change from record to record, create a Barcode field.
For information about Barcode fields, see Setting the Remaining Field Attributes on page 64.
For a list of the supported barcodes, see the Output Designer Help.

Selection Tools
In your template design, it is easy to manipulate the various objects on a page. You can select
any type of object - graphics, fields, and text. You can then modify the selected objects, move
them to different locations on the template design, or delete them entirely.

Pick
Use the Pick tool to pick one or more objects to position, modify, or delete. Once you pick an
object, you see pick handles at each corner and at each edge. Lines show pick handles at each
end.
You can pick multiple objects in a variety of ways using the Pick tool. For example, if the
objects are located in different areas of the page, press the CTRL key, and click on each object.
If the objects are confined to a specific area, you can draw a selection box around them.
With multiple picked objects, you can also form an object group. An object group shows pick
handles at each corner and at each edge of the group. If you then click one of the members of
the group, the pick handles appear around that object. This enables you to manipulate an
individual group member, without having to remove it from the group. For more information
about object groups, see Grouping Objects on page 59.
When you click Pick and move the pointer outside the Toolbox, the pointer changes to a black
arrow. You can also choose Pick by double-clicking anywhere in the drawing area where no
objects are located.
Activated Pick Tool

Another important use of the Pick tool is to deselect another item in the Toolbox. When you
select a tool from the Toolbox and use it in the drawing area, it stays selected even though you
may have finished using it. Clicking the Pick tool deactivates the previous selection.
You can customize the default settings in Output Designer to change the behavior of the Pick
tool, so that it does not remain selected when you finish using it.
For information about changing this setting, see Setting Drawing Options on page 34. For
additional information about picking objects, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

28

Moving and Resizing Objects


You can move a picked object to any location in the drawing area. Once you select the object
using the Pick tool, simply position it over the object. The black pointer changes into the Move
tool.

Move tool

You can also resize certain objects. Once you pick the object, just move the Pick tool to the
edge or corner of the object. The black pointer changes to the Resize tool.

Resize tool

Data Presentment Tools


This group of tools in the Output Designer Toolbox enables you to include elements that will
display the data that ultimately gets merged into your template design. Such elements include
individual data fields, tables, radio buttons, and check boxes.

Check Box
Using the Check Box tool, you can add check boxes to your template design. For more
information, see Check Box Fields on page 62.

Field
Using the Field tool, you can draw individual fields that will display specific elements of the
users data. This tool operates in two different ways:

Using the point and click method, to add fields of the same length. This is the default
behavior when you click the Field tool in the Toolbox.

Using an option called Use draw field mode. This option enables you to draw as you would
a rectangle and assign height and width values.

For more information about adding fields, see Adding Field Objects on page 60.

Radio Button
Using the Radio button tool, you can add radio buttons to your template design. For more
information about adding fields, see Radio Button Fields on page 64.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

29

Table
Using the Table tool, you can add tables to your template design. In Output Designer, tables
are objects consisting of fields arranged in columns and rows. Each column contains a single
field. You assign the field type and attributes as you would an individual data field. All the cells
in a given column will have the same attributes. Only the title row across the top of the columns
does not include fields. This row is pre-formatted to contain text blocks so that you can easily
add column titles.
Tables provide a convenient method for setting up those parts of a template design that require
recurring fields. A good example of a document with recurring fields is a purchase order that
contains multiple detail lines.
For additional information about using tables, see Adding Table Objects on page 68. For
information about formatting tables, see the Output Designer Help.

CUSTOMIZING THE OUTPUT DESIGNER WORKSPACE


You can easily customize Output Designer to suit your personal working style. In fact, there are
some very basic options that you will want to setup right away. For example, you can add or
remove buttons on the Toolbar or in the Toolbox, you can draw your template design in three
dimensional or two dimensional view, and you can adjust the zoom level as you work. In
addition, you can control several display features of Output Designer, such as the handling of
shaded objects and the treatment of logos, that will contribute to increased efficiency during the
development process.
After you work with Output Designer for a period of time, you will undoubtedly need to further
customize your working environment.
The customization settings described in this section apply globally to your workspace.
However, you can change these settings at any time. In addition to these more general
customizations, you also need to specify certain settings, such as the configuration of a
presentment target, for individual template designs.
For information about customizing the template designs themselves, see Basic Template
Design on page 38.
In this section, you will look at:

How to customize basic window elements such as the Toolbar, Toolbox, and rulers and
grids.

Setting the view of your template.

Specifying how to display objects on your page for optimal performance and ease-of-use.

Setting and changing drawing options for fields and selection tools.

Enabling the Job Ticket feature.

Additional customizations you can make once you are familiar with Output Designer.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

30

Customizing the Toolbar and Toolbox


Output Designer gives you the opportunity to customize the Toolbar and the Toolbox. The
elements you can change for these two tools are very similar and the mechanisms for doing so
are almost identical. For detailed information about customizing the Toolbar and Toolbox, see
the Output Designer Help.
You can customize the Toolbar and Toolbox in a number of different ways:

Display large buttons.

Display the menu command text on the button itself.

Hide the Toolbar and/or Toolbox.

Customize the combination of buttons that appear on the Toolbar and/or Toolbox.

Set the Toolbox to snap to an edge or corner of the page, or to move to any location on the
page that is most convenient for you.

To access all these options, click View > Toolbars. The Toolbar/Toolbox dialog box offers you
the different customization options.
Toolbar/Toolbox Dialog Box

If you only want to customize the combination of buttons on the Toolbar, simply double-click
the Toolbar itself. This shortcut takes you directly to the Customize Toolbar dialog box.
Similarly, if you are only interested in customizing the combination of buttons in the Toolbox,
double-click the title bar area of the Toolbox.
Dialog Box for Customizing Toolbar and Toolbox

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

31

Managing Rulers and Grids


Rulers and grids work hand in hand in Output Designer. The grid defines the location of each
object on the page. The grid, which displays as a series of dots on the page, consists of
intersection points which are determined by settings on the horizontal (X) and vertical (Y) rulers.
The grid is a design tool only and never prints.
When you place an object on a page, it automatically moves to the nearest grid intersection
point. If the unit of measure on the rulers is large, you will observe a noticeable jump when you
try to place or move an object.
Grid values stay in effect until you change them. A change in the grid values applies to the
position of new objects on the page. The position of an existing object does not change, unless
you pick the object.
You can customize the rulers and grids in these ways:

Show or hide the horizontal and vertical rulers. To do this, click View > Ruler.

Modify the unit of measure that the ruler and grid use. You can choose inches, centimeters,
or picas and points. To do this, click Tools > Options > General and specify the desired
Units.

Modify various grids settings. To do this, click View > Grids.

For detailed information about changing rulers and grids settings, see the Output Designer
Help.

Using Guidelines
Guidelines help you align objects on the template. You can set as many guidelines as you need
to effectively layout your template. Guidelines are a design tool only and never appear in the
final output.
Guidelines are extremely useful when you are creating subforms for dynamic templates. For
more information about using guidelines with subforms, see Blocking Off the Subforms on
page 98.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

32

Setting the View of the Template


While you are developing a template, you can toggle the view between three dimensional and
two dimensional. By default, the display is three dimensional. Fields, radio buttons, and check
boxes appear as sunken areas on the screen. Text does not have a 3D appearance.
Template Design in 3D View

The two-dimensional view may provide a better representation of how your form will actually
look if output to paper. To work in two dimensional view, click View and click Draw in 3D to
remove the check mark. The following picture shows the same template, but in 2D view.
Template Design in 2D View

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

33

Specifying How to Display Elements on the Page


In Output Designer, you can control the display of various objects in your template design. This
can improve screen redrawing speed, help to better distinguish certain elements on the screen,
or provide a better magnification of your template.
You change most of these display options in one location. Click Tools > Options. The Options
dialog box opens, revealing a series of tabs. You will find most of the display settings on the
View tab.
View Tab of the Options Dialog Box

Here are a few of the initial settings that you may wish to change on the View tab before
beginning the template design process. For complete details about the options on the View tab,
see the Output Designer Help.
To control the...

Do this...

Shading of boxes
and circles

Clear the Shading check box if you do not want the shading for these
objects to display on-screen. This results in faster redisplay when
changing zoom levels.

Text borders
around text
blocks

Select the Text borders option. This differentiates text blocks from text
labels. When this check box is clear, text blocks and text labels appear
the same.

Display of logos

Clear the Logo option to display only a cross-hatched placeholder for


logos in your template. This improves the time it takes to redraw the
template on the screen.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

34

To control the...

Do this...

Color of picked
objects

Select the Highlight color option. Picked objects appear in color, making
them much more visible. The default color is red, but you can change this
on the Colors tab.

Magnification
level

Specify the Default zoom level. This enables you to zoom in on or zoom
out of an area of your template. You can perform all drawing and editing
operations at any zoom level.

Setting Drawing Options


You can also make changes to the behavior of some of the drawing and selection tools. You
may want to change these options regularly, depending on the exact nature of your template
design. You change these options in the same Options dialog box. Click Tools > Options >
General.
General Tab of the Options Dialog Box

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

35

Here are a few of the drawing related settings that you should be aware of, or may want to
change, before beginning the template design process.
To...

Do this...

Draw fields to a
specified size

Select Use draw field mode.

Set a default height


and width for fields

Specify a value in the Default width and Default height box.


Output Designer applies these settings to each field you place on
your template when you are not using the Use draw field mode
option.

If you clear this option, each field you draw has the same default
size. You then change the size attributes using the Format Field
dialog box or the Field Tear-off.

Remember these are only the initial settings. You can still change
these values in the Format Field dialog box or in the Field Tear-off.
Keep the current
drawing tool active

Select Keep drawing tool to retain the drawing tool you currently
have selected. This lets you continue to draw and place objects of
the same type without having to choose the tool from the Toolbox
each time you want to use it.
If you clear this option, each time you finish drawing an object, the
mouse pointer reverts to the Pick tool.

Display information
about fields on the
page

Select Show field ToolTips. When you hover your mouse cursor
over an un-picked field, you will see the type of field, its name,
height, and width.

Specifying File Locations


You should familiarize yourself with the default locations that Output Designer assigns to
various files. To view the default locations, click Tools > Options > File Locations. Output
Designer organizes different file types into specific folders. If need be, you can change the
default locations on this tab.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

36

File Locations Tab, Options Dialog Box

Enabling the Job Ticket Feature


Job tickets are a feature of Xerox DocuPrint and DocuTech printers that let users take
advantage of a wide range of printing and finishing options. In Output Designer, you associate a
template design with a job ticket, thereby being able to specify requirements such as paper
type, number of copies, and banner page. Output Designer supports this feature by providing
presentment targets for DocuPrint models 4850 NPS, 4890 NPS, 4090 NPS, and
DocuTech models 135 and 6135.
If you are going to use the job ticketing facility in Output Designer:

You must first verify that the presentment target for job tickets is installed. To check this,
click File > Presentment Targets. Review the list of presentment targets. If the appropriate
target is not present, you will need to install it using the Output Designer installation
program.

With the appropriate presentment targets in place and selected, activate the job ticketing
feature. To do this, click Tools > Options > Advanced and select Enable job ticketing.
When you return to the Output Designer workspace, look for the Xerox menu, located just to
the left of the Help menu.

For information about installing components, see the Getting Started guide.

Adobe Output Designer


Developing Templates

Exploring the Output Designer Workspace

37

Additional Ways to Customize the Workspace


You have examined a variety of changes you can make to the Output Designer workspace that
will facilitate your personal working requirements. In addition to these settings, there are options
you may wish to take advantage of after creating a few template designs. You will find most of
these options in Tools > Options. For more information about these options, see the Output
Designer Help.
Option

What you can do...

Color settings

On the Colors tab, you can specify different colors for elements
of the Output Designer workspace including the background,
rulers, and selected text.

Setting up Output Designer The Test Presentment tool lets you preview your template in two
so that you can test your
formats: either on screen, or output to a printer. On the Test
template design
Presentment tab, you specify the default locations of the viewers
that Test Presentment uses.
You may find that some of the information that Test
Presentment needs may already be present on this tab. During
installation, Output Designer looks for Adobe Reader and your
default browser. If it finds the programs, you will see the
necessary program information in the PDF viewer and HTML
viewer boxes.
For more information about Test Presentment, see Testing Your
Template Design on page 76.
Activate the Template
Object Library

When you are ready to use the Template Object Library, you
need to activate it. To do this, select Enable Template Object
Library on the Advanced tab.
For more information about the Template Object Library, see
Template Object Library on page 124.

Basic Template Design


Having familiarized yourself with the Output Designer workspace, the next step is to create a
basic template design. In this chapter you will look at:

Template basics: what a template is, how its used, where it fits.

Types of templates.

An overview of the steps to effective template design.

Steps for creating, testing, and compiling a basic template.

This chapter will guide you through the process of developing a template, from analysis and
planning through to deployment. Once you are familiar with these concepts, you will be on a
solid footing to move into more advanced template design concepts.

WHAT IS AN ELECTRONIC TEMPLATE?


An electronic template is a means for presenting variable data in a professional looking layout
to your customers. The Adobe approach is to separate the data from the output template. The
electronic template provides the presentation or layout for the data, including formatting
information such as font size, alignment, field logic, and graphics. The data itself is maintained
separately. The data feeds the template and determines what the final output template will
contain.

Using Output Designer to Create Electronic Templates


Using Output Designer, each electronic template that you create consists of two pieces:

The modifiable layout called the template design (.ifd) file.

The distributable output template (.mdf) file.

The template design is the source for the output template (.mdf) file. Output Designer keeps the
template design (.ifd) file and the output template completely separate to ensure the integrity of
the output template for all users. Users cannot modify the output template file. If the output
template needs modification, a template designer changes the original template design file,
compiles, and redistributes the output template.

Adobe Output Designer


Developing Templates

Basic Template Design

39

Design Phases
With Output Designer, there are two distinct phases involved in the creation of electronic
templates:

Phase 1 ~ Plan and Analyze: During this phase, you analyze the business and user
requirements. At this point you also familiarize yourself with the type of data you have to
accommodate and the fields it contains.

Phase 2 ~ Design and Deploy: During this phase, you create, modify, and save the
template design (.ifd) file. When you finish designing the template, you compile it for use with
Central or Web Output Pak. The compiling process creates an output template file (.mdf).
You distribute the output template to your user community. If you are compiling a template
design for use with HTML Agent in Web Output Pak, Output Designer also creates a
corresponding HTML (.htm) file, to use as a starting point in your Web Output Pak
application.

Templates as Part of a Larger Solution


As discussed earlier in this guide, the templates you create in Output Designer do not exist on
their own, but are part of a larger end-to-end solution. Specifically, you create templates to
integrate with Central or Web Output Pak. With this in mind, you need to be aware of how each
of those applications uses and processes compiled template files.
The Output Designer Processes

Adobe Output Designer


Developing Templates

Basic Template Design

40

Using Templates with Central


Central is a background processor that merges a data file with an output template (.mdf). It
includes a number of output Agents that process the data and template, and direct the output to
a variety of presentment targets. These different Agents provide such services as printing,
faxing, e-mail routing, and output to PDF format.
Central monitors its collector directory for transaction files, and passes the work to the
appropriate Agent(s). The Agents use the output template (.mdf) when merging data.
As the template designer, you create the output template (.mdf) file using Output Designer. In
addition to templates that are used for a single presentment target, you can create templates
that support multiple presentment targets.
Output Designer also enables you to import files from other applications and compile them in
the correct format required by Central. This means you leverage existing forms or documents
and use them as the starting point for a template.
For complete information about integrating your templates with Central, see the Central
documentation suite.

Using Templates with Web Output Pak


Web Output Pak can present data to standard Web browser through two different output
Agents:

PDF Agent

HTML Agent

A Web Output Pak application calls PDF Agent when it needs to merge data with an output
template and present the results in PDF format through a standard Web browser. The output
template that PDF Agent requires must be a template (.mdf) file. You create this template in
Output Designer and compile it for the PDF presentment target.
A Web Output Pak application calls HTML Agent when it needs to merge data with an output
template and present the results in HTML format through a standard Web browser. HTML
Agent requires an HTML template that identifies where the merged data items will be placed.
You can use Output Designer to create an HTML template that contains all the necessary fields
and boilerplate. However, the HTML template that Output Designer produces is only the
starting point for the final output template. You will need to do additional editing of the template
using an HTML authoring tool.
For information about creating complete templates for use with HTML Agent, see the HTML
Agent Reference guide. For complete information about integrating your templates with Web
Output Pak, see the Web Output Pak documentation suite.

Adobe Output Designer


Developing Templates

Basic Template Design

41

Elements of a Template
When you create a template design, you place a combination of objects onto one or more
pages. A page contains a collection of objects. In Output Designer, a page is not necessarily of
a fixed size, but is frequently fluid in size. This is determined by the type of template (static or
dynamic) and the amount of data it needs to accommodate. The types of objects available to
you include text, graphics, and presentment fields. Output Designer gives you all the tools you
need to build the template in its easy-to-use graphical environment. For more information about
pages, see Working with Pages on page 57.
Text and graphical objects form the static elements on a page, the elements that remain the
same regardless of the data. We refer to these static elements as boilerplate. In an electronic
template, a page also contains fields, which are the areas that present the variable data. When
an application such as Central processes a request, its output Agent merges the source data
into the field areas on the output template.
When you save a template design, Output Designer combines all the elements to create a
template design file. You then compile the template design to create a template that works with
other Adobe products.
Building a Template

Adobe Output Designer


Developing Templates

Basic Template Design

42

Types of Template Designs


You can create two different types of templates using Output Designer. The two types of
templates are:

Static

Dynamic

It is extremely important to understand the difference between these two types of templates,
and how they could fit into your overall e-document presentment solution. Your users
requirements will dictate whether you create a static template or a dynamic one.
Example of a Template
Output
templates can
use different
logos and
colors to meet
locale specific
needs.

In a dynamic
template, this area
expands or
contracts to
accomodate the
exact amount of
data.

In a static
template, this
area is fixed in
size. It
remains the
same
regardless of
the amount of
data.

Static Templates
By static template we mean a template that presents the same text, graphics, and field areas to
all recipients all the time. Only the user specific data presented in the field areas differs from
one recipient to another. The template does not flex to different amounts of data, nor does it
eliminate any elements that are irrelevant to an individual user.
A static electronic template is analogous in appearance to a classic paper-based form. Such a
form contains a fixed amount of text, graphics, and field areas. As a recipient of the form, you
see the same messages and the same field areas as any other user. While the information
specific to you is certainly reflected on the form, the static form also shows additional areas that

Adobe Output Designer


Developing Templates

Basic Template Design

43

are either blank or irrelevant to you. This is also true of a static template. If the template is
designed to display ten line items in a purchase order, and only four items are present, the
recipient still sees a template with space allocated for ten line items.
In Output Designer, there is one type of static template that behaves somewhat differently than
normal static templates. These are multipart templates. For information about multipart
templates, see Multipart Templates on page 54.

Dynamic Templates
A dynamic template presents text, graphics, and field areas that flex according to the needs of
the recipient. In contrast to a static template, a dynamic template presents only those elements
and sections of the template that are relevant to the data requested.
A dynamic template is really a collection of subforms. You will learn more about subforms in the
section Developing Dynamic Templates on page 94. Most commonly, you use dynamic
templates when you need to present repeating data that varies in size according to the
recipient. Using the example of a purchase order, a dynamic template would show only the
number of detail lines pertinent to that order. You can also create dynamic templates whose
sections varyfor example, a legal will, where the client requires a very specific subset of all
possible clauses.
The users requirements will dictate whether a template is static or dynamic. When you wish to
present the same data to each user, and when the data does not repeat, then a static template
is an appropriate choice. Otherwise, a dynamic template provides greater flexibility for
presenting data.

DESIGNING A STATIC TEMPLATE


We have discussed what a template is, where it fits in your e-document presentment solution,
and the types of templates you can create using Output Designer.
In this section you will read about the process of creating a static template using Output
Designer. We have included a check-list that summarizes the sequence of steps, from
analyzing the requirements through to making the template available for production use.
Even if you are planning on creating a dynamic template, you should first understand how to
create a static template. A static template is the logical starting point for creating a dynamic
template. It affords you the opportunity to create a layout that reflects all the necessary pieces
of information in the order that the recipient will ultimately receive. Once the static template
meets your requirements, you can then break it apart into the elements required by a dynamic
template.

Adobe Output Designer


Developing Templates

Basic Template Design

44

Steps to Successful Template Creation


These steps summarize what you need to do to successfully create a static template. They form
the foundation for moving on to create dynamic templates.

Plan and Analyze


Before you even open Output Designer
1. Analyze the business and user requirements.
2. Understand the data.

Create and Deploy


When you start creating your template design
1. Define the presentment target(s) and set a default target.
2. Specify formatting for the overall template: font selection, set up gridlines, know field names
and sizes.
3. Draw the template: add pages, text, graphics, and field objects.
4. Test the template design. Revise and save the template design (.ifd).
5. Set default compile options.
6. Compile the template and save it.
7. Distribute the template file (.mdf or .htm) and integrate into the production environment.

Planning the Template


The most important stage in designing a template, static or dynamic, is the planning and
analyzing stage. The design process always begins with an analysis of the templates role
within the organization. Remember that your template is one piece of a broader solution. You
must then understand your data, and any impact it will have on the final template requirements.

Analyzing the Requirements


Analyzing the template requirements and planning for them early on means you will spend less
time reworking the template design. Before you even begin to build a template, consider its
purpose and use. Identify the following:

Adobe Output Designer


Developing Templates

Basic Template Design

45

User Requirements

Who are the recipients? Are they from one demographic, for example the elderly, or from a
broad spectrum?

Are they centrally located or geographically dispersed?

Are there special language requirements or cultural issues?

Application Requirements

What piece of the broader solution does the template fulfill?

How will the template be used? Will it provide the basis for information that the company
elects to distribute, or will it provide the response to a user-driven request?

Where will the template be used? Is it part of a multi-phased process that is distributed
globally, or will it be confined to a specific locale?

Does one template need to feed information to different recipients, with different information
needs?

Presentment Targets

How will the information be delivered?

What type of presentment targets are involved? Standard laser print only, or fax and e-mail
as well?

Is there a need to view the information online through a Web browser?

Organizational Standards

What are the organizations internal standards for look and feel, and consistency?

Do guidelines exist for the use of specific typefaces, styles and point sizes, acceptable color,
and logos?

Understanding the Type of Data


As the template designer, you will need to work closely with the individual(s) responsible for
administering your e-document presentment production systems. There are a number of data
related considerations that you need to take into account as you plan and build your template
designs.
It is important that you understand the type of data that will feed your template. Central can
accept data in five different formats: character-delimited, fixed-record, field-nominated, and
Xtensible Markup Language (XML). It is optimized to process data in field-nominated format.
Web Output Pak can accept data in two formats: field-nominated and XML.

Adobe Output Designer


Developing Templates

Basic Template Design

46

You can think of these data types as falling into two categories:

Template dependent

Template independent

Considerations for Template Dependent Data


Template dependent data relies on the structure of the template to output correctly. It is
sequential in nature. That is, the layout of the fields on the template must exactly match the
sequence of the fields in the data file. As such, this type of data has very little flexibility and is
not easily adaptable to other templates. Character-delimited data format is template dependent.
Only Central directly accepts this format.

Character-Delimited
This type of data is sequential or order dependent. A defined character, such as a comma,
separates the data elements in the data file. When Print Agent of Central reads the data file, it
places each delimited data element into the next field on the output template.
If you are working with this type of data:

The field order in the template is very important and must correspond to the order of the data
elements in the data file. Output Designer has a default field order, but you can change it
using Tools > Order Fields. For information about changing the field order, see Ordering
Fields on page 75.

The number of fields in the template must match the number of fields in the data for a single
record. If your data includes five fields per record, your template must include exactly five. If
there is a mismatch, the fields in your output template will display the wrong data. However,
you can designate some fields as invisible if you find there are fields that are not relevant to
the template design.

If using Test Presentment, you must use the same character delimiter for your template as is
used in the data file. You can specify the character delimiter in Output Designer by clicking
Tools > Options > Advanced. In your production environment, the output Agents have a
parameter to control this.

Considerations for Template Independent Data


Template independent data uses named field references. The template looks for the named
field, and places the data in the appropriate spot. This means that data can be easily reused
amongst different templates. You can add or remove data elements in the data file without
having a negative effect on the final output. Template independent data formats include
fixed-record, field-nominated, and XML. Both Central and Web Output Pak support
field-nominated and XML data formats. Only Central supports fixed-record data.

Fixed-Record
Fixed-record format stores fixed-length data values. This means that the size (in bytes) of each
value is predetermined and constant, regardless of the value itself. This data is very compact in
nature. It is used with small, very simple files that require little maintenance.

Adobe Output Designer


Developing Templates

Basic Template Design

47

While fixed-record data is more flexible than character-delimited, it does not have the same
flexibility as field-nominated data. With fixed-record data you cannot take advantage of dynamic
template processing.

Field-Nominated
Field-nominated is a simple format that provides a list of field name/value pairs. This data
format is an Adobe proprietary structure and follows the principle of separating the data from
the presentation.
Field-nominated data provides the most flexibility when you want to create professional
templates. If your data is in field-nominated format, you can:

Create dynamic output templates.

Incorporate intelligent pagination.

Take advantage of advanced processing features of Print Agent of Central and PDF Agent
of Web Output Pak.

Enable advanced formatting options, such as bolding data or changing a fields picture
format, on the output template.

XML
XML data affords you the same flexibility and enables you to tap into the same processing
power of the various output Agents as with field-nominated data.
XML tags are case-sensitive. However, the output Agents ignore the case in field names. This
means that the fields in your template design need not necessarily match the case of the tag
names in the XML data source.
Both Central and Web Output Pak can accept data in XML format.

Field Information
In creating a template, you will need to know some basic information about the fields in your
data file:

Field names: The exact spelling is critical. Output Designer is case-insensitive.

Field type: Determine whether the type is text, numeric, graphics, check box, or radio button.

Field size: Know the exact length of the field as it exists in the data file.

You will also want to understand whether a schema definition file exists, or whether there is an
existing list of field names that you can import into your template design.
For complete information about importing fields and using shcema definition files, see Schema
Definition Files on page 130.

Adobe Output Designer


Developing Templates

Basic Template Design

48

Use of Graphics
Graphics present another consideration as you design your templates. Your template can
include graphical images in a variety of formats. You have the option of embedding these
images directly into your template, or distributing them separately. Embedding them makes
distribution of the template easier, in that you need to supply only one file, the template. On the
other hand, embedding increases the overall size of the template itself. In consultation with your
administrator, you will need to decide which method is the most suitable for your production
environment.

Creating the Static Template


Now that you have analyzed your templates requirements, you can begin to create the
template.

Specify the Presentment Target(s)


When you start a new template design, or a project with multiple templates, the first step is to
specify the presentment target(s) that your template will use. Having analyzed your
requirements, you know what type of presentment target you are designing for - laser printer,
label printer, fax, e-mail, PDF, or HTML.
Different presentment targets have different printable areas, available fonts, and languages. By
specifying the presentment target, you design for these differences while you develop the
template, as well as when you compile it. The selected presentment targets change the
available formatting options.
To access the presentment targets

Click File > Presentment Targets.

Types of Presentment Targets


When it comes to selecting the presentment target(s), Output Designer offers two categories:

Your Windows default printer (as set in the Windows Control Panel).

Print Agent presentment targets.

Adobe Output Designer


Developing Templates

Basic Template Design

49

Presentment Target Selection Dialog Box

With either of these options, you can use features such as mixed orientation and page sizes,
and color printing. So how do they differ?

Microsoft Windows Drivers


When you use Microsoft Windows drivers, you are using device-independent printing. Microsoft
makes adjustments when the printer driver and printer do not match. The catch is that the exact
printout may vary depending on the printer manufacturers driver implementation.
With this option, Output Designer uses the Windows default values for fonts, page size and
page orientation. During development, each template is output to the Windows printer for which
you are configured. During production, output is based to the Windows printer for connected to
the server.
Non-Windows platforms cannot use Microsoft Windows drivers.
For information about selecting a Windows printer driver and printer setup, see the Output
Designer Help.

Adobe Output Designer


Developing Templates

Basic Template Design

50

Print Agent Presentment Targets


Print Agent presentment targets give you a much richer set of options, which take into account
the differences amongst the different output mechanisms. Print Agent presentment targets also
enable you to take advantage of extra features that Windows printers cannot provide. When
you use Print Agent presentment targets, the output Agents must direct the output to the
applicable presentment target.
Some of the advantages of selecting a Print Agent presentment target include:

Cross-platform electronic template solutions using identical templates. Templates


compiled to use a Windows printer driver will not print under UNIX. If you need to create
templates for use with Central on a UNIX platform, you must use a Print Agent presentment
target.

Faster output. By outputting directly to a presentment target in its native language, jobs are
completed more quickly.

Presentment target specific options. Print Agent presentment targets makes use of the
extended features of the presentment target that the Windows driver cannot access,
including memory, flash RAM, printer disk drives, and most particularly, macro capabilities.

Output to PDF and HTML formats. Print Agent presentment targets give you the means to
output to PDF, as well as HTML.

Consistent fonts. Print Agent presentment targets access the printers fonts, thereby
ensuring consistency, and accurate rendering of soft fonts. You can create and select soft
font cartridges, and also create an AutoFont cartridge. You access all of these font setup
capabilities through the Font Setup button in the Presentment Target Selection dialog box.

Compliant templates. Many organizations require the use of specific font typefaces. Print
Agent presentment targets enable you to force a particular font, thereby meeting the
requirements for compliant templates.

Automatic generation of page numbers, and date and time information. If you use Print
Agent presentment targets, you can take advantage of special fields that automatically
generate the number of pages in a template, as well as the system date and time.

Multiple presentment targets in a single template. Output Designer can generate a single
template (.mdf) file that accommodates multiple presentment targets. The best practice is to
select only the targets that you absolutely require, so as to keep the template file size to a
minimum. The multiple target selections are saved only in the template (.mdf) file; they are
not saved in the template design (.ifd) file. Only the Default Target is saved in the template
design (.ifd) file. If you need to reopen and recompile the template design (.ifd) file, you may
need to reselect the other presentment targets if the presentment targets selected in Output
Designer have been changed since the form was last compiled.

Output Designer provides an extensive list of presentment targets. If you cannot find a specific
presentment target, select one that uses the same printer definition language, such as PCL or
PostScript.
Output Designer also supports barcode and label printing for an expanded list of printers.
Check the documentation provided with your printer to ensure that your particular printer
supports the design objects on your template.

Adobe Output Designer


Developing Templates

Basic Template Design

51

Using Generic Presentment Targets


If you have printers for which there are no presentment targets available in Output Designer or
if your environment contains a heterogeneous group of printers, the Generic PostScript
presentment target or an older HP presentment target can often address these types of
situations.
The Generic PostScript presentment target creates the appropriate but most basic commands
necessary to drive the printer and generate your document. However, it does not create printer
specific commands for printer options such as input tray selection or finishing options. Also,
fonts and their spacing are handled in a best guess fashion, as a result of no printer specific
information.
Some manufacturers printer models emulate certain HP printer models; therefore, an HP
presentment target can be used for those printers. Check your printer documentation to see
what printer your printer emulates. As well, newer printers can often be driven with an earlier
presentment target for a manufacturers printer, but new printer features will not be supported.
For HP and Lexmark printers, you can usually use a presentment target from a printer in the
same family.
The Generic Microsoft Windows Driver is intended to be used when no other compatible
presentment target can be selected.
In this release of the product we moved from Zebra printer specific presentment targets to
Zebra generic presentment targets. The existing printer specific presentment targets are
organized under legacy printers in the Presentment Target Selection dialog box in Output
Designer. The new generic Zebra presentment targets are based on printer DPI (dots per inch).
The Zebra printer models vary by DPI and print head width, but they use a common firmware.
Refer to your Zebra printer documentation for more information.
The generic Zebra presentment targets have been tested with a variety of Zebra printers in the
High Performance (XiIII Plus) and Industrial and Commercial (Z6M Plus, 105SL, S600) model
lines, as well as Zebra RFID capable printers based on these printer models (R170Xi).
However, RFID is not a supported feature.

Formatting the Template


Having selected your presentment target, you should specify some formatting options before
you actually add any objects to the template. The main attributes to consider at this point are:

The name of the template, and other reference type information.

Special print capabilities of your presentment target, such as duplexing.

Repeating pages.

Single or multipart templates.

Adobe Output Designer


Developing Templates

Basic Template Design

52

To access most of the formatting options

Click Format > Template Design.


Template Design Dialog Box - General Tab

If you have not already done so, you will find it useful to configure the Output Designer
workspace to suit your personal requirements.
For more information on customizing, see Customizing the Output Designer Workspace on
page 29. For additional information about formatting, see the Output Designer Help.

Recording Reference Information


There are several pieces of reference information that are very useful for you to maintain when
you create templates, especially if you are working with other designers. You must manually
provide this information to Output Designer:

The templates name and description, which appear in the dialog box when you click File >
Open (this is not the file name).

The version number.

Creator and department.

Descriptive information that will appear before you open the actual template.

To access the name and reference information

Click Format > Template Design > General.

Adobe Output Designer


Developing Templates

Basic Template Design

53

Specifying Collating Options


Output Designer provides a variety of options for collating electronic templates. Before you
begin drawing your template design, you should know how many parts it will need to
accommodate. This is dependent, of course, upon how your data is constructed.
To access collating options for the template

Click Format > Template Design > Template Properties.

For any given template, you can select one of:

Single-part

Single-part with a repeating page

Multipart

Multipart sorted

Single-Part Templates
A single-part template contains one or more pages. Each page in the template looks different,
and contains different field information.
In Output Designer, single-part templates may be static or dynamic.

Single-Part Templates with a Repeating Page


If you are designing a single-part static template, you may designate one page as a repeating
page. When the template is merged with data, and there is more data than can fit on the
repeating page, that page repeats itself until there is no data left in the file or until a different
page is specified.
Repeating pages are useful when you know that there is more data than will fit the physical size
of the page. A good example is a static memorandum template. The template contains typical
header information for the memo on the first page, as well as a field to capture the body text of
the memorandum. You know that the length of the body text will vary from one occasion to the
next, and will frequently extend beyond the space allocated on the page. To accommodate this,
you can make the page a repeating page. When the data and the compiled template merge, the
page repeats until there is no more body text to place.
Youll need to give some thought as to how you design a template with a repeating page.
Consider the example of the memorandum above. Page 1 of the template contains not only the
message text field, but also the header section with the fields that specify the distribution list:
To, CC, From, and Subject. Assume that only the message text will vary in length.
If you specify page 1 as a repeating page, all of the elements on the page will repeat if there is
more data than can fit in the message text area. However, the repeated header section will
contain parts of the overflow message text.

Adobe Output Designer


Developing Templates

Basic Template Design

54

A solution is to add a second page and make it the repeating page. Page 2 can contain
boilerplate and a single multiline field. When the message text field on page 1 is filled, the
overflow data automatically flows into the first field on page 2. Page 2 will continue to repeat
until all the data is exhausted.

Multipart Templates
Multipart templates have more than one page. Each page is a different version of the original
page. These templates emulate pre-printed multipart forms with carbons.
Commonly, these templates specify a different organizational area on each partsuch as part
1 for Accounting, part 2 for Receiving and part 3 for the vendor. When you output the template,
all the page 1s print, then all the 2s, and so on.
In Output Designer, multipart templates are always static. When creating a multipart template:

Include every field in your data file on each part of the template.

Have each field follow the same order in each part of the template.

If some fields do not apply to all parts of the template, you have two options:

Format the fields that do not apply to a specific page in NoPrint font.

Place the fields that do not apply to a page in the off-page area.
Multipart Template for Three Purchase Orders
Purchase Order for
Company A

Purchase Order for


Company B

2
Part 1

Purchase Order for


Company C

2
Part 1

2
Part 1

Multipart Sorted Templates


Multipart sorted templates produce similar results to a standard multipart template, but in this
case, all the data prints on part 1 of the template, then on part 2, and so on. This emulates
printing on carbonless multipart templates, but with separation and collating of each part of the
template.
In Output Designer, multipart templates with sorting are always static.

Adobe Output Designer


Developing Templates

Basic Template Design

55

Multipart Template with Sorting for Three Purchase Orders


Purchase Order
Part 1

Purchase Order
Part 2

Purchase Order
Part 3

Company A

Company A

Company A

Formatting Individual Pages


As discussed earlier, each template contains one or more pages. Each page contains a
collection of objects. You can apply different formatting options to each page.
To access the formatting options for a page

Click Format > Page.


Format Page Dialog Box

Specifying a Page Name


When you launched Output Designer, it automatically created a new blank page for you. At this
point, you should give the first page of your template design a name. Explicitly naming the
pages in your template provides for better organization and is much more meaningful than a
simple number.
You can assign a name up to 50 characters in length to each page in a template design. If you
dont assign a name, Output Designer automatically assigns a sequential number as the page
name, based on the number of pages. For example, if the template contains three pages,
Output Designer names them 1, 2, and 3. Each time you add a page, another page icon
appears in the control bar.

Adobe Output Designer


Developing Templates

Basic Template Design

56

Setting Output Options


You should also specify the paper size and orientation for your template design, as these will
have a dramatic effect on the overall space available on your template. Your choices for paper
size will vary according to the capabilities of the presentment target(s) you select.
These attributes can differ from page to page. For example, the first page may have an
orientation of Portrait, while the second page may be Landscape and output to a different size
of paper.
For information about adding and designing pages, see Working with Pages on page 57.

Drawing the Template


Now you are ready to begin drawing your template. Output Designer supports a natural way of
designing. By natural, we mean a process that involves organizing the objects on the page in
the order that you want to present the data, typically top to bottom. This is how the template will
ultimately be viewed.
Top to bottom is also the way in which the various output Agents lay down the data when
merging it with the template. This becomes especially important with dynamic templates. As
you will see, once the output Agent leaves a subform to go to the next, it cannot go back to a
previous subform.
In this section you will read about:

Working with pages.

Adding text and graphics.

Adding fields, and the types of fields available to you.

Adding tables.

Ordering the fields.

Design Tips
It might be useful to review these tips. They will assist you in designing the template:

Make sure that you have already set these attributes for your template design: presentment
target, page size, and orientation.

Review the section Customizing the Output Designer Workspace on page 29, for
information about setting rulers and grids, and using the Toolbox and Tear-offs.

Start by drawing all large objects on the template. Next, draw all of the most frequently
occurring objects and duplicate them wherever possible.

When placing text objects and fields onto the page, set them roughly into place. Fine-tune
the placement after you have added all the objects, and adjusted their formatting and
contents.

Adobe Output Designer


Developing Templates

Basic Template Design

57

Leave special effects, such as shading, to the end of the drawing process.

As you work, test the template design periodically. It is better to find an error early on. To test
the template design without leaving Output Designer, click File > Test Presentment. For
more information, see Testing Your Template Design on page 76.

Working with Pages


Each template design begins with a page. Output Designer automatically created the first page
for you. Before continuing, you should name and format the first page. See Formatting
Individual Pages on page 55.
When you want to create a new page in the template, you can either insert it before the current
page, or add it after the last page. To create a new page, click Insert > Page.
If you have multiple pages, click the appropriate Page icon to move from one page to another. If
you named the pages in your template, use the Page and Subform Name drop-down list to
move to a different page.
Page and Subform Name Drop-Down List

Techniques for Adding and Formatting Objects


Now you can start placing objects on the blank page. Always keep in mind the type of data you
are designing for and the contents of the data file.
Output Designer makes it easy to add a variety of objects to your template design. There are
four types of objects that you can add: Fields, Text, Graphics, and Tables.
To add an object to the template design

Select the desired tool from the Toolbox, and then draw or place the object on the page.
See the Toolbox on page 24.

To select objects on the page

Use the Pick tool to select individual objects or groups of objects. See Selection Tools on
page 27. To select all the objects at once, click Edit > Select All.

To set attributes for an object

Use the commands on the Format menu, or the Graphics, Font, Field, and Position
Tear-offs. See Tear-Offs on page 17.

For additional information about techniques for adding and formatting objects, see the Output
Designer Help.

Adobe Output Designer


Developing Templates

Basic Template Design

58

Design Techniques Available Through the Area Menu


Before looking in detail at the different types of objects, you should be familiar with some key
techniques that will simplify your work and assist you in creating professional looking business
templates. The Area menu contains a number of commands that you will use on a regular
basis.
For detailed information about using each of the commands on the Area menu, see Output
Designer Help.
Area Menu

Aligning Objects
As you re-position the objects on a template, you will most likely need to fine-tune their
alignment with one another. To adjust the horizontal and vertical alignment attributes of a group
of objects, click Area > Align Area.
In some situations, you may find that objects are no longer aligned with the grid. This can occur
if you scale a group of picked objects, or even if you change the grid settings in the middle of
drawing your template design. To realign the objects to the nearest intersection point on the
grid, click Area > Grid Area.
For complete information about aligning objects, see the Output Designer Help.

Copying Objects
Undoubtedly you will need to duplicate objects in your template design. Output Designer
provides you with different methods of replicating objects and object groups:

Copy Multiple: Click Area > Copy Multiple to replicate a single object or group of objects, a
specified number of times, in a new location on the template. This tool enables you to
accurately position copies of an object. It also eliminates the need to copy an object
repeatedly. Suppose you need to create seven fields to capture address details. Instead of
creating and placing each field separately, create the first field, and then use Copy Multiple
to create 6 copies, immediately below the original.

Adobe Output Designer


Developing Templates

Basic Template Design

59

Duplicate: Click Area > Duplicate to copy an object or group of objects on the template.
Each new object has the same attributes as the original object. If you duplicate the same
object several times in a row, Output Designer places each new copy with the same offset
relative to the previous copy. This is handy for evenly spacing duplicated objects.

Copy: Click Edit > Copy to create one copy of the selected object or group of objects. When
you paste your selection, Output Designer places it directly on top of the original and leaves
it selected to facilitate moving it. You must then move it to the desired location.

For complete information about copying objects, see the Output Designer Help.

Making Global Font Changes


Templates can become quite complex and contain a mix of different font faces and sizes.
Output Designer offers great flexibility for changing the font type and size for individual objects
and object groups. These methods are outlined in Formatting Text Objects on page 70, and in
Formatting Fields on page 61.
Suppose, however, that you need to make a global change to one of the fonts in your template.
For example, the accepted company font changes from Arial 12 to Times New Roman 12. How
do you change only those objects that are Arial 12, whether they be text or field objects?
You can do this using Area > Change Area Font. The process is very similar to a global search
and replace. You tell Output Designer the name of the font to change and its size, and the
name of the font and size you want to replace it with. Output Designer searches through the
picked field and text objects for the font and size that you specified, and replaces it with the new
font and size.

Grouping Objects
Grouping objects is a very efficient way to work when you are designing a template. It is
particularly useful when you know a group of items will be close together, but are not certain of
their ultimate location. By grouping them, you can move them around the page without them
losing their positional relationship to one another. But what happens when you want to change
the attributes of one of the objects in the group?
The Output Designer grouping capability enables you to pick a single object within a group, and
change its attributes without disturbing the integrity of the group. Simply pick the group, and
then click the desired object. This is useful for changing the attributes of fields within a group, as
well as text objects.
Grouping is available by clicking Area > Group Objects. You can easily ungroup a collection of
objects by selecting the group and then clicking Area > Ungroup Objects.
Another extremely useful aspect of object grouping in Output Designer is the ability to add a
new object to an existing group. Simply select the group and the new object(s), and click Area
> Add to Group. Similarly, you can remove an object from a group by selecting the individual
object and using Area > Remove from Group.
For complete information about grouping and ungrouping, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Basic Template Design

60

Tracing a Paper Form


You can create a template design from a scanned image of a paper-based form. The scanned
image serves as a background template, that you trace over to create a template design. The
image must be saved in a graphics format that Adobe supports.
For a list of supported graphics formats, see Supported Graphics Formats on page 172. For
additional information about tracing, see the Output Designer Help.
To trace an existing form, click Tools > Trace Template.

Zooming
When you are first placing objects on your template design, you may find that zooming out to a
smaller size enables you to see the entire template, thereby assisting you in placing objects on
the template. You can zoom into or zoom out of any area of your template design and still
perform regular drawing and editing functions.
To access the different zoom levels, or specify a custom zoom level, click View > Zoom. Each
zoom level has a corresponding keyboard shortcut that you can use. If you want to
automatically zoom out, you can also press SHIFT + RIGHT-CLICK MOUSE.
To zoom in to a specific area that you have selected, press CTRL + RIGHT-CLICK MOUSE.
For more information about zooming, see the Output Designer Help.

Using the Template Object Library


Another time saving technique that you can take advantage of when adding objects to the form
design is the Template Object Library. This library enables you to reuse template components
without having to create them from scratch.
The Template Object Library contains individual fields, graphics, text items, grouped items and
complete form designs. For information about the Template Object Library and how to use it,
see Template Object Library on page 124.
From within Output Designer, use the Library Tear-off to access the Template Object Library.
For information about the Library Tear-off, see Library Tear-Off on page 19.

Adding Field Objects


Field objects are those elements on your template that display the variable data that is merged
with the template. Fields are one of the first elements you add to the template design. The fields
on your template correspond directly to the information in your data file. Fields on your template
must match the fields in your data file in these ways:

Field names

Field types

Adobe Output Designer


Developing Templates

Basic Template Design

Field length

Field order (depending on the data)

61

For more information about fields, see the Output Designer Help.

Placing Fields
You add fields to the template using the Field tool in the Toolbox. There are essentially two
ways to do this:

Point and click: Select the Field tool and just click on the page in the desired location. With
this method, each field you create starts out being the exact same number of characters,
and the same height and width. The default width is 10 characters, and the default height is
1 line. You can change the defaults by clicking Tools > Options > General and specifying a
different value for Default width and Default height.

Draw field mode: Select the Field tool and then draw the field to the desired size on the
page. To use this method, you need to click Tools > Options > General and select Use
draw field mode. When you set this option, Output Designer ignores the Default width and
Default height settings.

Formatting Fields
Once you place one or more fields on the page, you need to specify the field type, name, and
size, as well as an assortment of other field attributes. To do this, use one of these methods:

Select the field(s) and click Format > Field.

Select the field(s) and use the Field Tear-off.

Select the field(s) and press CTRL+F.

Select the field and press the SPACE BAR.

Double-click the field.

With the exception of the Field Tear-off, each of these methods opens the Field Format dialog
box. If you selected a single field, the Field name box displays the name of that field. If you
selected multiple fields, the value in Field name is (Various).
Format Field Dialog Box

Adobe Output Designer


Developing Templates

Basic Template Design

62

Specifying a Field Type


The first attribute of a field that you should specify is the field type. The field type corresponds to
the type of data that the field will display and should match the type in your data file. Depending
on the fields type, different formatting options become available.
Field Type Drop-Down List

There are five different field types:

Check Box

Graphics

Numeric

Radio Button

Text

Check Box Fields


A Check Box field specifies the field is a check box. Use Check Box fields to represent multiple
choice selections in the output. Check boxes are not mutually exclusive. If you need to
represent a set of options in which only one selection is permitted, use a set of Radio Button
fields.
If a field is designated as a Check Box, and the data file contains data for the field, the data
appears inside the box. What is displayed in the box is whatever is in the data. Frequently, this
is a single character like an x. For example:
A template design contains three Check Box fields: Country, Jazz, and Classical.
The corresponding data file contains:
^field Country
x
^field Jazz
^field Classical
x

The output template, when merged with the data, will look like this:

Adobe Output Designer


Developing Templates

Basic Template Design

63

You can format the Check Box field with a font that produces a more desirable output than what
you typically find in a text data file. The font you specify for the Check Box field overrides the
font used in the data file.

Graphics Fields
A Graphics field specifies that a graphic image named in your data file will display in the field in
the output template. To adjust the size, use the pick handles when you select the graphic field.
The output Agent then displays the graphic at the correct size and resolution.
You can choose to embed these types of image files inside your template to facilitate
distribution. See Embedding Graphic Images on page 74.
If you do not embed the images in the template, the data file must include the path to the image.
For example, a product catalogue contains a part description and a picture of the part. The
template for an order contains these fields: Description (Text field), Picture (Graphics field), and
Cost (Numeric field).
The data file would like:
^field Description
Tent
^field Picture
c:\pictures\tent.tif
^field Cost
199.95
^field...

For additional information about referencing graphics in your data file, see the Print Agent
Reference guide.
Output Designer gives you the ability to specify the folder where the graphic files are stored.
This means that you do not have to supply an absolute path to the file(s). By default this
location is c:\Program Files\Adobe\Output Designer 5.7\Logos. You can change this
location at any time by clicking Tools > Options and specifying a new location on the File
Locations tab.

Numeric Fields
A Numeric field contains numeric values. The data in this field must be a number.
To format the output of a Numeric field with such characters as a thousands separator (,),
decimal symbol (.), or currency symbol ($), you must assign a Picture attribute to the Numeric
field. If you do not assign a picture clause, the output will be formatted as it appears in the data
stream.
For more information about the Picture attribute, see page 66.

Adobe Output Designer


Developing Templates

Basic Template Design

64

Radio Button Fields


This field type specifies that the field is a radio button. Use a Radio Button field to represent a
choice within a group of at least two options. You must create one Radio Button field for each
choice that you want to display. From a good design perspective, the output should show one
option within the group as being selected.
Radio Button fields function in a similar manner to Check Box fields. To have a Radio Button
appear selected in the output, there must be data in the corresponding field in the data stream.
What is displayed inside the button is whatever is in the data.
As with any other field, you can format a Radio Button field to use a font that produces more
desirable output than the font used in the data file. For example, you could specify a font that
produces special characters such as bullets or check marks.

Text Fields
A Text field contains alphanumerical values. Every field that you add to your template design, is
by default, a Text field.

Setting the Remaining Field Attributes


After you specify the field type, you can set additional field attributes. Some of the field types
can accommodate the complete set of attributes in Output Designer. Others, such as the
Graphics field, support a reduced set.

Field Name
Output Designer assigns a default name to each field you create. You should change the
names to match those in your data file.
Field Name Box

When you assign field names, there are certain considerations you should keep in mind:

Field names must be 50 characters or less.

Field names should be alphanumeric and can include the $ (dollar sign) and _
(underscore) characters.

The first character in a field name must start with a letter or the $.

There are a number of characters reserved for internal purposes that should not be used in a
field name.
For the list of reserved characters and field names, see the Output Designer Help.

Output Designer reserves several field names for the generation of page numbers, system
time, system date and e-mail related fields. These should not be used as field names.

Adobe Output Designer


Developing Templates

Basic Template Design

65

If one is available, you can refer directly to a schema definition file to define field information.
This will ensure that the fields you use have the same field attributes with respect to field name
and field size. For more information about using schema definition files, see Schema Definition
Files on page 130.

Width and Height


The size of a field is defined in terms of its Width (number of characters) and Height (lines of
characters). There are two ways to specify the size of a field:

Use draw field mode is set: You draw the field to the desired size. The physical size of the
field, as well as the font typeface and size, determine the Width and Height attributes. If you
change the font to a smaller point size, the font decreases but the overall size of the field
remains the same. You will see more whitespace around the font area. Increasing the
original font to a larger point size increases the physical size of the field. Sizing the field
adjusts the Width and Height values accordingly.

Use draw field mode is not set: The values you set in the Width and Height boxes
determine the size of the field. The physical size is also affected by the font typeface and
size specified for the field.

Font
Use the Font attribute to specify the font and character formatting attributes for the fields on
your template design. You can control the typeface, the font size, the font format, justification,
margins, and line spacing.
In addition to the standard offering of typefaces, Output Designer provides you with a special
typeface called *NoPrint*. It is the very first font listed in the Typeface drop-down list. When
you use NoPrint to format Text and/or Fields, nothing appears in the output. This typeface is
useful for such things as global fields that are used in calculations or fields used to trigger the
usage of a subform.
For complete information about how to set the Font attribute, see the Output Designer Help.

Rotate
The Rotate attribute specifies the angle of rotation for the field. You can rotate fields in
multiples of 90 degrees, depending on what your presentment target supports.
You can apply the Rotate attribute to Text, Numeric, and Graphics fields, but not to Check Box
and Radio Button fields.
Note: Output Designer does not support the rotation of multiple-line fields. If the rotate
property for a multiple-line field is changed to something other then 0 (the default),
Output Designer will automatically convert the multiple-line field to a single-line field. At
the same time, Output Designer will gray out the height property for the field.

Adobe Output Designer


Developing Templates

Basic Template Design

66

Associated Text
You can use the Associated text attribute to provide design comments or additional
information about the field. This is useful for your own reference, or for other designers who
may work with the template. This information is visible only to template designers when they
open the template design (.ifd) file and is not visible in the output.
If you need more space to complete your comments, click More text.

Picture
Use the Picture attribute to specify a picture clause for a Text or Numeric field. The picture
clause determines the formatting of the value in the output. You can select a pre-defined value
from the drop-down list, or type in your own value. If you add your own value in this manner, it
will apply only to the selected field. However, you can create new permanent values by adding
new lines to the Registry under the section .../JfDesign/FieldPictures. These will appear in the
Picture drop-down list and be available to all fields.
Picture Drop-Down List

For Text fields, picture clauses can specify, among other things, when to apply an upper case
or lower case character, as well as a number placeholder. However, you will most likely use
picture clauses primarily with Numeric fields, where they can specify such things as:

The application or removal of leading zeros and spaces.

Where to use a decimal point and thousands separator.

Currency symbols.

Inserting a CR after positive values or a DB after negative values.

Applying parenthesis for negative amounts.

If you specify a Picture attribute for a Numeric field, it must relate to the data that will be
formatted in the output. If the data contains more digits than that specified in the picture clause,
an overflow situation occurs. An overflow situation results in the output of * (asterisk)
characters, equal in length to the length of the picture clause. For example, the output of a
Numeric field with a picture clause of 9.99 and data of 150.01 will be ****.
For a complete description of the available picture clauses, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Basic Template Design

67

Here are some examples of applying the Picture attribute to a Numeric field in the template
design and the resulting output.
Picture Clause

Value in Data

Output

$,$$9.99

108.99

$108.99

$,$$9.99

$195,108.99

********

99

106.32

**

99

20

20

99

02

$zz,zz9.99

1053.236

$ 1,053.24

$zz,zz9.99

108

($,$$9.99)

-53.26

($53.26)

$,$$9.99DB

53.26

$53.26DB

108.00

Note: During the processing of a dynamic template, it is possible to override a picture clause
assigned to a field using the Picture attribute in Output Designer. This situation would
occur if the preamble file, JFPREAMBLE, contained the Inline Text Control Command
\pic, which specified a different picture clause. However, the resulting output is
unpredictable and it is recommended that you avoid this situation.
For information about Inline Text Control Commands, see the Print Agent Reference
guide. For more information about JFPREAMBLE, see Processing a Dynamic
Template on page 138.

Barcode
If you want the field to print as a barcode, set the Barcode attribute. When you click Barcode,
a list of available barcode types appears. The type of barcode you pick determines the
formatting that is applied to the field value when it is output. A Barcode field can be either Text
or Numeric.
If necessary, you can customize an existing barcode in number of ways. You can adjust the
length of your barcode or have it include readable text. You can also adjust the width of the
black and white bars of a barcode. To customize a barcode, you will need to modify the
\Config\Barcode.xxx file. The extension (.xxx) of the Barcode file depends on the presentment
target that you have selected.
Barcode fields are different from Barcode labels. The output varies according to your data. If
you need to create a template containing a static barcode, use the Barcode tool in the
Toolbox. See Barcode Tool on page 26.
For information about setting up and customizing barcodes, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Basic Template Design

68

Adding Table Objects


Tables are objects consisting of rows and columns that contain fields. Tables provide a
convenient method of formatting recurring fields in a static template. All the fields in a single
column have identical attributes.
An excellent use for tables is the detail line section in a static purchase order.
Note: You would probably not use the Table tool in a dynamic template. A better strategy
would be to create a single detail line and place it in a subform. For more information
about subforms, see Subforms: Building-Blocks of a Dynamic Template on page 95.

Placing Tables
Add tables to your template using the Table tool in the Toolbox. When you add the table to
your template, Output Designer creates four columns and six rows by default. You can easily
change these settings to accommodate the number of columns (fields) and rows (records) you
need.
Keep in mind that tables are not dynamic. The number of columns and rows that you draw on
your template will appear on the output template when it is merged with data, regardless of
whether there is data to fill them all.

Formatting Tables
You assign the same formatting attributes to the fields in a table as you would to regular fields.
By double-clicking on the table itself, you can access the formatting options for the table.
Format Table Dialog Box

Because the table represents rows of repeating data, Output Designer automatically associates
a field with each column. It assigns a default name to each field and sets a default width for
each column. You adjust the width of any column by moving the vertical bar that separates any
two columns. This will also change the size of the associated fields.

Adobe Output Designer


Developing Templates

Basic Template Design

69

As with any other field, Output Designer shows you the field name and dimensions in a ToolTip
when you hover the mouse cursor over the field.
Column titles

ToolTip showing field name and size

Field definition
row
Repeating
rows, evenly
spaced

Adding Text Objects


Text objects constitute much of the static information on your template design. Unlike a text
field, the contents of a text object always remains the same, it never changes according to what
is in the data file. Use text objects for:

Headings

Field labels

Static pieces of information such as a companys name and address

To create a text object, use the Text tool.

Types of Text Objects


There are two types of text objects that you can create:

Text label

Text block

Text Label
A text label is ideal for small amounts of text, such as field names and headings in a table. Their
main advantage is that they automatically resize when the font and/or spacing changes.
To create a text label you select the Text tool, find the desired location on your template design,
and click the left mouse button and begin typing. You can also paste text from the clipboard into
a text label.
A text label can contain multiple fonts and can be more than one line. However, text labels do
not have automatic word-wrap or any predefined boundary. You must manually control the
length of a line, and when a new line begins.
For more information about creating Text Labels, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Basic Template Design

70

Text Block
A text block enables you to specify the exact area into which your text will fit. You use the Text
tool to draw an area to enclose the text, and then type the text within this area. Output Designer
automatically word-wraps text within a text block. If you have more text than fits in the block,
simply resize the text block until all the text is visible.
You can also paste text from the clipboard into a text block, or import text from a file. To import
a file, click Insert > File.
For more information about creating Text Blocks, see the Output Designer Help.
If you import a text file, you can also specify its symbol set. Different languages support
different symbol sets. For example, text created in MS-DOS uses the symbol set PC-850, while
text created in Windows Notepad uses WinLatin1. Output Designer uses the symbol set to
correctly translate the text that you are inserting, without loss of information. To specify a
symbol set, select an item in the Encoding drop-down list when you are selecting the file to
insert. The most common symbol sets are WinLatin1, the default symbol set, and PC-850.
For more information about supported symbol sets, see the Print Agent Reference guide.

Formatting Text Objects


Once you add text objects to your template design, you can reposition, format, and edit them.
The formatting attributes you can set include:

Font typeface (Arial, Helvetica, Times New Roman etc.)

Size of the font

Style: Bold, Italic, Underline the selected text or an entire word, or DoubleUnderline the
selected text

Alignment

Line spacing

Margins from the edge of the text box

You can set default font attributes for text for your entire template design. You can also specify
different font attributes for specific text labels or blocks.
For more information about formatting text objects, see the Output Designer Help.

Setting the Default Font


You can specify a default font for all text objects in your template design. Set this font before
you place any text objects on the page.
To specify the font, click Format > Font or use the Font Tear-off. Each text block that you add
will be in this font until you specify another one.

Adobe Output Designer


Developing Templates

Basic Template Design

71

Setting the Font for Individual Text Objects


If you want to adjust the font typeface, size, style or alignment for one or more text objects,
simply select the objects and change the font using any one of these methods:

Use the Font Tear-off.

Click Format > Font.

Select the text object and press CTRL+T.

Select the text object and press the SPACE BAR.

Double-click the text object.

Editing the Text in a Text Object


It is very easy to change or correct the contents of a text object. Simply pick the text object with
the Pick tool, and begin to type. The new characters appear at the end of the existing text.
You can also use the Edit Text tool in the Toolbox to simultaneously select the text object and
place yourself in edit mode.
When you are working with text objects, either editing or typing new text, you will find these
keyboard shortcuts handy:

ARROW keys move the insertion point right, left, up, and down.

HOME moves the insertion point to the beginning of the current line.

END moves the insertion point to the end of the current line.

CTRL+ HOME moves the insertion point to the start of the text within a text object.

CTRL+ END moves the insertion point to the end of the text within a text object.

Rotating a Text Label


Rotating a text label is useful when you are working with restricted space, or want to enhance
the look of text on your template design by placing in on an angle.
To access the rotation option, pick the text label and click Format > Text.
These rules apply to the rotation option:

You can rotate text labels, but not text blocks.

You can rotate single line, single font text labels, but not multiple line labels. Output Designer
will convert a multiple line label to single line.

Your presentment target must support text rotation. How much you can rotate the label
varies according to the presentment target. The standard choices are 0, 90, 180, and 270
degrees. Some presentment targets support text rotated at any angle. In this case, you can
specify a specific number of degrees.

For more information about rotating text, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Basic Template Design

72

Additional Tips for Formatting Text Objects


Consider the following as you design your templates:

Text blocks are more flexible than text labels. Text blocks are easier to position and format
because you can see the edges of the text object.

If text appears too close to lines, pick the text block and change the margins or justification.
Using this approach, you can continue to work with the same grid setting.

If you are working at a reduced zoom level, you may notice that the text is not displayed as
real characters. Known as greeking, this means that at a particular zoom level your text is
displayed as symbols so that it draws more quickly on the screen. To view the text normally,
simply magnify your view. To change the minimum font size that can display without
greeking, click Tools > Options > View and change the value for the Minimum font size.

Adding Graphic Objects


Most likely you will want to include graphics of some type in your template. In addition to
equipping you with some standard drawing tools, Output Designer enables you to place graphic
images in your template. You should add graphics early in the development of your template,
as they typically occupy a significant position in the overall layout.

Using the Drawing Tools


The Toolbox includes a variety of drawing tools that you can use to create simple graphical
images in your template. You can draw circles, rectangles, lines, diagonal lines and arcs. You
can combine individual shapes to form larger objects and then group them.
Formatting these shapes is very straightforward. Using Format > Graphics, you can set a
number of different attributes for the objects you draw, including:

Shading: the pattern applied to the inside of the object. Note that the available shading
patterns depend on your presentment target.

Line width: the width of the lines in the object.

Line style: the style of the line - Solid, Invisible, or Fastdots.

Arc angle: the angle, in degrees, of an arc.

Circle/corner radius: the radius for circles or the corners of rounded boxes.

Example
A very common drawing activity is to manually draw each cell of a table row, then group them
together to form one object. This becomes especially useful when you are creating a detail line
in a subform of a dynamic template. There are a variety of ways to accomplish this. One very
efficient and precise way is to use a combination of the Rectangle drawing tool, and the Copy
Multiple, and Group Objects commands.

Adobe Output Designer


Developing Templates

Basic Template Design

73

To draw the table


1. Using the Rectangle tool
in the detail line.
2. Using the Text tool

, create a simple rectangle. Make it the dimensions of one cell

, add a text label to the cell. In this example, we use Column 1.

3. Using the Pick tool


, pick the rectangle and the text label, then click Area > Copy
Multiple. Create as many copies as you need to have for each column in the detail line.
4. Using the Text Editor tool
, change the text labels to read Column 2, Column 3, and so
on. You should see something like this:

5. Using the Pick tool


Objects.

, drag a rectangle around all the objects and click Area > Group

6. Pick the group, click Format > Font and select Bold.
7. With the group still picked, click Format > Graphics and apply a light shading. The final
result should look like this:

Over time you will find that you need to reuse these type of drawn objects. These are perfect
candidates for submitting to the Template Object Library. See Template Object Library on
page 124.
For more information about using the drawing tools, see the Output Designer Help.

Placing Graphic Images in Your Template


There are three different ways to place graphic images in your template. The method you use
depends on the purpose of the graphics in your template:

Use the Logo tool in the Toolbox to place a graphic image, such as a company logo, on the
boilerplate.

Create a Graphics field to bring in a graphic image named in the data stream.

Use a Text field and the ^graph command in the data to display a graphic in a field that
could at other times display data.

If the graphic is part of the data stream, the ideal approach is to place the graphic in a Graphics
field. Even though you could use the ^graph command technique, it is best to try and keep
commands out of your data.

Adobe Output Designer


Developing Templates

Basic Template Design

74

Supported Graphic Formats


Adobe supports images in a variety of popular formats. For a complete list of the formats you
can use, see Supported Graphics Formats on page 172.
Note: Throughout the Output Designer Help, you will regularly encounter the term Logo files.
You can consider these to be synonymous with graphic images placed either with the
Logo tool or into a Graphics field.

Formatting the Graphics


If you place a graphic image on your template using the Logo tool, you can rotate it, resize it, or
make it transparent. To access these options, pick the graphic and click Format > Logo. Just
as with a text label or drawing object, Output Designer shows the image and any formatting on
screen.
If you specify a graphic image for a Graphics field, you can resize the field and, if your
presentment target supports, rotate it. To access these options, pick the Graphics field and click
Format > Field. As with any other type of field, you see the formatting only when output.

Embedding Graphic Images


Another important aspect to working with graphic images concerns how Output Designer treats
the graphics and how you are going to distribute them. This impacts how you add graphics to
your template.

Placing Graphic Images with the Logo Tool


When you add a graphic image or logo file to the boilerplate using the Logo tool, Output
Designer compiles it into the template as printer code (PCL or PostScript, depending on your
presentment target). The output Agent understands this code and renders the images
accordingly. This means you do not have to distribute the graphics separately from your
template.

Placing Graphic Images in Graphics Fields


Graphics specified in Graphics fields are part of your data and are named in the processing
rules using the ^graph command. When the data stream contains a file name for a graphics
field, the output Agent will first look in the template to see if the referenced graphic file is
embedded in the template. If it is, is uses it. If not, it will look for it as an external file. For
information about the ^graph command, see the Print Agent Reference guide.

Adobe Output Designer


Developing Templates

Basic Template Design

75

If you are using Graphics fields in your template, you need to decide how to distribute the
images. You can make the graphics files available in two different ways:

Make the graphics separately available. When you specify a graphic for a Graphics field,
the template does not automatically store them. This means that you must provide the
stand-alone graphics files along with your template (.mdf) file, in order for the output Agent to
locate them.

Embed the graphics in the template. Using this approach, you store the graphics
referenced in the data file inside the template. This process of embedding a graphic into the
template is different than compiling it into the template, as is done with graphics on the
boilerplate. With embedding, Output Designer does not compile the graphics as printer code,
but rather stores them as distinct graphics images. When the output Agent looks for the
graphics named in the data file, it finds them in the template and looks no further.
To embed the run-time graphics for Graphics fields in your template, place them on an
off-page area of the template using the Logo tool. When you compile, you set the option
Embed logos within templates. For more information about this option, see Embedding
Logos within the Template on page 85.
The benefit of this approach is that you do not have to provide stand-alone image files along
with your template. In cases where a Graphics field is expected to contain one of a small
number of possible graphics, embedding the graphics in the template may be beneficial,
thereby making it easier to distribute the application.
On the other hand, embedding the images in your template increases the size of the
template file. You must decide which approach is most workable for your environment.

Note: If you add graphics to the boilerplate using the Logo tool, there is no need to embed
them when you compile the template. The output Agent only needs the printer-specific
code to render them correctly. Embedding them unnecessarily bloats the size of your
template.

Ordering Fields
One of your final considerations before you compile the template is the order of the fields. The
output Agent that processes the data and merges it with the template design uses this field
order for placing the incoming data into the correct fields. For example, Print Agent of Central
looks for the field order when it needs to process multiple occurrences of the same field.
Field order is important as you cross pages, or in a dynamic template, as you cross subforms.

Changing the Field Order


Output Designer automatically creates a default field ordering sequence in your template. That
sequence is left to right, top to bottom, based on the top left-hand corner of each field on the
page. This may not necessarily be the way the data file is set up. In order for the data file to
merge correctly with the template, you either have to change the field order in the template, or
change the field order in the data.

Adobe Output Designer


Developing Templates

Basic Template Design

76

When you have no control over the data file, you can override the default field order in your
template by specifying which field will be next after the current field. There are two ways to
accomplish this:

By opening Format Field for the selected field and typing the name of the next field in the
Next field text box. This enables you to order the fields one by one, which may be time
consuming for a large number of fields.

By clicking Tools > Order Fields. This enables you to view all the fields on your template in
one place and order them accordingly, thereby simplifying the field ordering process. In
addition, you can view the results of the reordering on the template as you work.

For detailed information about how to use these tools, see the Output Designer Help.

Validating the Field Names in the Ordering Sequence


If you change the default field order using the Next field text box, you should verify that you
actually specified correct field names. You can do this when you compile your template design,
by clicking Tools > Options > Compile and selecting Check next fields at compile. Each
time you compile, Output Designer will scan the template, check that the following conditions
exist, and notify you of any problematic fields:

Each specified field name exists in the template.

Each field name is syntactically correct.

Each field in the sequence is located in the current subform.

Testing Your Template Design


Before you distribute your template for general usage, you should test it to make sure that it
works as you (and your users) expect. Output Designer provides a number of tools that can
assist you with this process. You can:

Generate a report about your template that summarizes its contents.

Use the Test Presentment feature to preview how your template design and data will look
when output to the presentment target that you have selected.

Click File > Print to see how your template looks when printed on paper.

Generate a Report
The first thing you may want to do is to generate a report about your template. Such a report
shows you the properties of the template design, a summary of the objects on each page, as
well as all the fonts and colors used in the template design. This can be extremely useful in
testing, troubleshooting, and making changes to a template design. To generate a report, click
File > Report.

Adobe Output Designer


Developing Templates

Basic Template Design

77

You can get a more detailed report using File > Report with Fields. In addition to the standard
information, this report shows field information, including name, size, options and order,
subform names, and a summary of objects within each subform. It also includes the document
variables (DOCVAR) for the template design. The DOCVAR for subforms, which is generated
by Output Designer at compile time, is current to the last compile of the template design.
The default display mechanism for the report is Windows Notepad. You may wish to change
this to another program, especially if you have a large template design. Output Designer can
produce reports that are too large for Notepad. You can change the default program for viewing
reports by clicking Tools > Options > Advanced and choosing a different program.

Test Your Template Design


UP

TE
DA

During the development of your template design, you will undoubtedly want to see how your
design and the data will ultimately merge together. You can easily do this using File > Test
Presentment.
Test Presentment Dialog Box

Viewing Online
Viewing your template online, while you are designing it, is a very useful development tool.
Output Designer lets you do exactly this, in formats such as PDF and HTML. You simply require
the appropriate viewer applications on your computer. This is an effective, fast, and paperless
way to test your template while you are working, even if your ultimate presentment target is a
printer type of device.
When printing PDF output, the default behavior in Adobe Reader and Adobe Acrobat is to scale
the pages to fit the paper size selected. This may cause the output to shrink or grow in
overall size, giving the appearance of a different point size font. To have the PDF output print as
designed, ensure you de-select all Paper Scaling options on the Print dialog in Adobe Reader
or Adobe Acrobat.

Adobe Output Designer


Developing Templates

Basic Template Design

78

It is important to remember that viewing your template design online is not the same as the
standard preview feature of many applications. In Output Designer, you not only see the layout
of the template design, but how it will behave when it is merged with data. For more information
about viewing online, see Presentment Options on page 79.

Using Test Presentment with Static Templates


Test Presentment requires some information before you can test your design:

Select the data file you would like to use.

If applicable, you can transform some existing data to a field-nominated (.dat) file. This can
more fully test your output process from raw data through to final output.

Select a presentment option.

When you have provided the necessary information, Test Presentment compiles your design
on the fly and shows you the output, based on the supplied sample data and the default
presentment target that you have selected.
When you use Test Presentment with a dynamic template, there is some additional
information you will want to know about. For information about using Test Presentment with
dynamic templates, see Testing the Dynamic Template on page 111.

Specify a Data File


When you use Test Presentment, you need to specify a data file in the Data box. You can
browse to an existing data file in field-nominated (.dat) format, or create a sample data file on
the fly. By using an existing data file, your output will show real data. If you create a sample
data file, the output shows xxxxxx in place of the data. In the sample data file, you would see
something like this:
^symbolset 108
^field item
xxxxxxxxxxxxxx
^field description
xxxxxxxxxxxxxx
^field cost
xxxxxxxxxxxxxx
^field quantity
xxxxxxxxxxxxxx

If you created a sample data file, but want to see something more meaningful than xxxxxx,
you can click Edit to open the file and replace the xxxxxx with actual values. Whether you
use generated sample data or your own sample data, it is often beneficial to edit the data and
redo the presentment. This enables you to experiment with expected variations in the incoming
data stream.
Note: By default, the sample data file created by Output Designer is a UTF-8 data file
(Unicode Transformation Format). In the sample data file, this is specified by
^symbolset 108. If you have edited the sample data, but your text is not UTF-8, you

Adobe Output Designer


Developing Templates

Basic Template Design

79

must modify the ^symbolset command to use the correct symbol set. For example, if
you edited the sample data file and inserted Japanese characters from the Shift-JIS
symbolset, change ^symbolset 108 to ^symbolset 10.

Transform Data to Field Nominated Format


If you want to use a sampling of your own data, but that data is not in field-nominated (.dat)
format, you need to convert it so that Test Presentment can use it. This is a two step process:

First, select the data file you want to use.

Then, you must specify the name of a Transformation Agent definition (TDF) file to use in the
conversion process. This definition file describes how to reformat an input or data file into
field-nominated format.

You must have a TDF file to transform your data. If you do not, you can create one using Visual
Transformation Editor, an application that accompanies Central. Visual Transformation Editor is
a graphical tool that provides the means for defining transformations of data files into
field-nominated format. For more information, see the documentation that accompanies Visual
Transformation Editor.

Presentment Options
You can view your template design in these ways:

View it on screen, in Adobe Reader or using a PostScript, PCL, or HTML viewer. The viewer
that Test Presentment uses depends on what you specified as the default presentment
target. For example, to view the template in PDF, you must select Portable Document
Format (PDF) and make it the default presentment target.
In addition, to view online you need to specify the location of the Test Presentment Viewer
application. To do this, click Tools > Options > Test Presentment and provide the full path
to the application.

Output it to a printer or a disk file. Here you need to specify the exact location of the output
target.

Test Presentment Log Files


You can specify as many as two separate log files to assist you with your test presentment. One
log file tracks the operations performed during the print step, while the second tracks the
operations performed during the transformation step. To define these log files, click Tools >
Options > Test Presentment and specify file names in the Log Files section.

Print Your Template Design without Data


If you simply want to see what the final layout of your template design looks like, without any
data merged into it, you can click File > Print. This shows you the complete template and
includes all graphics, text, and field objects. It does not show you what the template will look like
when it is merged with data. What you have selected as a presentment target affects the
output, as well as the Print dialog box that you see.

Adobe Output Designer


Developing Templates

Basic Template Design

80

The Windows default printer driver produces the standard Microsoft dialog box, which among
other things, allows you to print a draft copy.
If you are using a Print Agent presentment target, you will see an Output Designer specific print
dialog box, which includes the ability to download soft fonts to the presentment target.

Compiling a Template Design


Once you design an electronic template, you must compile it to create a template for use with
Central or Web Output Pak. The compile process creates a template (.mdf) file. For HTML
output, the compile process can also create a separate HTML (.htm) file, which needs further
enhancement before you can use it with Web Output Pak. You deploy the template (.mdf) file or
the enhanced HTML (.htm) file to your production system.
If you need to make changes to the compiled output templates, you open the saved template
design (.ifd), make the changes and then compile again. Only individuals with access to both
Output Designer and the template design file can modify the template.
You can set default compile options that will apply to each new template design. If you need to
override these settings, you can do so on an as-needed basis.

Setting Default Compile Options


You may find it useful to establish default compile options that are applied to each template
design. To do this, click Tools > Options > Compile. Here you will find a range of settings that
are applied to each template that you create. To change the default compile options, simply
update the selections in this dialog box and recompile the template(s).

Adobe Output Designer


Developing Templates

Basic Template Design

81

Compile Tab in the Options Dialog Box

Later, you can override some of these settings on an as-needed basis when you compile an
individual template. The default settings stay intact for other templates, and are only adjusted
for the currently selected template.

Default Options You Can Set


This section summarizes the default settings you can specify on the Compile tab. The settings
are grouped into three categories, according to when they are applicable:

All templates.

Your selected presentment target is a Windows printer.

You are outputting to HTML. You must have selected the HTML Template Generation
presentment target. These options are relevant to template designers who are developing
templates for use with Web Output Pak.

For additional information about the Compile options, see the Output Designer Help.
Default Settings Applicable to all Templates
Option

What it does...

Include subform
positioning properties

This option instructs Output Designer to include subform positioning


information in the preamble file.
It is only useful when you are working with subforms and dynamic
templates, and is intended primarily for sites using the Adobe ERP
Output Paks.

Adobe Output Designer


Developing Templates

Basic Template Design

Option

82

What it does...

Verify that the next field This option verifies that you have defined the correct field names in
names are valid
your field ordering sequence. It is useful for extra validation on older
forms where the Next field names have been specified.
For additional information, see Validating the Field Names in the
Ordering Sequence on page 76.
Embed logo files within
the template

This option enables you to embed within the template images that
are specified for use with a Graphics field, and which you placed in
the off-page boilerplate. If the images are not in the off-page
boilerplate, setting this option has no effect.
If you do not set this option, you must provide the image files
separately to the output Agent that merges the data with the
template. See Placing Graphic Images in Your Template on
page 73.
You can override this option at compile time.
This option does not apply to images that you place directly on the
boilerplate. These are compiled into the template as printer code. It
also does not apply to images in HTML output templates.

Default Settings Applicable to Window Printers


Option

What it does...

Resolution

Use this option to set a default printer resolution value for logos included
on a template. You can specify a resolution between 100 and 1000. This
value is applied to all coordinates in the metafile, when you are
compiling it for the Windows default printer.
Note that specifying a large number will dramatically increase the size of
the template (.mdf) file. Use a resolution that just meets your
requirements.

Allow color for logos This option instructs Output Designer to print color logo files in color on
color supported printers, or in gray scale on non-color printers. Using
color will dramatically increase the size of the template (.mdf) file.
If you do not set this option, all logos will print in monochrome.
Default Settings Applicable to HTML Generation
Option

What it does...

Create separate
HTML file

When you select this option, Output Designer creates two files at
compile time: a template (.mdf) file and a separate HTML (.htm) file.
For additional information about creating HTML output for Web Output
Pak, see the Web Output Pak documentation suite.

Adobe Output Designer


Developing Templates

Basic Template Design

Option

What it does...

Output only the


HTML body

When you select this option, in conjunction with the previous Create
separate HTML file option, Output Designer creates two files at
compile time: a template (.mdf) file and a separate HTML (.htm) file.

83

Both the template (.mdf) and an HTML (.htm) files include only the
document body structure, without the <body> </body> tags. As the
designer, you create the main HTML page and include this body using
the construct...
<!...^Include Filename.htm...>

where Filename is the name of the HTML (.htm) file that Output
Designer created. This allows you to easily embed the form design in an
existing rich HTML framework.
Create read-only
HTML fields

When you select this option, Output Designer creates HTML fields in the
compiled files that will appear as objects in typical HTML editors.
Otherwise, if this option is not selected, the fields are delimited with
specially formatted HTML comments.
In both cases, the fields are read-only. This ensures that a viewer of the
final HTML output template cannot modify any of the information
presented.

Points

When you set the font size unit to points, the screen resolution has no
impact on the displayed font size. The font scales and looks to be the
same size no matter what the resolution of the screen.

Pixels

When you set the font size unit to pixels, the screen resolution affects
the display of the font. The font has the same number of pixels no
matter what the screens resolution. The higher the screen resolution,
the smaller the font appears.

Image prefix

This option sets the default image prefix for images in the HTML file.
The prefix is followed by the image file name.
If you use the prefix http:, the image file must reside in the same
directory on the Web server as the template. If during development, you
do not have access to a Web server, you may wish to change this prefix
for testing purposes. Use the following syntax:
file:///C|/YourFolder/

where C is your local drive and YourFolder is where the image


resides.
Output Designer supports JPG graphics formats for HTML.

Adobe Output Designer


Developing Templates

Basic Template Design

84

Specifying the Compile Rules


When you are ready to compile your template design, click File > Compile. If you are using one
of the Print Agent presentment targets, all the compile presentment options are available to
you. You can:

Specify a default number of copies to output.

Assign a macro number for your template that will be used by a printer type of output device
(Print Agent presentment targets only).

Control embedding of logo image files inside your template.

Include permanent downloadable soft fonts in the template (Print Agent presentment targets
only).

Use printer-specific tray numbers instead of Print Agent manufacturer-independent printer


tray numbers with Print Agent of Central.

Finally, you must also supply a file name for your template (.mdf) file.
Compile Dialog Box

Default number of copies


If your presentment target is a printer, you can use the Default number of copies box to
specify a default number of copies of the template to print. When it comes to actual print time,
the user can keep this setting or override it.
This option does not apply to PDF or HTML output.

Printer Macros
Print Agent presentment targets use printer macro numbers with Print Agent. A printer macro
number is a number that Output Designer assigns to each template (.mdf) file. Print Agent
sends the page definition along with the macro number to the printer, so that the printer can
identify the correct page. It can then identify the page simply by sending the appropriate macro
number. Printer macro numbers can be temporary in nature, or can be stored on a permanent
basis.

Adobe Output Designer


Developing Templates

Basic Template Design

85

How are they used? Recall that in a compiled template the boilerplate layer is separate from the
data. Each time you request to print the template (*.mdf) file, Print Agent sends two things to the
printer: the template resident macros, and the data from the transaction file. Storing the macros
in the printers memory will improve throughput, because Print Agent does not have to send
them a second time. Central supports the downloading of temporary or permanent macros for
PCL and PostScript Level 2 printers.
When you compile the template design, you can specify a default macro number for the
template in the Printer macro number box. When you print the template, it is loaded into the
printer with the specified macro number. For a multiple-page template design, the macro
number is assigned to the first page. Output Designer assigns macro numbers to the
succeeding pages sequentially.
Print Agent treats a template with a macro number of one (1) as a temporary macro. meaning
that it is not stored for future reference by Print Agent. Youll notice that for each template
design, this is the default macro number. If you want the template to be stored in the printers
memory permanently, assign it a macro number that is greater than one, and which is distinct
from other printer macro numbers you have specified. That number is assigned to the template
until you change it.
There are more advanced options for configuring Print Agent to use printer macros. The Print
Agent Reference guide, which is included with Central, outlines all the available commands and
options.

Downloadable Soft Fonts


When you use Print Agent presentment targets, you can include the downloadable soft fonts
with the template. Soft fonts are fonts stored on your computer that you can download to the
printer to expand the fonts available for printing. If you include the fonts, they are automatically
loaded every time you print. To include the downloadable soft fonts, select Embed soft fonts in
template. Soft fonts designated as temporary at configuration time are always compiled into
the template.
For more information about soft fonts, see Using Soft Font Cartridges on page 117.

Embedding Logos within the Template


If you want to store graphic images referenced by Graphics fields in your template, select
Embed logos within template.
For a more detailed discussion of how Output Designer handles graphics, see Placing Graphic
Images in Your Template on page 73.
The default setting for Embed logos within templates is identical to the corresponding option
in Tools > Options > Compile. If you find it necessary, you can override the default setting at
compile time. If you are always overriding the default setting when you compile, you may want
to change what you specified in the Options dialog box.

Adobe Output Designer


Developing Templates

Basic Template Design

86

Using Printer Tray Numbers


When you compile a template design in Output Designer, the compiled template uses the Print
Agent input tray number by default. This means that Print Agent of Central uses its own internal
trays numbers instead of the printer-specific tray number. This eliminates the need to
distinguish between different printer languages when determining which tray to use.
In the Compile dialog box, selecting Use printer tray numbers causes Print Agent to treat all
input tray numbers as the manufacturer-specific printer numbers, passing them through
unaltered to the printer.
For example, for HP LaserJet printers, the multi-purpose tray is physically labelled 1. If you
are using printer numbers (Use printer tray numbers is selected), you must instruct the printer
to select tray 8 in PCL 5, or tray 3 in PostScript, to select this tray. By using the Print Agent
input tray numbers (Use printer tray numbers is not selected), Print Agent uses the correct
tray, regardless of whether the template is compiled for PCL 5 or PostScript. For a list of the
Print Agent tray numbers, see the Print Agent Reference guide.
This option is relevant only if you are outputting through Print Agent.

Specifying a File Name


Before the compile process can proceed, you need to specify a file name for the template (.mdf)
file. Type the file name, in the File name box, after the drive and folder. Output Designer
requires the full path to the directory.
You will notice that the File name box already contains the location for the compiled template.
Output Designer automatically supplies the location specified for Template files in Tools >
Options > File Locations. You can always change this location. See Specifying File
Locations on page 35.
If your presentment target is HTML Template Generation, and you have requested a separate
HTML (.htm) file in the Options dialog box, Output Designer uses the file name you have
supplied.

The Compile Process


Once you have specified all the compile rules and supplied a file name for the template, clicking
OK initiates the compile process. Output Designer considers your selected presentment targets
and compiles the template accordingly. It creates the template (.mdf) file, with the file name you
specified in the location you specified.
Certain presentment targets offer additional choices during the compile process, including print
speed, print resolution, image rotation, and the ability to download images to a memory. Once
you make your selections, the compile process continues.
For printer specific information, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Basic Template Design

87

Multiple Presentment Targets


If you specified multiple Print Agent presentment targets, Output Designer begins with your
default target, and compiles each target into the template (.mdf) file, taking into account such
things as font differences. The result is one template (.mdf) file that supports all your selected
targets. Note that the multiple target selections are saved only in the template (.mdf) file; they
are not saved in the template design (.ifd) file. Only the Default Target is saved in the template
design (.ifd) file. If you need to reopen and recompile the template design (.ifd) file, you may
need to reselect the other presentment targets if the presentment targets selected in Output
Designer have been changed since the form was last compiled.

Deploying the Template


Once you compile the template and are satisfied that it will merge properly with the data, you
can distribute it to your Central or Web Output Pak administrator.
As a final step, you may need to give some consideration to the following:

You need to distribute graphic images that are not embedded in your template along with the
template (.mdf) file.

Any graphics that an HTML template references must reside in the same directory as was
specified in Tools > Options.

HTML templates to be used with Web Output Pak need to be enhanced before deploying
them. Refer to the Web Output Pak documentation suite.

Special Fields
There are some additional types of fields that you can use in both static and dynamic templates.
These fields give you increased flexibility for producing templates that reflect exactly the
information that is relevant to the user.
This chapter provides information about these types of fields:

Global

Boilerplate

Reserved

GLOBAL FIELDS
A global field contains information that appears in multiple locations on your template. Global
field processing fills all occurrences of the field in your template with the same data. The
application sends the data once, and the output Agent takes care of merging that data into all
the appropriate fields.
For example, your template might be an invoice containing an invoice number. That invoice
number needs to appear in multiple places on the invoice. In the template, you could define the
invoice number as a global field, and reuse it elsewhere as needed on the invoice.
Global fields are extremely useful when you have information that you know will be repeated in
multiple places in your template. Not only does the use of global fields reduce the amount of
data that needs to be sent, they help ensure that exactly the same data appears in the
necessary areas of your template.
When the output Agents encounter a global field value, they place the information in the Global
dictionary and then process it as part of the data stream. Global field values can also be easily
referenced in preamble code to make data driven decisions or to combine data from multiple
fields. For information about the preamble, see Understanding JFPREAMBLE and
JFPREAMBLE_1 on page 139.

Specifying a Global Field


Within Output Designer, you designate that a field is global by setting the Global attribute in the
Field Format dialog box. Each time you want to place another occurrence of that field on your
template, you need simply duplicate the original and place it in the desired location. You can
also use the Copy and Paste method.
If you create the field manually, be sure to use the same name for all occurrences of the field.

Adobe Output Designer


Developing Templates

Special Fields

89

How the Output Agent Processes Global Fields


When you compile the template, the global attributes are stored in the template. When the
output Agent opens the template, it places in memory all the fields marked as global, thereby
creating a global field list. As data is read, it is placed in the dictionary of global fields.
The output Agent processes the global field information when it reaches the end of a page or
subform, or the end of the template. If a subform contains a global field, the corresponding data
from the global dictionary is inserted into each occurrence of the global field name.

Design Considerations
If your template has multiple pages, ensure that the first occurrence of the global field(s) is
defined on the same page as it is in your data file. For example, your template design contains
the same global field on pages 1, 2 and 3. If your data file, however, defines the first occurrence
of the field on page 2, the value will not appear on page 1 when the data and template are
merged. The output Agent processes one page or subform at a time. When it finishes
processing each page or subform, it moves on to the next and cannot go back. If it finds the
global field on page 2, it places it in memory for use going forward. It cannot go back to page 1
and merge it with your field.
It is also important to note that your data file might contain the ^global command. When the
output Agent encounters a ^global, or a ^define global: command in the data file, it replaces
the global value in memory with that value.

Using Global Data in an XML Data File


Outputting global data can present a problem when using an XML data file. Use these solutions
to ensure the output is correct:
1. At the template design level, in Output Designer, set the Global attribute for the field in the
Format Field dialog box. This is the preferred option. Defining the Global attribute in the
template eliminates the need for ^global commands in the data stream, since this adds a
^global at run time to the input data.
For a text substitution field, use a dummy field with the same name as the text substitution
field and set the global attribute on that field.
For details about setting the Global attribute, see the Output Designer Online Help.
2. Use !Replace! (Replace Line) to replace ^field A with ^global A in a preamble or command
line. This option will work when you cannot set the Global attribute in a field (i.e. text
substitution field), but it will increase the processing overhead.
For details about the !Replace! command, see !Replace! (Replace Line) on page 161.
3. Use XFA:match="many" in the XML data. This option will only work under certain
conditions (i.e. a header subform on a dynamic template), because for every ^global within
a transaction it outputs a corresponding ^undefine. This means that for many template
designs, a ^global will be undefined before the page or subform can be output.
For details about the XFA:match="many" attribute, see the guide Integrating XML with
Central.

Adobe Output Designer


Developing Templates

Special Fields

90

FIELDS IN THE BOILERPLATE


As previously discussed, boilerplate is the static area on a template. Output Designer enables
you to put special fields in this boilerplate area to accommodate situations when variable data is
surrounded by boilerplate. We call these boilerplate fields.
Consider the following example. You need to create an output template that is a payment
notification letter. This letter contains two variable pieces of information within the main body:
the recipients name and the amount owing. The name of one recipient may be longer than
another. Similarly, the amount owing may vary considerably from one recipient to the next.
Letter text can look out of place when a short piece of data is placed in a large field, leaving an
inordinate amount of space before the text continues.
With boilerplate fields, the output Agent will merge the data into the field, and shift the
boilerplate content to appropriately accommodate the amount of merged data.

Defining the Boilerplate Field


When defining a boilerplate field, you use a different method than when you place a field using
the Field tool. It is a process that involves:

Creating the boilerplate text and adding the boilerplate fields to the boilerplate text.

Modifying the data file.

Adding Boilerplate Fields to the Template


You must first create the boilerplate text, deciding where the boilerplate fields are required.
When you know where you want to place the boilerplate fields, use the command @fieldname.
for each of the fields in the boilerplate text, where:
fieldname is the actual name of the field. Be sure to include the . (period), as it indicates the end
of this boilerplate field.
For example, in a template letter, you can set the salutation as:
Dear @firstname. @lastname.:

Highlight the boilerplate fields to select them. Then click Format > Text and click Text
substitution field.
You can also apply text formatting such as font type, weight, and size. The formatting will
appear in the output.
When Output Designer compiles the template design, it creates the required document
variables for the output Agent. The output Agent merges the data from the data file when it
encounters the field names firstname and lastname. These fields actually become global
fields and are processed at the end of a subform.
For more information about boilerplate fields, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Special Fields

91

Modifying the Data File


To provide data values for the boilerplate fields, you need to properly reference each boilerplate
field name in the data file with a ^global command. Using the above example, the data file
would be:
^global firstname
Alex
^global lastname
Pink

A Note About the Output of Boilerplate Fields


During processing, fields in the boilerplate are treated as fields and not merely text. As such,
their formatting can be affected during processing by ^reformat settings. For information about
the ^reformat command, see the Print Agent Reference guide.
In addition, Output Designer is much more precise in positioning characters on the template
than an output Agent is during processing. You may find that the final output varies slightly from
the template design.

RESERVED FIELDS
Output Designer provides some special fields that enable you to add key pieces of information
to your template design. These include:

Page numbers

System date

System time

Output Designer identifies these fields with special names. The output Agents populate these
fields when processing the output template.

Reserved Field Names


When you add these fields to your template, you must use the specially reserved names that
Output Designer assigns them. You can assign font attributes to these fields as you can for any
text field.

Page Number
Reserved field name: $page

Adobe Output Designer


Developing Templates

Special Fields

System Date
Reserved field name: $daten, where n is a number that specifies a date format.
We recommend that you use date formats that support a four-digit year. Using a four-digit
format ensures accuracy.
Field Name

Format

Example

$date1

yymmdd

050916

$date2

mm/dd/yy

09/16/08

$date3

mm-dd-yy

09-16-08

$date4

Mmm dd, yyyy

Sep 16, 2008

$date5

Mmm..m dd, yyyy

September 16, 2008

$date6

dd Mmm yy

16 Sep 08

$date7

dd Mmm yyyy

16 Sep 2008

$date8

dd/mm/yy

16/09/08

$date9

dd-mm-yy

16-09-08

$date10

mmm dd, yyyy

sep 16, 2008

$date11

m..m dd, yyyy

september 16, 2008

$date12

dd mmm yy

16 sep 08

$date13

dd mmm yyyy

16 sep 2008

$date14

dd m...m yyyy

16 septembre 2008

$date15

yy/mm/dd

99/09/16

$date16

mm.dd.yy

09.16.08

$date17

dd.mm.yy

16.09.08

$date18

yy.mm.dd

08.09.16

$date19

dd.mm.yyyy

16.09.2008

$date20

mm/dd/yyyy

09/16/2008

$date21

yyyy-mm-dd

2008-09-16

$date22

mmddyyyy

09162008

$date23

mmddyy

091608

$date27

dd/mm/yyyy

16/09/2008

92

Adobe Output Designer


Developing Templates

Special Fields

System Time
Reserved field name: $timen, where n is a number that specifies a time format.
Field Name

Format

Example

$time1

hhmmss

155256

$time2

hh:mm:ss

15:52:56

$time3

hhmmssss

15525600

$time4

hh:mm:ss.ss

15:52:56.00

$time5

hh:mm

15:52

$time6

hh:mm:ss xx

03:52:56 PM

$time7

hh:mm xx

03:52 PM

93

Developing Dynamic Templates


Earlier in this guide, we examined the steps involved in creating a static template, from analysis
and planning through to deployment. This chapter focuses on the creation of dynamic
templates.
This chapter provides information about:

Dynamic templates, what they are and what they offer.

Subforms, the building blocks of a dynamic template.

Designing the dynamic template.

Creating subforms and specifying their attributes.

Working with positioning fields.

The foundation page.

Compiling and testing the dynamic template.

WHY DYNAMIC TEMPLATES?


Dynamic templates enable you to create templates that flex to the needs of the recipient. They
provide the most advanced and flexible template output for use with Central and Web Output
Pak.
Unlike a static template, where the content of each page has a fixed layout, a dynamic template
provides a flexible layout that can vary according to the data merged into it. Sections of the
template may repeat, or may not appear at all, tailoring the template to reflect the interests and
requirements of the user.
As a template designer, you analyze the users requirement for each template and its intended
use. A dynamic template can solve these business challenges:

Eliminate unused boilerplate, such as on a purchase order, where only some of the detail
lines will contain data.

Allow sections to repeat, such as on an insurance template, where the number of


occurrences of the dependents section varies.

Allow for optional sections, such as on a medical template, where a section for previous
surgical procedures may not apply.

Provide output to multiple presentment targets. Based on the data, one dynamic template
may be delivered by paper, where another is delivered by e-mail, or by fax, or as an
HTML-based Web page.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

95

Subforms: Building-Blocks of a Dynamic Template


You build dynamic templates using subforms. A subform is an individual section of a template
that contains a group of objects relevant to that particular section. A dynamic template consists
of some number of these subform building blocks. In a dynamic template, the output Agent
dynamically builds the output by laying down different subform components of the template to
create the final output. Which subforms the Agent lays down is completely driven by the
contents of your data.
Being data-driven, some subforms will not apply, and some will apply many times and be
repeated as necessary. The collection of subforms provides a visually attractive layout and
rational structure for your template, while the dynamic processing provides a personalized
document for the recipient.

How do Subforms Correspond to a Page?


Before going on to create a dynamic template, you need to understand how subforms and
pages live together. Recall the static template. As we saw, the final output template contained
exactly the layout you created in the template design. If the template was designed with two
pages, the output is exactly two pages in length.
Subforms introduce a different way of thinking about a page. As previously said, subforms flex
to the amount of data you have; the more data there is, the more an individual subform repeats
to occupy more physical space. In addition, each template can have multiple subforms, which,
depending on the data, may or may not be used. You might always want to see certain
subforms, and not others. The data dependency of subforms necessarily results in output
documents that contain different chunks of information, spanning different numbers of physical
pages.
This flowing from one subform to the next is a very important concept to understand as you plan
and design a dynamic template. This will become clear when you establish the attributes of the
subform and pagination information.

Matching the Data to the Subform


How does the output Agent know where to put what data? The general process is simple. Here
is an overview of what happens:

The output Agent lays down a template subform and fills it with data.

When there is no more data for that subform, the output Agent lays down the next subform
and fills it with data. (Remember, the output Agent is forward looking - it never returns to a
previous subform.)

This process continues until the output Agent finishes placing the data.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

96

How does the output Agent know when to end a subform and start the next one? In one of two
situations:

When the output Agent encounters a field that is not in the current subform, it moves from
the current subform and lays down the subform that contains the new field.

When the output Agent reads data for a field and determines that the place for that data is
already occupied, it lays down another occurrence of the subform.

PLANNING A DYNAMIC TEMPLATE


As with the planning of a static template, the most important aspect of developing a dynamic
template is the planning. Having looked at the general process involved in processing dynamic
templates, there are a number of requirements that you must consider before you construct a
dynamic template:

You must determine ahead of time which pieces of the template will occur only once and
which pieces will be repeated on every page.

Data must be in field-nominated or XML format. If your data is not in one of these formats,
and your business application that produces the data is not flexible enough to change the
data format, you can use Transformation Agent to transform the data into an acceptable
format.

You must understand the ordering of the data. The output Agents merge the data into one
subform, and then move on to the next. They never return to a previous subform. A dynamic
template must correspond appropriately to the order of the data in the data file.

To review other important steps in analyzing and planning your template design, see Planning
the Template on page 44.

CREATING A DYNAMIC TEMPLATE


The process of creating a dynamic template is very straightforward. Using a static template is a
logical starting place. Heres a summary of the steps involved:

Create a static template with one occurrence of each subform.

Use the Test Presentment tool to verify that data merges where you expected and that the
final layout matches your requirements.

Block off and create each subform.

Set up the attributes of each subform.

Create a foundation page. (This step is optional, but very useful.)

Verify that the field order in the template corresponds appropriately to the data.

Test the dynamic template.

Compile the template and distribute it.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

97

Creating a Static Template


The logical starting point for designing a dynamic template is to create a static template design
that reflects most of the information you think you will need to present. By creating a static
template, you can easily achieve the visual layout that you require.
Example of a Static Template

The preceding illustration shows a typical static template, with boilerplate, header information,
and a table to present multiple detail lines in the purchase order. When you modify the static
template into a dynamic template, you will block off these different areas into subforms, in the
same order in which you expect them to appear. See Blocking Off the Subforms on page 98.
When the static template design is complete, consider the areas that will present repeating
data. For example, in the purchase order, one such area is the table representing detail lines.
When you convert this static template to a dynamic one, you will not need the entire table.
Rather, you need only the title row, and one occurrence of the repeating detail line. In a
dynamic template, this single detail line, once grouped into a subform, will repeat according to
the number of purchase order items in the data. If there is so much data that it requires another
page, you can design the title row subform to repeat at the top of the next page.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

98

Test the Static Template


Before you divide your static template design into subforms, it is good design practice to test
the template design and verify that it presents the data design elements in the way you intend.
Use the Test Presentment tool to test your templates during the development stages.
For more information about using Test Presentment, see Testing the Dynamic Template on
page 111.

Blocking Off the Subforms


When your static template design meets your requirements, you can begin to break it into
different subforms. Recall that each subform is a collection of grouped objects, with specific
boundaries.
The easiest way to identify the boundaries of the desired subforms is to place horizontal
guidelines along the vertical ruler. Place a guideline above and below each area you want to
designate as a subform. Ensure that you place a guideline at the top of the template design to
delineate the top of the first subform.
Using the example of the purchase order, the next illustration shows a common approach for
dividing the upper portion of template design into a single logical group of objects.
Blocking off the Subforms in a Static Template

The next step would involve the detail lines table. Breaking it into two groups makes sense. To
do this, you would draw the column titles as a distinct row of cells, and one occurrence of the
detail lines as a row of distinct fields. The Subtotal, Discount, Tax, and Total fields,
along with the Comments area, would constitute another subform. The revised template would
be similar to the next illustration.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

99

Example of a Modified Static Template

For more information about the drawing tools, see Using the Drawing Tools on page 72.

Creating the Subform


The next step is to group the objects between the guidelines, thereby creating individual
subforms. Unlike a standard object group, a subform must always have a name. If you do not
assign a name to the grouped objects, Output Designer will not save them as a subform.
There are two methods you can use to create a subform:

Right-click a guideline, and click Crop as Subform on the shortcut menu. This action selects
all the objects between the current guideline and the next, or the current guideline and the
bottom of the page, and groups them into a subform.

Select all the objects destined to be in the subform and click Area > Group as Subform.

When you use Crop as Subform, Output Designer does not pick up any off-page objects. To
include off-page objects, you must add them separately, using Add to Group. For more
information, see Grouping Objects on page 59.
Create all the subforms you think are necessary in the template. When you finish creating them,
you need to go back to each one and individually set their attributes.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

100

Locating a Specific Subform


You can quickly locate a subform by selecting it from the Page and subform name drop-down
list on the Control Bar. This list shows the name of each subform in your template, grouped
according to the page on which they are located. If your template design has many subforms,
this drop-down list is very useful.
Page and Subform Name List Box
Page name

Subform name

When you need to edit a specific subform, select the subform name from the list box. Output
Designer moves to the page where the subform is located and highlights the subform you
selected from the list.
For information about the Control Bar, see Control Bar on page 17.

Modifying Individual Objects in a Subform


Just as with a normal object group, you can modify the attributes of any of the objects within the
subform, without ungrouping the subform. Simply select the object and change its attributes or
position. The subform and all its attributes remain intact.
Similarly, you can also remove an object from a subform, or add a new object to it, without
ungrouping the subform, or losing any of its existing characteristics. This process is identical to
that of changing the members of a normal group.
For information about changing the objects within a group, see Grouping Objects on page 59.

Setting Subform Attributes


The attributes you set for a subform play an extremely important role in your dynamic
templates. These attributes include the subform type, the final size and placement of the
subform, the number of occurrences of the subform, as well as a number of pagination
specifications.
You set these attributes in the Subform dialog box. To access this dialog box, click Format >
Subform. You can change the subform attributes at any time during the development process.
For detailed information about the options in the Subform dialog box, see the Output Designer
Help.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

101

Format Subform Dialog Box - General Tab

Specify the Subform Type


After the name, one of the first things that you need to specify is the subform Type. Essentially,
each type refers to its relationship to other subforms on the template design. There are three
subform types:
Type

Description

Header

A header subform always precedes another subform. Typically, these are


used for page or document headers, or for column headings. The data in
header subforms tends to occur only once per transaction. You can have
multiple header subforms in a single template design.

Detail

Those parts of a template that have many lines of repeating data are
typically designated as detail subforms. Designating a subform as a detail
subform provides a mechanism for easy recognition of the subforms
location and purpose.

Trailer

A trailer subform always follows another subform.

By default, Output Designer assigns the Header type to each subform that you create. You
need to specify the type that most appropriately corresponds to the subforms purpose in the
template design.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

102

How Do You Know Which Type is the Most Suitable?


First of all, you need to understand how you want your information to be presented. Consider
the next example: a purchase order with the possibility of many line items.
Dynamic Template Showing Subform Types

Any Company Inc.


PURCHASE ORDER

Billing
(Header subform)

Date

Requisition Number

Vendor

Vendor Code

Ship To

Any Company Inc.


123 Any Ave.
Any Town
Any Country

Table_Titles
(Header subform)

Item

Table_Lines
(Detail subform)
Total
(Trailer subform)

Qty

Description

Units

Unit Price

Total Price

Subtotal
Tax - 7.25%
Delivery

Total

The template design has four subforms, each one having a Type attribute. Typically, the
subform Type attribute works in conjunction with other attributes to determine the final position
of the subform on the output template. You will read about those attributes at a later point.
For now, we will examine only the subform types, and why we chose them.
Subform Name Type
Billing

This is a header subform. We have also specified that we want this particular
header subform to always start at the top of a new page for new purchase
order data.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

103

Subform Name Type


Table_Titles

This is a header subform that introduces the line item section of the
purchase order. The information here is static, simply column titles.
If there is more line item data than one page can hold, we would like the titles
to always appear above the Table_Lines subform.

Table_Lines

This a detail subform whose purpose is to display all the line items that occur
in the data set. If there is more data than can fit on the page, the line items
will spill over to the next page. In the output, we will see as many lines as the
data requires, no more, no less.
In a static form, the Table_Titles and Table_Lines subforms would most
likely have been part of one table. The number of rows in the table would be
fixed, preventing it from adjusting to the amount of data.

Total

This is a trailer subform. We would like this information to appear at the very
end of all the line items. When there is no more data to place in the
Table_Lines subform, the Total subform will be added to the output
template.

Re-ordering Subforms
Output Designer lets you organize your subforms and pages easily and effectively, by providing
a list view of every subform and page within your template design. You can drag subforms or
pages up or down within the list to achieve your desired layout.
Re-order Subforms and Pages Dialog Box

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

104

You access the Re-order Subforms and Pages dialog box from Tools > Re-order Subforms &
Pages.
The dialog box displays relevant information for the various subforms and pages, such as their
name, size and space available. If the space available on a page is displayed in red, then the
subforms found on that page exceed the page size. You must either resize the subforms, or
remove some from the page.
Any page lines that appear highlighted with the same color as your Windows ToolTip, are those
that you have altered within the dialog box in some way. For example, you may have added or
removed subforms, or renamed pages.
There are several controls that are provided to assist you with the re-ordering process. To
access these controls, click Options.
Subform Re-ordering Options

The Show thumbnail images option displays a preview of how the individual subform looks, to
assist you with your layout. Display thumbnail images in 3D provides a more realistic
representation of how a subform appears on a page. To specify the amount of space between
adjacent subforms on your template design pages, and allow yourself more workspace, type a
value in Subform vertical spacing. Specifying the spacing here only works for pages that
have been altered in some way, and are highlighted with your default Windows tooltip color.
By double-clicking on a specific page you can access the Format Page dialog box. It allows
you to alter page-related information, in particular the page name and orientation. To add a new
page, click Insert New Page. A blank page is added directly before the currently selected page.
Note that you can only delete pages that are completely empty. That is, they do not contain any
subforms or other template elements.

Understanding the Order of the Subforms


During the creation of a dynamic template, you may need to rearrange the order of the
subforms. When you compile the template design, Output Designer keeps all subforms in the
same order that you defined them. An exception to this rule is when you define parent/child
relationships among your subforms.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

105

Parent/Child Relationships
When you specify the subform Type, you can optionally associate the subform with another
subform, forming a parent/child relationship. Forming a parent/child relationship ensures that
the child subform always follows its parent before the output Agent processes any other
subform.
You can establish a parent/child relationship for any subform, regardless of its type. Simply
select a subform from the Parent subform drop-down list on the General tab of the Subform
dialog box. When you compile the template, Output Designer finds the first parent subform, and
at this point, places all parent/child subforms together.
For more information about how Output Designer processes subforms with parent/child
relationships, see Subform Processing on page 142.

Additional Processing Rules for Different Subform Types


There are some additional rules that apply to the processing of Header/Detail/Trailer subform
types and how they appear in the output.
For more information about the processing rules for different subform types, see Subform
Processing on page 142.

Setting the Size and Position of a Subform


Output Designer determines the height and width for each subform based on the area of the
objects included in the subform. A subform occupies exactly the amount of space needed to
accommodate all its constituent objects. Without any adjustment to the surrounding
whitespace, one subform will abut directly against the one above it.
After designing your template, you may want to adjust the whitespace around the subform, to
achieve a different visual effect. To adjust the whitespace, you need to change the vertical
space reserved for the subform by supplying a larger value in the Final height box on the
General tab. This gives you more white space above and below the objects in the subform.
If you change the Final height, you may also want to revise the location of the subform within
that reserved space. To do this, select one of the positions from the Within the final size...
drop-down list.
Size and Position Area on the General Tab

Note: Although Output Designer shows you the width of the subform, the subform will actually
occupy the full width of the printable area once it is compiled. Modifying the Final width
of the subform has no impact on its final appearance.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

106

Fixing the Position of the Subform


Normally, you will let subforms flow one right after the other. Their sequence will be the same,
but their exact vertical location will float. For example, when all of subform A is laid down, then
subform B gets laid down, then subform C, and so on. While the sequence is the same, the
exact location (and presence) of B and C will vary according to the data.
The anchor point for each subform is determined by the $POSITION field of the previous
subform. By default this is at the bottom left of the printable area of the subform. For more
information about the $POSITION field, see Using Positioning Fields on page 107.
In rare situations, you might want to fix the position of a specific subform so that if there is data
causing it to get laid down, that subform will always appear in the exact location that you
positioned it on the template design. To do this set the option Always position in the same
location on the page. For additional information, see Absolute Positioning of Subforms on
page 109.

Controlling the Paging


There are a number of mechanisms that you can use to control when a new page starts, how
much information gets put on a page, and what happens next when the end of a page is
reached.
You will find additional information about paging in the Output Designer Help.

Forcing a New Page with a Specific Subform


There are certain situations when you want a specific subform to always start a new page. That
is, when the output Agent reaches a particular subform, it should consider the current page full
and start a new page with that subform. To specify that a subform always starts a new page,
click Format > Subform > Page Full and select Always force a new page with this subform.
Caution: Be careful when choosing the Always force a new page with this subform option.
If a subform with that option is referenced in the end-of-page rules for another
subform, it could cause unexpected results. Any subform used in the end-of-page
rules should be set to When there is not enough room for this subform and the
following subforms, and/or specified amount of space.

Page Full
You can also indicate another set of conditions to determine if a page is full and begin a new
page. If there is not enough space for the current subform, let alone all the subforms following it,
you can tell Output Designer to consider the page full and start a new page. To do this, click
Format > Subform > Page Full and select When there is not enough....

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

107

In addition, you might want to ensure there is space on the page for another subform and
perhaps some whitespace. Here you have two more options. You can select one, both, or none
of them:

Reserve space for the current subform plus these subforms: If selected, Output
Designer ensures that it reserves at least the height of this subform. If you select any other
subforms in the list box, Output Designer also adds in their height. By selecting these
additional subforms, you ensure that there is always room for the current subform to be
followed by these other ones before the page ends.

Plus additional space of: If selected, Output Designer adds in the additional space that you
specify.

At the End of the Page


When you come to the end of a page, you can specify which subforms get placed at the bottom
of the current page and the top of the next one. To specify this, click Format > Subform > At
End-of-Page.
You specify end-of-page conditions for a given subform. Typically, it will be the subform that
contains the detail information that is likely to spill over to another page. If you always want a
particular subform to be placed at the bottom of the page, you need to ensure that you allowed
enough space for it on the Page Full tab.
Looking at the example on page 102, there are five subforms. The Table_Lines subform will be
the most unpredictable in the amount of space it occupies. Very frequently it may spill over
multiple pages. When this happens, you definitely want to have the Table_Titles subform
repeated at the top of every page until the data runs out. To accomplish this, you would go to
the At End-Of-Page tab, and instruct Output Designer to place the Table_Titles subform at the
top of the next page.
Caution: Be careful when choosing the Always force a new page with this subform option.
If a subform with that option is referenced in the end-of-page rules for another
subform, it could cause unexpected results. Any subform used in the end-of-page
rules should be set to When there is not enough room for this subform and the
following subforms, and/or specified amount of space.

Using Positioning Fields


When you compile your template, Output Designer automatically creates special fields called
positioning fields. These positioning fields, named $POSITION, instruct the output Agent where
to place the next subform. $POSITION fields do not contain any data.
Positioning fields are the most effective way to control subform placement. Output Designer
automatically places the top-left corner of the $POSITION field at the lower extent of the
subform, and at the left printable margin.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

108

If you examine JFPREAMBLE_1, after you compile your template, you will see the $POSITION
field referenced for each subform. For example, for a subform named InvDetail, you would
see these lines in JFPREAMBLE_1:
^define group:D_InvDetail
\field$POSITION\reserve"0.5",in\subformInvDetail.
^define group:G_InvDetail@group:D_InvDetail.

For more information about JFPREAMBLE_1, see Understanding JFPREAMBLE and


JFPREAMBLE_1 on page 139.

How Positioning Fields Work


When the output Agent is directed to go to the $POSITION field, it places the cursor at the top
left-corner of the field, ready to fill it with data. However, the next command specifies the next
subform, so the output Agent places the next subform at the location of the $POSITION field.
The result on the output template is that each subform appears directly after the preceding
subform.
Note: Different presentment targets may produce different results with respect to the exact
placement of a $POSITION field. Be sure to test your template for each presentment
target.

Creating Your Own Positioning Fields


You can also create your own positioning fields if you need to exert some different control over
the placement of subforms on your template. For example, by creating a positioning field
yourself, you can have subforms that overlap, or cause a different margin at the top of your
template.
You can add a $POSITION field to a subform or to JFMain, the foundation page. If you add your
own positioning field to a subform, Output Designer does not create one for that subform during
the compile process. There can only be one $POSITION field per subform or on JFMain. For
more information about JFMain, see Understanding the Foundation Page on page 109.
For information about creating a positioning field, see the Output Designer Help.
Note: When creating a $POSITION field, ensure that you place the field within the printable
area of the page. The output Agents cannot properly process a $POSITION field that is
in the off-page area, and as a result, have problems placing the subform.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

109

Absolute Positioning of Subforms


Some templates may require certain subforms always be in the same location on a page, no
matter where a previous subform was placed. For example, you might want to have an address
subform always located at the top of a page, or a page n of m subform at the bottom of a page.
You can specify such a position by clicking Format > Subform > General and selecting
Always position in same location on page.
With this option set, you position the subforms on the template design where you want them on
the final output. When you compile a template design, Output Designer records the subform
position as a variable, and writes the information into the preamble. This ensures that when the
subform is required, it is always placed in the same position on the page.

Understanding the Foundation Page


A dynamic template requires a background page on which to place its subforms. This
background page is called the foundation page. You do not have to create this foundation page.
Output Designer creates one automatically when you compile the template. This default page
has nothing on it and you will not see a page icon for it in Output Designer. The foundation page
is known to Output Designer and the output Agents as JFMain.
However, you can actually use this foundation page and design it to include background
information that will appear on every page of the output template. For example, using the
foundation page is a very easy and effective way of adding standard header and footer
information so that it appears on every page of your output template. While designing your
template, you can see this header and footer information on each subform page, because
Output Designer lets you view the foundation page as background information on all pages.
Seeing the foundation page objects on your subform pages makes designing your subform
easier.

Designing Your Own Foundation Page


Since you cannot see the default JFMain in Output Designer, you need to add a new page to
your template design and call it JFMain. This will automatically become the foundation page for
the entire template. When you compile, Output Designer recognizes the contents of the JFMain
page as background information to be placed on all pages of the output.
The foundation page is purely background, and as such, can contain only boilerplate. Do not
place fields on the foundation page. Fields live in subforms, which lay on top of the foundation
page.
For more information about how to create a foundation page, see the Output Designer Help.

Defining Multiple Foundation Pages


It is possible to create more than one foundation page. To do so, use the JFMainn naming
convention. That is, the name of each foundation page must begin with JFMain, and be
followed by n, which represents a unique name. The value for n can be an alphanumeric or
underscore character. For example, JFMain185, JFMain_Terms, and so on.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

110

When Output Designer generates the preamble, it uses the variable group:SWITCHPAGE each
time it needs to lay down a new page. The very first step that group:SWITCHPAGE takes is to
lay down JFMain, and then continue processing.
If you examine JFPREAMBLE_1 (the preamble that Output Designer creates each time you
compile), you will see this statement:
^define group:SWITCHPAGE

\page1\field$POSITION.

Output Designer automatically refers to the first JFMain page as \page1, regardless of
whether you created your own JFMain page, or are using the automatically generated one. To
enable the output template to recognize any other JFMain pages, you must edit JFPREAMBLE
file to override JFPREAMBLE_1.
To enable the output template to recognize additional foundation pages
1. Compile the template design with the desired foundation pages.
2. Click Format > Template Preamble.
3. In the Custom name list, select JFPREAMBLE_1.
4. Locate and copy this line:
^define group:SWITCHPAGE

\page1\field$POSITION.

5. Return to JFPREAMBLE and paste the line you copied.


6. Edit the line, replacing the 1 in page1, with the name of the next foundation page. For
example:
^define group:SWITCHPAGE

\pageJFMain_Terms\field$POSITION.

where JFMain_Terms is the name of the next foundation page after JFMain.
7. Click OK and recompile.

Additional Field Techniques


There are some special techniques that you can use with fields in a dynamic template to extend
their flexibility. These include:

Making a field expandable to accommodate varying amounts of data.

Using a !Format event to achieve dynamic formatting or perform simple calculations at


output time.

For more information about incorporating these types of fields into your template design, see
Advanced Field Techniques on page 143.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

111

Examining the Data


As previously discussed, understanding your data is very important when designing a dynamic
template. There are a number of considerations that you should keep in mind as you create a
dynamic template.

Field Ordering
In a dynamic template, field order is important on a subform-by-subform basis. Just as for static
templates, all the fields on one page must occur before the next page occurs. Similarly, all the
fields that belong to one subform must occur before any of the fields that belong to the next
subform. The order of the fields within the subform does not matter, as long as all the fields for
a subform occur before the next subform gets laid down.

Field Naming
Earlier, we said that data fields trigger subforms. When an output Agent sees a field not on the
current subform, it moves on to the next subform. While it is technically possible to have
non-unique field names, this can cause a problem and is generally more difficult to manage. For
example, if the output Agent encounters a field that is not on the current subform, but does exist
on several others, it may not pick the subform you would like it to pick as the next subform. In
addition, non-unique field names across subforms cause auto-generated field events to be
dropped from JFPREAMBLE_1. For example, two subforms, subform1 and subform2, contain
fields with identical names. When the template is compiled, JFPREAMBLE_1 will contain field
events for only the first occurrence of any fields that use the same name. In this example,
subform2 will not have any field events generated for its fields that use the same names as the
fields in subform1.
You should ensure that the field ordering in the data is such that a unique field name triggers a
new subform.

Keeping Data Pure


While it is technically possible to place commands that govern the processing of the output
template in the data file, we strongly recommend that you avoid this practice. Rather, keep your
data pure, meaning that it should contain only field names and values and not any commands.
Output Designer automatically creates something called a preamble file, which contains the
processing rules for the output Agent. Use this preamble for all presentment commands. Do not
put commands in the data. If your data is in XML format, this approach is mandatory. For more
information about the preamble file, see Processing a Dynamic Template on page 138.

Testing the Dynamic Template


At this point it would be prudent to test your template, if you have not already done so. You can
test how the final output of a dynamic template will look by using File > Test Presentment. Just
as for static templates, you need to provide a data file, transformation instructions if necessary,
and an output destination. See Test Your Template Design on page 77.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

112

In addition to the type of information Test Presentment shows for static templates, you can
verify the attributes applied to subforms, such as page breaking, size and positioning, headers,
footers, and parent/child relationships. As well, Output Designer provides you with the option of
having Test Presentment show your template with field and subform names, in place of data.
See Template with Fields on page 112
You should also be aware of the option Preview Number of Occurrences set for each
subform. If you use Create Sample Data File, Test Presentment outputs the subform
whatever number of times you specify. The default number is 1.
To make sure that you have specified the desired number, select the subform and click Format
> Subform > General. Youll find the setting at the bottom of the tab.

TEMPLATE WITH FIELDS


When testing or troubleshooting a dynamic template design, it is useful to view a copy of the
template with the field names shown in the field areas and with the subforms identified. This
provides a visual reference to not only the contents of the subforms, but to the naming
conventions used for field and subform names.
With Output Designer, the template with fields facility provides this information. For example:
Start subform
colored band

Start subform: 'PO_Header' (Header)

Any Company Inc.


PURCHASE ORDER

End subform
colored band

Date

Requisition Number

Vendor Code

PO_DATE

Field 'A' = 'REQUISITION_NO'

Field name
for field
reference B

Field 'B'='VENDOR_CODE'

End subform: 'PO_Header' (Header)


Start subform: 'Address_Boxes' (Detail)

Vendor

Field name

Field reference

Ship To

Any Company Inc.


123 Any Ave.
Any Town
Any Country

VENDOR

End subform: 'Address_Boxes' (Detail)


Start subform: 'Detail_Header' (Header)

Item

Qty

Description

Units

Unit Price

Total Price

End subform: 'Detail_Header' (Header)


Start subform: 'Detail_Line' (Detail)
ITEM

DESCRIPTION

UNITS

Field 'A' = 'QUANTITY'

End subform: 'Detail_Line' (Detail)

UNIT_PRICE

TOTAL_PRICE

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

113

As shown above, Start subform and End subform colored bands are used to enclose the
objects and fields of each subform. Both bands include the name of the subform and the
subform type in brackets following the name. Field areas within each subform show the field
names where you would normally see the field data. In cases where the field area is too small
to contain the complete field name, the name is shown as a reference only, such as A, B, C,
etc., and the field name is included in the End subform band.
You can select to view a template with fields while running Test Presentment.
To view a template with fields
1. Click File > Test Presentment > Create Sample Data File.
2. Select Create sample data file containing subform & field names and provide a file name
for your sample data file.
3. Click Save.
4. Click OK to run Test Presentment.
Note: The template with fields document will include the names of all fields on your template
that are included in subforms. It will not include the names of fields on static pages or
on foundation pages.

Template with Fields Production


It is important to understand how Output Designer produces the template with fields document.
When you select the Create sample data file containing subform & field names option,
Output Designer checks the paper size and orientation of your template. It then looks in its
Templates folder for a $DocForm template with the same paper size and orientation. Output
Designer uses the subforms in the $DocForm template to place the colored Start subform and
End subform bands, including the field name cross references, if required, on the template with
fields document.
The installation of Output Designer includes both the template design (.ifd) and template (.mdf)
versions of four $DocForm templates, in the Designs and Templates folders respectively:

$DocFormA4Landscape

$DocFormA4Portrait

$DocFormLetterLandscape

$DocFormLetterPortrait

If you require a template with fields document but your template is in a paper size and
orientation not covered by one of the four $DocForm templates, you will need to create a
$DocForm template specific to your situation. Follow the instructions in the next section to
customize one of the four $DocForm templates for your needs.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

114

Customizing the $DocForm Templates


When customizing the $DocForm templates, be aware of the following:

The $DocForm templates are compiled for the PDF presentment target.

The Test Presentment process looks for the $DocForm template in the Templates folder.
Ensure you save your customized template to that folder.

Each template contains three subforms:

DocHeader, consisting of a colored box and a field, SubformName.

DocFooter, consisting of a colored box and a field, SubformName.

DocNameXref, consisting of a colored box and two fields, both named NameXref.

To create a customized $DocForm template


1. Open either of the templates containing the same orientation as your template.
2. Click Format > Page to change the paper size to that of your template.
3. Resize the fields and colored bands within each subform to match the new paper size.
4. If desired, change the presentment target.
5. Name your customized $DocForm template using the convention:
$DocFormPaperSizeOrientation

where PaperSize is the paper size of your template, exactly as it appears in the Format
Page dialog box, and Orientation is one of Portrait or Landscape.
6. Save your customized $DocForm template in the Designs folder and compile it into the
Templates folder.

Compiling the Dynamic Template


You can compile your template at any time during development. The Test Presentment tool
compiles the template on the fly, but you still need to create that final output template (.mdf) file.
Once you are satisfied with your template design, compile it by clicking File > Compile. If you
want to review the compile options, see Compiling a Template Design on page 80.
Make sure that you save this final version of the template design (.ifd) file.
The processing that occurs for a dynamic template during the compile is very different than that
of a static template. When you compile a dynamic template, Output Designer automatically
creates a set of rules that dictates how the output Agent should handle the data. These rules,
known as the preamble, determine how and when the subforms are laid down on the output.
The output Agent loads the rules from the preamble before it processes the data.
You can find more detailed information about the preamble and the processing of dynamic
templates in the chapter Advanced Template Concepts on page 138.

Adobe Output Designer


Developing Templates

Developing Dynamic Templates

Deploying the Dynamic Template


The process of deploying a dynamic template into your production environment is similar to
deploying a static template. To review the steps involved, see Deploying the Template on
page 87.

115

Advanced Font Considerations


As discussed in Chapter 3, there are numerous advantages for using presentment targets over
the standard Windows printer drivers. One of these advantages is the exceptional font handling
support.
Using Output Designer, you can take advantage of this font support and customize the fonts
available to the presentment targets to suit your design and production requirements. This
chapter provides information about:

Using font cartridges.

Creating and customizing soft font and AutoFont cartridges.

Font mapping in development and production environments.

Changing symbol sets.

CUSTOMIZING FONTS
Presentment targets can support fonts from a variety of different sources:

Resident fonts: These are fonts that are built into the presentment target. They are always
present and available to use.

Font cartridge plugged into a printer device: This is a ROM cartridge that plugs into some
printer devices and extends the range of fonts that the presentment target can use beyond
the available resident fonts.

Soft fonts: These are font files stored on your computer that you can download to the
presentment target. You download these font files from Output Designer as soft font
cartridges. These cartridges effectively expand the font set available to the presentment
target during processing. If you do not specify any font cartridges in Output Designer, you
can only access the presentment targets resident fonts.

Adobe fonts: These are built-in fonts that are provided by Adobe Reader. You can add new
fonts to this set for use in templates that will output to PDF.

Adobe Output Designer


Developing Templates

Advanced Font Considerations

117

Using Soft Font Cartridges


In Output Designer you can create soft cartridges to increase the range of fonts available to a
presentment target. This is particularly useful when you want to ensure that the fonts you used
in the template design are available at all times, even if the output mechanism changes. When
you customize a presentment target to use soft font cartridges, you increase the selection of
fonts that you can use in your template designs.
You can specify the font source for each presentment target by clicking Font Setup when you
select a presentment target. Not only will you have access to all the existing font cartridges for
the selected presentment target, but you will also be able to create new font cartridges.

Types of Soft Font Cartridges


You can create soft font cartridges for a variety of soft fonts, including TrueType, Type 1 Fonts,
and those fonts made by the manufacturer for a specific printer. The type of soft font cartridges
you can create depends directly upon the presentment target that you select. See your printer
documentation for supported soft font packages.
You cannot create soft font cartridges for these presentment targets: Generic Microsoft
Windows Driver, HTML Template Generation, or any of the label type presentment targets.

TrueType
TrueType is an outline font. Outline fonts are scalable, so you can adjust their size without
distorting them. TrueType fonts will look the same on-screen in your template design, as they
will in your output template.
Most of the presentment targets support TrueType soft font cartridges: PostScript (v. 2013 and
up), PDF, PCL5, and PCL-XL.

Type 1
This is a type of outline font create by Adobe. These fonts provide the same benefits to your
template design as TrueType fonts.
These presentment targets support Type 1 soft font cartridges: PostScript, PDF, and the fax
presentment targets.

PCL (Printer Control Language)


These are printer fonts that are usable by Hewlett Packard (HP) compatible laser printers. You
can create soft font cartridges for these fonts for any PCL5 printer.
Remember that a printer font is available only to the printer. If your presentment target is a
PCL5 printer, and you want to use fonts that you can view on screen, you should create a
TrueType soft font cartridge.

Adobe Output Designer


Developing Templates

Advanced Font Considerations

118

AutoFont
PCL5 printers also support the HP AutoFont mechanism. You can create soft font cartridges for
any typefaces made specifically for these printers. When you create an AutoFont cartridge, the
font package updates an AUTOFONT folder with files containing the font metrics.

Selecting and Creating Soft Font Cartridges


You can access the mechanism for creating soft font cartridges by clicking File > Presentment
Targets and then clicking Font Setup for a specific presentment target. The Font Cartridges
tab shows you all the available font cartridges. This is where you select a font cartridge.
Font Cartridges Tab

To create new soft font cartridges, you must use one of the tabs corresponding to the type of
soft font the presentment target supports. Depending on the presentment target, you will see a
different set of soft font cartridge creation tabs. To use a new cartridge, you select it on the Font
Cartridges tab. The image below shows the tabs for a PostScript printer, with the TrueType tab
selected.

Adobe Output Designer


Developing Templates

Advanced Font Considerations

119

Font Setup Properties for a PostScript Printer

For better organization, we recommend that you store soft font files in a folder other than the
one that contains the Adobe software.
For detailed information about creating soft font cartridges, see the Output Designer Help.

Downloading the Soft Font Cartridge to the Presentment Target


When you create a soft font cartridge, you also need to specify how you want to download that
font information to the presentment target. Your choices are:
Download Option

Description

Permanent

Sends the information to the target once and presumes it remains


there until such time that the presentment target stops running.
You must also set the option Embed soft fonts in template when you
compile the template design. If you do not set this option, located in the
Compile dialog box, the presentment target relies on its resident fonts.
If it cannot find the font specified in the template design, it searches its
resident fonts for the closest match. If that process is unsuccessful, it
renders the text as Courier.
For the Portable Document Format (PDF) presentment target, if you
do not embed the soft fonts, the output Agent assumes that the font is
available on the computer that is running Adobe Reader.

Adobe Output Designer


Developing Templates

Advanced Font Considerations

120

Download Option

Description

Temporary

Sends the font information to the target and removes it, or considers it
unavailable, once the process has finished.
You do not need to select Embed soft fonts in template because the
output Agent automatically downloads the font cartridge to the
presentment target.
For the Portable Document Format (PDF) presentment target, the
font will always be embedded in the template (.mdf) at compile time.

Disk

Sends the font information to a disk connected to the printer. The font
stays there permanently.
The first time you compile the template design, you must select the
option Embed soft fonts in template. You then need to run Central
with the -q command line option to download the font to disk. After the
initial download of the font to the printer hard disk, you can compile
your template designs without selecting Embed soft fonts in
template.

FONT MAPPING
You may find that the selected presentment target does not support the fonts originally used in
a template design. Output Designer notifies you that this situation has occurred.
To assist you in such situations, Output Designer enables you to specify font mapping rules that
control font substitution. These font mapping rules are invoked when the current presentment
target does not support the fonts used in some aspect of the template design, or in an object
you are trying to place on a template design.
Typically, a need for font mapping occurs in one of two situations:

You are retrieving an object from the Template Object Library.

You open an existing template design and do not revert to the original presentment target
used during its creation.

Adobe Output Designer


Developing Templates

Advanced Font Considerations

121

Specifying the Font Mapping Options


If you do not specify any font mapping options, Output Designer prompts you to select an
alternate font as you open the template.
In order to have Output Designer automatically choose a substitute font, you need to specify
font mapping rules. To do this, click Tools > Options > Font Mapping. In the Font mapping
options area there are two settings that you can select:

Use JFONTMAP.INI file for font mapping instructs Output Designer to use this
configuration file for determining the font substitution.

Use extended font mapping instructs Output Designer to make as good a match as
possible.

If you select both options, Output Designer checks the jfontmap.ini file first.

What is jfontmap.ini?
jfontmap.ini is a configuration file that you can customize to specify substitution fonts for a
presentment target. When you try to open a template design created with a different
presentment target, Output Designer will check this file for font mapping rules only if you set the
Use JFONTMAP.INI file for font mapping option.
jfontmap.ini is installed in the folder where you installed Output Designer.
For information about the format of jfontmap.ini and its options, see the Output Designer Help.

Font Mapping in the Production Environment


Output Designer enables you to build font mapping attributes inside the template design. This is
useful in the production environment when you must output the template to a presentment
target that differs from the one you intended. Within the template design, you simply specify that
fonts for one presentment target should map to another. The font mapping eliminates the need
to have all the fonts installed on the alternate presentment target.
To specify font mapping, click Tools > Options > Font Mapping and create different mapping
rules between two different presentment targets. In addition to mapping the font typeface, style,
and size, you can also specify a character set mapping.
For detailed information about mapping fonts, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Advanced Font Considerations

122

SYMBOL SETS FOR WINDOWS PRINTERS


Output Designer needs to understand the symbol sets for which it will try to enumerate fonts.
You provide this information by clicking Tools > Options > Advanced and specifying one or
more symbol sets. The default symbol set is the Windows Active Codepage for your locale.
If the symbol set that Output Designer enumerates for is NOT the default symbol set, then it
adds the Windows symbol set suffix to the name of the font. For example, Output Designer
adds TH for Thai and W1 for Windows.
Often, fonts support multiple symbol sets. It would be inefficient to load the information for every
symbol set. You can enumerate which symbol sets are of interest to your template design by
clicking Tools > Options > Advanced and specifying one or more symbol sets.
Output Designer will add the Windows symbol set suffix to the name of the font in order to
differentiate it from other symbol sets for the font.
By default, on single-byte Microsoft Windows operating systems, only single-byte symbol sets
appear in the Font symbol sets for Windows printers area. This display is governed by the
Registry setting, FilterSymbolSets. To enable the display of double-byte symbol sets, change
FilterSymbolSets to No.
On double-byte Microsoft Windows operating systems, the default for FilterSymbolSets is No

DOUBLE-BYTE FONT SUPPORT FOR LABEL PRINTERS


N

EW

Output Designer only supports double-byte fonts on the Zebra line of label printers and only for
the Japanese language.

Additional Development Tools


This chapter describes some additional tools available to template designers and template
administrators. These tools will facilitate the development and administration of template
designs, and help to ensure consistency and a professional quality to all template designs.
In this chapter, you will find information about:

The JFBatch utility.

The Template Object Library.

Importing external template files.

Using schema definition files.

JFBATCH UTILITY
JFBatch is another tool that will assist you in the development of templates. Using the JFBatch
utility, you can execute a series of Output Designer commands quickly and efficiently, with no
user interaction. Many manual tasks, such as compiling a large number of templates in Output
Designer, can be completed automatically through JFBatch.
JFBatch is installed with Output Designer. Using JFBatch, you can:

Change the printer type and recompile template designs for the output Agent.

Export a template design.

Configure printer drivers using an .ics file to create an .icf file.

Perform system commands, such as deleting a file.

How JFBatch Works


JFBatch uses a batch file. This batch file is simply a text file containing the commands that will
execute during the batch process. The template designer or template administrator can create
one or more batch files each of which may operate on a single design file or a group of design
files. Using the Batch Compile and Batch Print commands, you can save time by processing
files as a set, rather than individually.

Adobe Output Designer


Developing Templates

Additional Development Tools

124

Using JFBatch
You will find detailed information about using JFBatch in the Output Designer Help, including:

How to create a batch file.

JFBatch commands.

Running JFBatch.

Return code values.

Sample batch and log files.

Considerations for using JFBatch.

TEMPLATE OBJECT LIBRARY


As you review your template design requirements, you will see objects that are common to
many templates. The Template Object Library provides a means of storing objects and fields
that template designers use repeatedly. As you create a template design, you can retrieve any
object from the Template Object Library. This not only reduces the effort required to create the
template design, but ensures consistency amongst the designs.
You submit these objects to the Template Object Library directly from Output Designer. Once
you store template objects and fields in the Template Object Library, you can retrieve them from
inside Output Designer using the Library Tear-off. For information about the Library Tear-off,
see Tear-Offs on page 17.
You can also store complete template designs and templates in the Template Object Library.
The Template Object Library allows you maintain more than one version of a template design.
Template Object Library uses tables to maintain and organize the objects it stores. These
tables provide information such as authorized users, template categories, and field information.

Opening the Template Object Library


The Template Object Library accompanies Output Designer, and is installed by the Setup
program. You can open it by clicking Start > Programs > Adobe Output Designer 5.7 >
Template Object Library.
Template Object Library Signon Dialog Box

You need to supply a User id. The default User id is Adobe. This value is case-sensitive.
There is no Password. The Template Object Library administrator usually accesses the
Template Object Library the first time to set up users. Once other User ids and Passwords have
been created, the administrator can delete this default User id.

Adobe Output Designer


Developing Templates

Additional Development Tools

125

Template Object Library Window


This section briefly explores the Template Object Library window to give you an overview of its
environment.
Template Object Library Window

When you launch the Template Object Library, you see two open windows:

The main Template Object Library database window is open in the front and contains a
series of tabs. The Reports tab provides a list of reports available from the Template Object
Library. There is also a tab for each of the library tables.

A more general window, which contains the File, Tools, and Help menus, is open in the
background.

You can toggle between these windows simply be clicking in the desired window to make it
active. If you close the main database window, you need to sign on again.
Within the Template Object Library itself you can perform a number of different activities.
However, you can access the Template Object Library directly from Output Designer and use it
as you work.
For detailed information about using the components in the Template Object Library, see the
Template Object Library Help.

Using the Template Object Library in Output Designer


Once an administrator has setup accounts in the Template Object Library, users can begin to
build a library of objects from within Output Designer. Provided that you have the appropriate
privileges, you can:

Submit objects or fields you create in Output Designer.

Retrieve objects and fields for use in a template design.

Adobe Output Designer


Developing Templates

Additional Development Tools

Submit entire template design (.ifd) files, as well as template (.mdf) files.

Retrieve template design and template files.

126

For information about using the Template Object Library with Output Designer, see the Output
Designer Help.

Enabling the Template Object Library


When you installed Output Designer, the Template Object Library was not automatically
enabled. In order to be able to access it from within Output Designer, you must first enable the
Template Object Library.
To access the Template Object Library from inside Output Designer, click Tools > Options >
Advanced and select the option Enable Template Object Library.

Submitting Objects and Fields


Once you have enabled the Template Object Library, you can begin submitting objects and
fields, provided that your administrator has given you write permission to the Templates table.
Without this level of permission, you will not be able to submit objects and fields.
Submitting objects and fields from within Output Designer to the Template Object Library is very
straightforward. With a template design file open, simply select the desired objects or fields and
submit them by clicking File > Submit Object or File > Submit Field.
When submitting objects and fields, you should:

Assign each object and/or field an understandable name. This makes them easier to
manage and retrieve at a later date.

Provide a useful description that helps distinguish it from other library elements.

Consider whether you want to allow the people who reference the object to also be able to
modify the object.

Note: When you submit an object or field to the Template Object Library, there is no link
between the current template and the Library. The act of retrieving a copy of an object
or field from the Library Tear-off on the Control Bar creates a link between the Library
and a specific template. It is good practice to submit all your objects and fields first and
then retrieve them from the Library as needed.

Retrieving Objects and Fields


As you create a template design in Output Designer, you can select Object and Field elements
from the Template Object Library and place them on your template. Retrieving objects and
fields from the Template Object Library does not require any special access privileges.

Adobe Output Designer


Developing Templates

Additional Development Tools

127

From within Output Designer, use the Library Tear-off on the Control Bar to retrieve an object
or field. You need to specify whether you want an Object or Field. Then, from the list of
available items, you select the object or field that you wish to retrieve. If you select an Object,
Output Designer shows you a preview of the object in a thumbnail window.
Selecting an Object from the Template Object Library
Retrieve Icon

Submitting Templates
You can submit both template design (.ifd) files and compiled output template (.mdf) files to the
Template Object Library. However, unlike submitting objects and fields, you do this from inside
the Template Object Library and not Output Designer.
When you submit a template design or template to Template Object Library, the template must
already be named and saved. You specify the template name and any other relevant
information, such as version and creator, in Output Designer. The more information you
provide, the easier it will be to distinguish the template from others in the library.
When you are ready to submit a template design or template to the Template Object Library,
open Template Object Library and click File > Submit Template or File > Submit Design.

Retrieving Templates
You can also retrieve template designs or templates from Template Object Library for use with
Output Designer. As with submitting templates, you do this from within the Template Object
Library itself.
When you retrieve templates or template designs from the Template Object Library, you first
store them in the folders where you normally store your template designs and templates. Once
the template designs or templates are stored in the appropriate folder, you can access them at
any time.
To retrieve a template or template design, click File > Retrieve Template.

Adobe Output Designer


Developing Templates

Additional Development Tools

128

Managing the Template Object Library


The main Template Object Library window contains a series of tabs that serve to assist the
administrator and/or designated users with the management of the Template Object Library.
What you can see and do in this window depends entirely upon the authorization level that you
have for each of the tabs. The impact of the different Authorization levels are:

No access: Prevents you from seeing the tab.

Read: You can view the contents of the tab, but not change anything.

Read/Write: You can view and change elements of the tab.

Note: If you are working in a single-user environment, where the Template Object Library is
installed on your computer and you are not sharing it with any other designers, you will
have access to all the tabs, unless you specifically change your authorization level.
Each tab captures information about a different aspect of the Template Object Library.
Tab

Purpose

Users

Contains information about individual users.

User Groups

Identifies the end users of template designs or templates, by group.

Template Categories

Identifies the categories of template designs and templates.


Categories clearly identify the purpose of the template design or
template. You specify the categories here and assign them to
templates as you submit them.

Group Presentment
Targets

Identifies the presentment targets for category groupings. This


enables you to perform a batch compile of template designs from the
Template Object Library.

Templates

Provides information about each template design and template in


Template Object Library. One entry appears for each template design
or template, regardless of the number of versions. The Template
Object Library updates the entry with the current version number.

Template Objects

Provides information about each individual object in the Template


Object Library, as opposed to those inside submitted template design
(.ifd) and template (.mdf) files.

Field Information

Provides information about each individual field in the Template


Object Library, as opposed to those inside submitted template design
(.ifd) and template (.mdf) files.

For complete information, see the Template Object Library Help.

Adobe Output Designer


Developing Templates

Additional Development Tools

129

Generating Reports
From the Reports tab, you can produce reports about the different aspects of the Template
Object Library. The Template Object Library uses Adobe Reader to display the reports.
Report Names and Contents
Report

Contents

Users

Authorized users of Template Object Library.

User Groups

The user groups defined for the Template Object Library.

Form Categories

Template categories defined in Template Object Library.

Templates

Descriptive information about template designs and templates. Each


new version of a template design or template submitted to Template
Object Library is captured in the Version field.

Template Objects

Information about each object in Template Object Library.

Object Template
Cross-Reference

Information about the objects and fields submitted to Template Object


Library, with individual cross-references to the parent template or
template design.

Field Information

Identifies each field in Template Object Library.

IMPORTING TEMPLATES INTO OUTPUT DESIGNER


Just as you can use the Template Object Library to retrieve template designs, Output Designer
also enables you to import the contents of a previously created template design file directly into
your current template design. This can significantly reduce the work involved in building
template designs and provide consistency across a range of design projects.
You can import these template designs into Output Designer:

The first page of Output Designer design files (.ifd).

Template Interchange Files (.fif), created by the Output Designer Export command. These
files contain the design information about each object on the template design. Most users of
template interchange (.fif) files have custom applications that require this specialized format.
While you do not use template interchange (.fif) files in the normal operation of Output
Designer, you can re-import these templates if the need arises.

To import an external template design and insert its contents into the current one, click File >
Import and navigate to the desired template file.
For information about exporting templates, see the Output Designer Help.

Adobe Output Designer


Developing Templates

Additional Development Tools

130

SCHEMA DEFINITION FILES


When sharing data between databases and templates, you need to ensure that the fields in the
template design have the same name, width and height attributes as those in the external
database. If you have access to them, schema definition files facilitate the effort of matching the
fields in your template design to those in your data file. With Output Designer, you can
consistently and accurately define field information by referring directly to a schema definition
created by the external database or data source.
Output Designer can process schema definition files from these sources:

User-created schema definition files (.sdf)

Microsoft BizTalk XML schema files (.xml)

dBase files (.dbf)

Output Designer enables you to reference these schema definitions to obtain certain pieces of
field information.

Using a Schema Definition in Output Designer


If you intend to use a schema definition file, when do you use it? When you are creating fields
and assigning name and size attributes in Output Designer. However, to use a schema
definition, you must first select a schema definition file to load into Output Designer.

Inserting Fields from a Schema Definition File


Output Designer supports two methods for inserting a field from a schema definition file (.sdf).
One way is to format an existing field to match the desired field from the schema file. The
second method is to open a schema file and drag the desired fields directly onto your template
design.
Note: For Microsoft BizTalk XML schema files (.xml), you must use the first method - format an
existing field to match the desired field from the schema file.
To format an existing field
1. To specify the schema definition file to use, click Tools > Select Schema File and navigate
to the appropriate file.
2. Insert a new field onto your template design.

Adobe Output Designer


Developing Templates

Additional Development Tools

131

3. Open the Format Field dialog box. There is now a Select button to the right of the Field
name box. By clicking Select, you can see all the fields in the schema definition file.
The Select button appears after
you have loaded an SDF file.

After you click


Select, you can
see the field
names in the
schema file.

4. Select a field from the schema definition file. The field name, type, and size attributes are
assigned to the field you created in Output Designer.
Note: Only the field name, type, and size are assigned to the new field on the template design.
Other attributes, such as Associated Text, are not updated.
To drag and drop fields onto your template design
1. To specify the schema definition file to use, click Tools > Select Schema File and navigate
to the appropriate file.
2. Select a Schema file.
The Field Selection from Schema dialog box opens with a list of fields contained within that
schema definition file.
Field Selection from Schema Dialog Box

Adobe Output Designer


Developing Templates

Additional Development Tools

132

3. Drag the desired fields from the Field Selection from Schema dialog box, directly onto your
template, in the desired locations.
Note: You copy all of the fields at once by clicking All Tables, and then dragging it into your
template.

User-Created Schema Definition File


Typically, if you have a schema definition file, it will be generated by some site-specific custom
generator. However, if necessary, you can create a schema definition file using any ACSII text
editor, such as Notepad, or by having Output Designer generate one from a set of sample data.

Using an ASCII Text Editor


The schema definition file format is simply ...
!f fieldname height width

... where !f is the field name identifier, fieldname is the name of the field, height is the
number of lines in the field and width is the length or number of characters for the field. For
example:
!f Emp_id 1 25

In the event that you have defined multiple source tables in a single schema definition (.sdf) file,
you need to add identifiers for each table. Use the command...
!n 1 name

... where !n is the name identifier, 1 is the sequential identifier, and name is the name of the
source of the field. For example:
!n 1 C:\Program Files\Adobe\Output Designer 5.7\Examples\Data\Podetail

Generating with Output Designer


Output Designer includes a facility for generating a schema definition file from a supplied
field-nominated data stream (.dat), an Extensible Markup Language (.xml) file, or from another
schema definition (.sdf) file. The accuracy and effectiveness of the resulting file (.sdf) is
dependent on the quality of the sample data from which it is generated.
To generate an schema definition (.sdf) file from sample data
1. Click Tools > Scan Data Fields to Create Schema File... .
2. Specify the field-nominated (.dat), Extensible Markup Language (.xml), or the schema
definition (.sdf) files that you would like to include in the new schema definition (.sdf) file.

Adobe Output Designer


Developing Templates

Additional Development Tools

133

3. Specify a name and location for the new schema definition (.sdf) file. If you would like to add
field definitions to an existing schema definition (.sdf) file, then specify that file and its
location.
4. Click Open.
Note: The newly generated schema definition (.sdf) file contains all the unique field definitions
contained within the included files. Any fields with multiple copies have only one
occurrence within the generated schema definition (.sdf) file.

BizTalk XML Files


XML format schema files created by BizTalk contain only field name information. You will need
to supply the other size attributes.
It is also important to remember that XML is case-sensitive. If your data is in XML format, you
need to ensure that the field names in the template design match the case of the field names in
the data file.

Job Tickets
Job tickets are a feature of Xerox DocuPrint and DocuTech printers that let users take
advantage of a wide range of printing and finishing options. Using job tickets, users can specify
requirements such as paper type, number of copies, and banner page information. Central
supports this feature by providing printer drivers for DocuPrint models 4850 NPS, 4890 NPS,
4090 NPS, and DocuTech models 135 and 6135.
In this chapter, you will find information about:

How job tickets work.

Creating a job ticket.

HOW JOB TICKETS WORK


Job tickets consist of a series of mandatory and optional records. Each record contains one or
more attributes or instructions related to a specific print job requirement.
The following illustration shows the process for creating a job ticket for a template.
Creating a Job Ticket

Using Output Designer, you can associate a job ticket with a template design. Output Designer
includes a series of dialog boxes that enable you to capture information for the job ticket. When
you save the job ticket, Output Designer automatically creates a separate text file for the job
ticket. The text file contains the job ticket records, stored as command line options for Print
Agent of Central.

Adobe Output Designer


Developing Templates

Job Tickets

135

At compile time, Output Designer saves the job ticket records in the custom properties of the
template design. Subsequently, to support modification, these properties are used to populate
the job ticket dialog boxes with the appropriate values.
Both the text file and the template are required at print time. Print Agent assembles the job
ticket information and adds it to the beginning of the output stream. Command line options for
Print Agent and printer operator intervention allow for overrides to job ticket records.
For more information about the command line options, see the Print Agent Reference guide.

Creating a Job Ticket


A simple set up procedure makes the job ticket feature available in Output Designer.

Setting Up Output Designer


The job ticket feature is not automatically turned on when you install Output Designer. To
enable the use of job tickets, you must:

Check to see that you installed the correct presentment targets that support job tickets. If
not, you will need to do that first.

When the correct presentment targets are in place, you need to enable job tickets by clicking
Tools > Options > Advanced and selecting Enable job ticketing.

Once you have done this, you should see the item Xerox on the Menu Bar. Use this menu to
specify job tickets.

Specifying the Job Ticket


Before you can actually create a job ticket and assign it some attributes, you must save the
template design. (Output Designer will need the template name when you save the job ticket.)
Having saved the template design, you assign the values for a job ticket to the template design
using the special Xerox dialog box. Simply select Xerox > Job Ticketing and specify your
printer.
Printer-Specific Dialog Box for Specifying Job Ticket Attributes

Adobe Output Designer


Developing Templates

Job Tickets

136

You will need to specify a number of attributes including:

An appropriate printer.

Job ticket attributes such as finishing, copy count, duplex, image shift,
and paper stock.

Unit of measure for custom paper sizes, as well as for image shift values.

Job notes that provide additional information, a banner message or instructions for the job
ticket.

Paper sizes and stocks, as well as changes in paper stock for individual
ranges of pages.

The highlight color for the DocuPrint printers, models 4850 NPS and 4890 NPS, that support
this attribute.

For detailed instructions about setting these attributes, see the Output Designer Help.

Save the Job Ticket Records


Once you have specified the job ticket attributes, save the job ticket records. Output Designer
creates a text file with the same name as the template design and an extension of .jft. The file
contains the job ticket records in the form of command line options for Print Agent.
You can change the saved values for any of the job ticket records at any time. However,
selecting a different printer will cause most of the job ticket values to default to values
appropriate to the new printer.

The Job Ticket Text File


When you saved the job ticket, Output Designer created a text file using the template design
name and an extension of .jft.
The text file contains a series of Print Agent command line options, each of which corresponds
to a specified job ticket record. Each entry in the text file uses the -agv command line option,
which sets a global variable. This option uses the format ...
-agvglobal=value

... where global is the variable name and value is its value.
For example:

The number of copies that will print is stored as -agvcopies=n, where n is the specified
number of copies.

The color of the paper is stored as -agvpcolor=color, where color is the specified
paper color.

Output Designer stores the text file in the same folder as the template design. When the
template is ready for use, you must copy both the template (.mdf) and the job ticketing (.jft) file
to the folder where Print Agent templates are stored.
For details about -agv, see the Print Agent Reference guide.

Adobe Output Designer


Developing Templates

Job Tickets

137

Job Ticket Document Variables


To store the job ticket with the template design, Output Designer creates several custom
properties at compile time. These use the prefix _xjf, or are named Page_Setup and
Page_Default. You can view the custom properties by clicking Format > Template Preamble
and selecting an item from the Custom name drop-down list.
For example, when you specify a banner message in the Job Notes dialog box for the job
ticket, and compile the template, the resulting DocVar, _xjfmsg, appears in the Custom
Properties for the template design:

Do not change the DocVars created for the job tickets. Use the job ticket dialog boxes to modify
any job ticket records, and then recompile.

Advanced Template Concepts


This chapter describes the processing that occurs behind the scenes when you compile a
dynamic template. It also looks at some of the more advanced techniques involved in the
creation of dynamic templates. Once you are comfortable with the basics of the creating a
dynamic template, refer to this chapter for ideas about further enhancements you can make to
your templates.
In this chapter, you will read about:

JFPREAMBLE and JFPREAMBLE_1

Creating overflow fields

Using !Format events

Dictionaries

Intelligent pagination

PROCESSING A DYNAMIC TEMPLATE


We have looked at what is involved in putting together a dynamic template. Now you need to
examine the processing that Output Designer automatically carries out for you.
When merging a dynamic template with data, an output Agent dynamically constructs the
output template by laying down some combination of the subforms on the template, based on
the contents of the data file.
Output Designer creates the rules for processing the subforms and defines these rules as
entries in something called the Group dictionary. These entries also include the Intelligent
Pagination commands that control the page breaks in the output template. The output Agent
finds these rules and commands in the preamble, and loads them before it ever looks at the
data. By including the processing rules in separate files, Output Designer enables you to
maintain a pure data file, one that is not cluttered with processing and pagination commands.
For information about the Group dictionary, see page 152.
This section provides information about:

Rules for processing a dynamic template.

Document variables known as JFPREAMBLE and JFPREAMBLE_1.

Positioning fields.

Intelligent pagination commands.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

139

Rules for Processing a Dynamic Template


When you compile a dynamic template, Output Designer automatically creates a set of rules
that dictate how the output Agent should handle the data. These rules determine how/when the
subforms are laid down on the output. These rules are called the preamble. The output Agent
loads the rules from the preamble before it processes the data.
The preamble contains all the information that you designed into your template for triggering
new subforms, end-of-page and page full conditions (otherwise known as intelligent
pagination), and field-not-found and field-full rules. For example, it is the preamble that says if
field A is not found on this subform, then lay down this other subform.
Output Designer automatically creates the rules in the preamble when you compile. If, you need
to override a rule, you can do so by defining a few exceptions, without destroying the integrity of
the other rules.
Where do all these rules reside? In two document variables called JFPREAMBLE and
JFPREAMBLE_1.

Understanding JFPREAMBLE and JFPREAMBLE_1


The first time you compile a dynamic template, Output Designer creates two custom properties
for the template called JFPREAMBLE and JFPREAMBLE_1. These two custom properties,
known as DOCVARs (document variables), contain the processing rules for the template. It is
JFPREAMBLE that the output Agents look for when the time comes to merge data with
template.
Even though the output Agent looks for JFPREAMBLE, it is JFPREAMBLE_1 that contains all
the commands (subform attributes) that you want applied to your template. JFPREAMBLE
contains a reference to JFPREAMBLE_1. The output Agent opens JFPREAMBLE, finds the
reference to JFPREAMBLE_1 and then proceeds to load the commands in JFPREAMBLE_1.
After the first compile, Output Designer never touches JFPREAMBLE again. However, each
subsequent time you recompile, Output Designer automatically regenerates the contents of
JFPREAMBLE_1.
You can view the contents of each of these custom properties by clicking Format > Template
Preamble.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

140

Custom Properties Tab Showing JFPREAMBLE

For further discussion about the preamble, see Intelligent Pagination on page 150.

A Note About Preamble Size


A preamble can be up to 32K in size. Depending on the size of your template design, Output
Designer automatically creates multiple chained preamble DocVars, numbered
JFPREAMBLE_2, JFPREAMBLE_3, JFPREAMBLE_4, and so on as required. You will see
these when you click Format > Template Preamble.
If you are using a version of Central that is earlier than version 5.2.6, Print Agent cannot read
the entire chained preamble. You must convert the chained preamble to a single preamble.

Overriding the Processing Rules in JFPREAMBLE_1


While it is not usually necessary, you can override any of the processing rules in
JFPREAMBLE_1 if required. This effectively customizes the instructions that you send to the
output Agent.

Modifying JFPREAMBLE
Because Output Designer automatically regenerates JFPREAMBLE_1 with each compile, you
need to make any changes to the processing rules in JFPREAMBLE. When you add a
processing rule to JFPREAMBLE, the output Agent determines whether it overrides an existing
rule, or whether it is a new one. If the processing rule in JFPREAMBLE matches an existing
rule, it will override the rule in JFPREAMBLE_1. If the processing rule defines a new event
handler for a group, the output Agent adds it as a new rule.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

141

For example, JFPREAMBLE_1 contains this processing rule:


^define group:VENDOR!FldUsed \groupMax\fieldVENDOR

and you provide this processing rule in JFPREAMBLE:


^define group:VENDOR!FldUsed \groupMax\fieldCOMPANY

The output Agent will delete the processing rule in JFPREAMBLE_1 and replace it with the one
provided in JFPREAMBLE. For more information, see Group Events and Field Events
Handlers on page 154.

Other Overrides to JFPREAMBLE_1


There are two other situations that can override processing rules in JFPREAMBLE_1:

Through a custom, external preamble file, specified on the command line using the -apr
option. (Uncommon.)

Through preamble statements in your data file. (Not recommended.)

Which Preamble Takes Priority?


Normally, you do not have to worry about which preamble takes priority over another. The
output Agent executes the commands in JFPREAMBLE_1. However, if you have modified
JFPREAMBLE, or have included preamble statements in an external file or your data file, you
should be aware of how the output Agent processes the preamble files.
This is the order in which the output Agents process the preamble variables:

Processing rules in JFPREAMBLE_1 are loaded first.

Processing rules in JFPREAMBLE override those in JFPREAMBLE_1.

If there is an external preamble file (not very common), processing rules contained here
override those in JFPREAMBLE.

Finally, if the data file has preamble statements (highly discouraged), these processing rules
are loaded last and overwrite all other rules.

Note: If you are using Central, you can review an example of how Print Agent processes
dynamic templates. Look for the file called dynamic_forms.pdf, located in
Samples\exprint\Documents\ where Central is installed.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

142

Subform Processing
The preamble that Output Designer automatically generates contains the processing
commands for all its subforms. Always check the preamble to determine the order of the
subforms in the output.
In general, the generated preamble keeps all subforms in the same order as they appear in the
template design. The exception to this behavior is when a parent/child relationship exists
among some combination of subforms. In this case, Output Designer finds the first parent
subform and at this point, places all parent/ child subforms together within the preamble.
In addition, different processing rules come into effect according the type of subform - Header,
Detail or Trailer. Here is a summary of the processing rules with which you should become
familiar.
For a complete description of the commands found in the preamble, see Intelligent Pagination
Reference on page 155.

Rules for All Subforms Types

When a subform contains only repeating fields (that is, fields that already exist on a
previous subform), the subform effectively has no fields and it will be treated as such, that is,
as a subform without fields.

A subform will generate \group commands for fields events AND contain an !OnEntry event
when it follows a Header subform that does not have fields:

The \group commands will cause a switch group to occur.

The !OnEntry event will force an action to occur on the Header subform.

Rules for Header Subforms

Header subforms always generate \group commands for field events, thus forcing a group
switch to occur when used. For more information about groups and events, see Groups and
Events on page 151.

When a Detail subform follows a Header subform with fields, the Detail subform generates
\group commands for field events, thus forcing a group switch to occur when used.

When a Header subform does not have fields, the subform that follows it generates \group
commands for fields events AND contains an !OnEntry event:

The \group commands will cause a switch group to occur.

The !OnEntry event will force an action to occur on the Header subform.

When a Detail subform specifies a Header subform without fields as the parent subform, the
Detail subform generates \group commands for field events AND contains an !OnEntry
event.

The \group commands will cause a switch group to occur.

The !OnEntry event will force an action to occur on the Header subform.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

143

Rules for Detail Subforms

The output Agents treat a Detail subform following a Detail subform as a sub-detail. In this
situation, !OnEntry events are ignored and no group switching occurs.

When a Detail subform follows a Detail subform with fields, the Detail subform generates
@group: dictionary commands for field events. This means no group switching occurs.

When a Detail subform follows a Detail subform without fields, the Detail subform generates
@group: dictionary commands for field events. Again, this means that no group switching
occurs.

When a Detail subform specifies a Detail subform without fields as the parent subform, the
Detail subform generates @group: dictionary commands for field events.

Rules for Trailer Subforms

Trailer subforms always generate \group commands for field events, thus forcing a group
switch to occur when used.

General Rules

The !OnEntry event redefines the !OnBOF event using two groups, BOF1 and BOF2. The
!OnBOF redefinition is necessary for situations requiring a different set of page overflow
subforms. For example, an insurance claim form with multiple sections per page.

The At End-of-Page subforms are referenced in the !OnBOF event in the following order:

The bottom-of-current page subforms are first, followed by a SWITCHPAGE, followed by


at top-of-next page subforms. These subforms are referenced by the @group: dictionary
command.
The !OnBOF event is executed by the output Agents for the current active group.

ADVANCED FIELD TECHNIQUES


There are some advanced techniques that you can apply to fields in a dynamic template to
extend their flexibility. These include:

Making a field expandable to accommodate varying amounts of data.

Using !Format events to specify dynamic formatting or simple calculations.

Expandable Fields
Frequently you will find that certain fields in the template design need to display different
amounts of data in the output. Typically these are Text fields that provide descriptions of
varying lengths. To accommodate these types of situations, you can apply the Expand attribute
to a field that needs to fluctuate in size. Such fields are commonly referred to as overflow fields.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

144

When formatted to expand, an overflow field will expand vertically, at output time, to
encompass any given data. For example, in a catalogue of parts, the description of each part
may vary. You could assign the Expand attribute for the field. The field will expand or contract
vertically, depending on the amount of the data it needs to accommodate.
The Expand attribute is located in the Format Field dialog box and has two settings:

No Expand: In the output, the field does not expand to accommodate extra data. The field
displays precisely the number of characters set for the field width and height. This is the
default setting.

Expd.Prt: In the output, the field can expand to accommodate more data than the number of
characters set for the field in the template design.
When you select this option, you need to specify an Overflow subform. (By default, the text
overflows onto another copy of the same subform.)

Designing an Expandable Field


When you assign the Expand attribute to a field, you are instructing the output Agent to lay
down a new subform (usually one line high), fill that subform with the overflow data, and repeat
the process until there is no more data. The output Agent will wrap the overflow data according
to rules described under the ^reformat fold command. For details about ^reformat fold, see
the Print Agent Reference guide.
Note: Because a field with the Expand attribute is automatically processed using ^reformat
fold, a reformat option set for the data file is ignored for this field.
Creating a field formatted to expand means you are actually defining a field !OnOverflow
event. You can find a description of this event in Field Event Handlers on page 157.
To create an expandable or overflow field
1. Ensure that the field that you want to overflow is placed at the end of the field list in the
subform in which it is located.
2. Create a subform containing only one field. Give this field the same name as the field that
will overflow. This subform with a single field will capture the overflow data.
3. Format the overflow field with the Expand attribute and select the subform containing the
single field as the Overflow subform.
Note: Do not assign the Expand attribute to a global field. Global fields occur in multiple
locations on the template and, as a result, cannot trigger the overflow event.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

145

Example
In this next example, the DetailLine subform contains six fields. The only field that would have
varying amounts of data is the Description field. It is formatted with the Expand attribute. The
subform called LineOverflow is the designated Overflow subform. It contains one field,
Description, into which the overflow data from the Description field in the DetailLine subform will
flow.
Example of an Expandable or Overflow Field
DetailHeader
subform.
DetailLine subform.
Description is the
overflow field.
LineOverflow
subform has one
field, Description.

Note: The structure of the data file must ensure that the expandable field is the last field in the
subform that gets filled. This is because once the LineOverflow subform is called and it
receives the overflow data, further processing will continue with a new instance of the
DetailLine subform. Once a new instance of the DetailLine subform is called, any
unfilled fields from the previous instance of the DetailLine subform will be left unfilled,
because the previous instance of the subform cannot be reactivated.

Using !Format Events in Fields


Using the !Format event attribute, you can include an expression that specifies dynamic
formatting for a field or simple calculations that are integral to the presentment of your data. For
example, you could specify that in the output, a field be colored red if its value is negative.
Another excellent use is for computing information that can only be known at presentation time,
like page subtotals or page counting.
You can also use a !Format event to place a non-global field in the Global dictionary. Once it is
in the Global dictionary, you can make multiple references to it, do calculations, or have it
appear on trailer subforms. For information about the Global dictionary, see the Global
Dictionary on page 167.

Components of a !Format Event Expression


The !Format event expression can consist of several different components. It can contain
some combination of:

Functions

Calculation variables and operators

Inline Text Control commands

Adobe Output Designer


Developing Templates

Advanced Template Concepts

146

To access the !Format event box, select the field and click Format > Field. While you can
enter an expression directly in the !Format event box, Output Designer provides a set of tools
that you can use to construct your expression. To access these tools, click Full !Format.
Specifying a !Format Event
Shows the
current
expression if
one exists.

Function
category.

List of global
fields in the
template
design.

List of
built-in
functions.

Description and example of


each function.

Functions Available to !Format event


Output Designer includes a series of built-in functions that you can use to create a !Format
event expression for a field. When you click Full !Format in the Field Format dialog box, you
can access the complete set of functions. These functions fall into three categories:

Arithmetic

Logic Control

String manipulation

When you select a function from the Functions list, Output Designer provides you with a
description and one or more examples in the Description area of the dialog box. For a
description of each of the functions, see the Output Designer Help.

Using the Functions with Other Tools


In addition to the built-in functions, Output Designer supplies you with a set of tools to help build
an event expression for a field. These tools include:

An editable area for constructing the event expression.

A list of global fields in the current template design that you can use in the expression.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

A keypad containing different operators and expression elements.

A tool for including the current field in the expression.

A tool for changing the case-sensitivity of a relational operator.

147

You can use any combination of these tools along with the built-in functions as you create the
expression. Alternatively, if you are completely comfortable with the required syntax for the
expression, you can edit the expression manually.
For information about using these tools to create a !Format event, see the Output Designer
Help.

Summary of How !Format Event Works


There are a number of steps involved in creating a !Format event for a specific field. You
specify the appropriate parameters in the !Format event box in the template design. During the
compile process, Output Designer completes the required syntax. Here is a summary of the
steps involved:

For a given field, you supply the function or expression and related variables in the !Format
event box.

If you want to reference another template field in your expression, the referenced field must
be a global field.

To apply a function to the current field, include the field in the expression by using the This
Field option in the dialog box.

By default, the relational operators are case-sensitive. However, each operator has a
case-insensitive version. To apply case-insensitivity, click the Case Insen. option.

During the compile process, Output Designer automatically adds the rest of the !Format
event command syntax to JFPREAMBLE_1. For a discussion of JFPREAMBLE and
JFPREAMBLE_1, see page 139.

Creating a !Format Event


A !Format event is actually an example of a field event handler. A field event is a condition that
occurs for a field while the output Agent is processing the data. The output Agent calls the field
event handler when it encounters the condition specified for the field. For information about field
and group events, see page 151.
When you create a !Format event in Output Designer, you actually need supply only part of the
command syntax. During the compile process, Output Designer automatically completes the
syntax and adds it to JFPREAMBLE_1. The complete syntax for the !Format event is ...
^define group:fieldname!Format expression

... where expression is an expression that contains one or more calculation variables,
operators, or functions.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

148

An example of a !Format event is ...


^define group:PartNumber!Format

@(Substr ("@_$_.",1,5))

... where PartNumber is the fieldname, and Substr is the function being specified for the
event.

Specifying the !Format Event


Using the example in the previous section, we can look at what you must specify in the !Format
event box, and what Output Designer automatically creates during the compile process.
In the !Format event box, you only need to supply what comes after !Format. Output
Designer automatically supplies the rest.
For example, you want to extract the part number from a string that includes the warehouse
location, as in PN001(Cen). PN001 is the part number, and (Cen) represents the warehouse
code. To do this, you can use the Substr() function, which the following syntax:
Substr (s1, n1, n2)

...where s1 is the string to be evaluated, n1 is the character position in string s1, and n2 is
the number of characters to extract.
To apply the Substr function to the PartNumber field
1. In the template design, double-click the PartNumber field.
2. Click Full !Format.
3. In the Functions list, double-click Substr (s1, n1, n2).
Output Designer populates the upper portion of the window with this expression:
@(Substr (s1, n1, n2))

Now the expression contains some extra elements. (Remember that this is a fragment of the
complete expression that Output Designer automatically adds to JFPREAMBLE_1.) The most
important new element is the @ symbol.
@ identifies the text following it as variable substitution text. Variable substitution text enables
you to substitute values for variables during the data processing. So, when the output Agent
encounters an @, it substitutes the @ and the variable following it with the equivalent value.

You still need to supply the parameters for the Substr() function. Start with s1. s1 is the string
representing the part numbers complete code. The current field PartNumber contains that
string.
For more information about substitution variables, see the Print Agent Reference guide.
To make s1 the current field
1. Highlight s1. (Output Designer does this automatically.)

Adobe Output Designer


Developing Templates

Advanced Template Concepts

149

2. Click This Field, located at the bottom right of the dialog box. The expression changes to
look like ...
@(Substr (@_$_., n1, n2))

... where @_$_. is the global variable that stores the data for the current field, PartNumber.
The period denotes the end of the variable.
3. The correct syntax requires that you enclose the global variable, @_$_., in quotation
marks. The expression now looks like:
@(Substr ("@_$_.", n1, n2))

Note that the "@_$_." variable is valid within the context of the !Format event only. No
other event supports it.
Now you need to specify the position of the first character in s1 that you want to extract. In the
part number PN001(Cen), the first character to extract is P.
To specify the position of the first character

Replace n1 with the position of the first character. For PN001(Cen), the position is "1."
The resulting expression is:
@(Substr ("@_$_.", 1, n2))

Finally, you need to specify the number of characters to extract. This number includes the first
character. In the part number PN001(Cen), we want to extract PN001 and strip off (Cen).
To specify the number of characters to extract

Replace n2 with the number of characters to extract. For PN001(Cen), the number is "5."
The resulting expression is:
@(Substr ("@_$_.", 1, 5))

Testing the !Format Event


The !Format event is now complete and ready for testing.
To test the !Format event
1. Click OK to leave the Specification for event dialog box.
2. Click OK to leave the Field Format dialog box and save your work. At this point Output
Designer validates the expression for correct syntax. If the expression has syntax errors, you
need to modify it before continuing.
3. Use Test Presentment to view the output. It is best to use your own test data, or sample
data, modified to produce meaningful results.
4. Click Format > Template Preamble.
5. In the Custom name drop-down list, select JFPREAMBLE_1. You will examine its contents
in the next section.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

150

Examining JFPREAMBLE_1 After Compiling


If you examine JFPREAMBLE_1, you see the following:
^define group:PartNumber!Format

@(Substr ("@_$_.",1,5))

During the compile process, Output Designer automatically generated the first part of the field
event: ^define group:PartNumber!Format. For more information about the compiling
process and JFPREAMBLE_1, see Rules for Processing a Dynamic Template on page 139.
When an output Agent processes the template and encounters the PartNumber field, it
applies the expression specified in !Format event and performs the required text substitution
processing. The resulting text becomes the new data for the field.
For a complete description of this event, along with its usage and syntax, see
fieldname!Format (Field Formatting) on page 158.

Processing Functions
What happens if a function expects one type of argument but you pass it something different?
Here is a summary of the processing that generally occurs:

Function expects a numeric argument but is passed a string argument: An attempt is


made to convert that string to a number. If the string consists of alpha characters, the result
will be 0. However, if the string starts with some digits, those digits are converted from a
string to a number and the function proceeds. For example, Abs(2) or Abs(2) are evaluated
correctly with the result being 2. However, Abs(Junk) results in 0.

Function demands a string argument but is passed a numeric argument: An error code
is generated and an error message notifies you of a mismatch in parameter types.

Processing @variables.
When you use @variables. in your calculations, it is extremely important to understand how the
output Agent processes them. The output Agent substitutes all @variables. in a right-to-left,
recursive manner before it resolves any Inline Text Control commands. That is, all variables are
substituted right-to-left before any inline commands are executed.

INTELLIGENT PAGINATION
We have looked at how Output Designer automatically creates the processing rules for your
template design. Output Designer gives you the ability to create events for a template page and
to make these events active at the appropriate time. Such events can include appropriate page
breaking by calculating whether there is adequate space to lay down a subform on the current
page or whether to place it at the top of the next page. This is known as intelligent pagination.
To have your template take advantage of intelligent pagination, your data must be in
field-nominated or XML format. Intelligent pagination can apply to either static or dynamic
templates. In this section, we will focus on using Intelligent Pagination with dynamic templates.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

151

How Do You Invoke Intelligent Pagination?


When you design your dynamic template, you have the opportunity to assign subform attributes
to each of the templates subforms. You do this on the different tabs in the Subform dialog box.
Many of these attributes are what trigger the Intelligent Pagination commands. For example,
you might specify space to reserve on a page when a page is full, and what subforms must
always be accommodated when the end of a page is reached.
Intelligent pagination uses both the Dynamic Merge command ^define and a set of commands
called Intelligent Pagination commands. Output Designer automatically adds the appropriate
commands to the template during the compile process. The commands are defined in memory
variables using the Group dictionary and are stored in JFPREAMBLE_1. As noted elsewhere,
the output Agent processes the contents of JFPREAMBLE_1 before the data stream.
Aside from selecting the correct options inside Output Designer, there is really not much else
that you are required to do in order to take advantage of intelligent pagination.

Overriding Intelligent Pagination Commands


There may be situations when you want to override the rules that Output Designer
automatically generates. You can do that by defining a few overriding rules in JFPREAMBLE,
while leaving all the other rules and commands intact.
To properly understand how you can override Intelligent Pagination commands, you should
have some understanding of the commands in the preamble and their syntax. This section
provides information about:

Groups and events

The Group dictionary.

Defining groups and events.

Group events and field events handlers.

Intelligent Pagination commands.

Groups and Events


Output Designer uses groups and events to invoke intelligent pagination. A group is a logical
collection of objects on a page or subform; it may contain any combination of text, graphics, or
fields. There is usually one group per subform.
An event is a condition that occurs while the output Agent is processing the data. Events can
occur for groups, and also for individual fields. The output Agent calls the group event handler
or field event handler when it encounters the condition for the specified group or field and event.
Intelligent Pagination commands associated with the group event or field event define the
actions performed when the event handler is called.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

152

An example of a group event is running out of space on the bottom of the page. An example of
a field event is the situation where the specified field does not exist on the current template
page or subform.
Commands called actions are associated with the groups and events. They instruct the output
Agent how to react to the conditions that affect the progression of data down the page.
Groups and events provide:

Automatic pagination when a page fills up, by performing end-of-page/start-of-page


functions such as footers and headers.

An easier way to activate subforms without explicit coding of ^page and ^subform
commands mixed with the data.

The Group Dictionary


In Output Designer, in-memory dictionaries are useful mechanisms that enable you to create
variables that you can retrieve at any time during processing. One such dictionary is the Group
dictionary. In the Group dictionary, Output Designer includes all the information for defining and
implementing group or field events. The output Agent uses the group and fields events for
processing the data stream.
There are some other dictionaries that Output Designer uses. For a description of these other
dictionaries, see Appendix B Dictionaries on page 167.

Defining Groups and Events


Output Designer defines group and field events in the Group dictionary using the ^define
command in the format:
^define group:[groupname][!eventhandler] \action[\action...].

The following table provides a description for the elements or the ^define command.
Element

Description

^define

The ^define command assigns a value to a variable that remains set until
the output Agent encounters one of these situations:

group:

A ^define command that specifies a new value or no value

An ^undefine command

A \defineresolve command

The end of the output Agent session

Specifies a variable in the Group dictionary. The : (colon) separates the


dictionary name and the variable name.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

153

Element

Description

[groupname]
[!eventhandler]

Identifies the variable name within the Group dictionary, and an


associated event handler. When the specified event occurs or the event
is explicitly called, the output Agent looks for a variable in this form in the
Group dictionary. If it finds the variable, the output Agent inserts the
actions for the event into the data stream for execution by the command
processor.
groupname may be a field in the template design, or a meaningful name
that describes the section, often derived from the subform name. Note
that groupname may also be empty.
!eventhandler identifies the event that is being handled. For example,
!FldUsed, !FieldNotAvail, !OnOverflow, !OnBOF.

\action[\action...].

One or more Intelligent Pagination commands that instruct the output


Agent the actions to take for this event. It can also include Inline Text
Control commands and it may include text to lay down on the template.
However, it must never include Dynamic Merge commands.
The period at the end of the command sequence indicates the end of the
Intelligent Pagination command mode.

Example
Consider the following example:
^define group:D_InvDetail
\field$POSITION\reserve"0.5",in\subformInvDetail.

In this example, we define a Group dictionary variable called D_InvDetail. The ensuing
Intelligent Pagination commands insert a $POSITION field on the subform, and instruct the
output Agent to reserve "0.5", inches of space at the bottom of the page. Recall that
Output Designer automatically creates the $POSITION field. The reserve of .5 inches would
have been specified for the subform on the Page Full tab of the Subform dialog box.

Using Group Names That Start With !


If your group name (not just the event name, but the whole group name) starts with !, then the
output Agent will not perceive it as a potential group context change. It will just execute it and
leave the current group context alone. Everything up to the first ! is considered the group
context name. If the group:dictionary entry name starts with !, there is effectively no group
context name and hence no group context switch is possible. This ensures that group !OnExit
and !OnEnter events will not be triggered accidentally.

Adobe Output Designer


Developing Templates

Advanced Template Concepts

154

Group Events and Field Events Handlers


Both group events and field events get stored in the Group dictionary. There are a number of
handlers that can occur for groups and fields.
For a complete description of the group event and field event handlers, see Intelligent
Pagination Reference on page 155.

Intelligent Pagination Commands


Output Designer controls the pagination for dynamic templates using Intelligent Pagination
commands. It includes these commands in JFPREAMBLE_1 as part of the ^define statements.
The preamble defines the actions for storage in the Group dictionary.
Each ^define statement that includes one or more Intelligent Pagination commands ends with
a . (period). Within the string, individual Intelligent Pagination commands are delimited by the
next Intelligent Pagination command. For example:
^define group:POTOTALS!OnBOF\page2\fieldPOSITION2.

...where the Intelligent Pagination command \page2 is delimited by the next command
\fieldPOSITION2. The . (period) at the end of the string delimits the last command in the
string.
For a list of the Intelligent Pagination commands that Output Designer uses, see Intelligent
Pagination Commands on page 163.

Intelligent Pagination Reference

GROUP EVENT HANDLERS


The event handlers that can occur for a group are:

!DuplexBack

!DuplexFront

!OnBOF

!OnEntry

!OnExit

!OnTOF

!Simplex

JfEndData!EndData

groupname!DuplexBack (At Duplex Page Back)


This event occurs only as a result of a \checksurface command. When a groups actions
include a \checksurface command, it causes the output Agent to detect the current type of
print surface being printed. When the output Agent is operating in duplex mode and the current
print surface is a page back, the groups !DuplexBack event is executed.

groupname!DuplexFront (At Duplex Page Front)


This event occurs only as a result of a \checksurface command. When a groups actions
include a \checksurface command, it causes the output Agent to detect the current type of
print surface being printed. When the output Agent is operating in duplex mode and the current
print surface is a page front, the groups !DuplexFront event is executed.

groupname!OnBOF (At Bottom of Page)


This event occurs only as a result of a \reserve command. A groups actions must include a
\reserve command that specifies the amount of vertical space the group, such as a subform,
requires to print. When there is not enough space within the printable area on the page to print
the group, the !OnBOF event executes.

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

156

groupname!OnEntry (At Activation of Group)


This event handler occurs as a result of the activation of a group named in the Group dictionary.
When an !OnEntry event handler exists for a group, the output Agent executes the actions for
this event handler the first time it activates the group, that is, at a change of groups, with these
considerations:

When you define actions for a group and also for events associated with the same group,
such as:
^define group:PODETAIL \action\action.
^define group:PODETAIL!OnEntry \action\action.

when the output Agent activates the group PODETAIL, it performs the actions for
group:PODETAIL!OnEntry before the actions for group:PODETAIL.

When you activate a group using ^group or \group and the group is not defined, then an
!OnEntry event handler associated with the group is not executed. For example, if the data
stream includes the command:
^define group:PODETAIL!OnEntry \action\action.

then an action of \groupPODETAIL specified for some other group event does not cause
the group:PODETAIL!OnEntry to execute, since a ^define command does not exist for
the named event handler group:PODETAIL.
Note: Defining a group action as "" is equivalent to not defining it at all. Instead of:
^define group:PODETAIL ""

use:
^define group:PODETAIL "\."

with a backslash and a period between the quotation marks.

When you activate a group and an !OnEntry event handler is not defined for the group, then
only the actions for the defined group execute.

groupname!OnExit (At Exit Current Group)


This event occurs just prior to exiting the current group, as a result of a \group command. The
actions for an !OnExit are also executed as a result of reaching the end of the data stream,
because the end of the data stream means an implicit JFEndData group was entered.

groupname!OnTOF (At Top of Page)


The actions for this event execute when the output Agent starts a new page, while in the named
groups context.

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

157

groupname!Simplex (At Simplex Mode)


This event occurs only as a result of a \checksurface command. When a groups actions
include a \checksurface command, it causes the output Agent to detect the current type of
print surface being printed. When the output Agent is operating in simplex mode,
\checksurface will cause the current groups !Simplex event to be executed.

JfEndData!EndData (End Data Processing)


The output Agent will trigger JfEndData!EndData event as the last event before processing for
the transaction file finishes. When there is an entry in the Group dictionary defined for
JfEndData!OnEntry and/or JfEndData!EndData, the output Agent automatically executes the
events as though the last line of the data stream contained the command:
^group JfEndData!EndData. Standard events processing occurs when executing:

The !OnExit event for the current group.

The event, JfEndData!OnEntry, if appropriate.

The event, JfEndData!EndData.

When no entry exists in the Group dictionary for JfEndData, the event is ignored. The exception
is when executing the !OnExit event for the current group. It does move into group JfEndData,
and therefore, does make you exit the current group.

FIELD EVENT HANDLERS


Field events occur for a field, and are also defined in the Group dictionary. Field event handlers
include:

!FldNotAvail

!FldUsed

!Format

!OnOverflow

In addition, Output Designer supports four field event handlers that are similar in functionality to
the group level handlers of the same name: !OnEntry; !OnExit; !OnTOF; and !OnBOF.
The !OnEntry field level event handler is similar to the group level !OnEntry, but may be
triggered implicitly by data overflowing from one field into another, in some reformat modes.
The !OnExit field level event handler is similar to the group level !OnExit, but occurs when
exiting a field instead of a group. The !OnTOF and !OnBOF field level event handlers are
functionally the same as the group level event handlers of the same name.
This section describes !FldUsed, !Format, !OnOverflow, and !FldNotAvail event handlers.

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

158

fieldname!FldUsed (Field Used)


This event occurs when the output Agent encounters a field in the data stream that is already
filled with data in the current subform. This event is useful for initiating the start of a new
instance of a group.
For example, in the following data stream, the fields named A, B, and C fill a subform. At each
occurrence of field A, a new subform starts.
^define group:A!FldUsed \subform3\fieldA.
^field A
sampledata
^field B
sampledata
^field C
sampledata
^field A
moredata

The first occurrence of field A is filled with the data sampledata. When the output Agent
reads the second occurrence of the command ^field A, the !FldUsed event handler for field
A executes. Note that when the event handler starts to execute, the pen is still positioned in
field C, at the end of the text sampledata. Because the actions for the event handler replace
the ^field A command, output Agent lays down a new subform, subform 3, positions at
field A in the new subform, and then places the data for field A, moredata, at that position on
the page.

fieldname!Format (Field Formatting)


This event occurs when the output Agent encounters a field in the data stream, and before the
data is written to the output. The event enables you to specify a calculation or formatting for a
field. You specify this event as:
^define group:fieldname!Format expression
expression is an expression that can contain Inline Text Control commands, Intelligent
Pagination commands, or any of the calculation variables, operators, or functions.

When the output Agent reads the data for a field, it checks to see whether there is a
fieldname!Format event stored in the Group dictionary for the field. If the event is found, the
output Agent does the following:

Stores the data for the field in the global variable _$_. This variable contains one line of text
from the data stream. Leading and trailing blanks are removed.

Applies the expression specified in the !Format event, that is:

Replaces the data for the field with the !Format expression.
Performs variable substitution, replacing any expressions that use an @ (at) symbol
with the appropriate value.
Processes any inline text commands in the expression.

Writes the data to the output file.

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

159

When you use this event, keep the following considerations in mind:

The fieldname!Format event applies to single line fields, and is not really suitable for
multi-line fields.

This event applies to data files in field-nominated or XML format only.

The expression for a fieldname!Format event can reference variables defined in any output
Agent dictionary.

You can associate a fieldname!Format event with a global field. The output Agent will
execute the event during global field processing.
When the output Agent encounters a fieldname!Format event for a non-global field, it
executes the event immediately. That is, once the output Agent gets to the field, and is ready
to write out the text data for the field, it executes the fieldname!Format event. If the field is
subsequently defined as global, either through a ^global command or as a Global dictionary
entry, the fieldname!Format event will be triggered a second time when global field
processing occurs.

The fieldname!Format event will not execute if a field exists:

On the template, but not in the data stream.

In the data stream, but not on the template.

In the data stream, but has no data.

Note: Specifying a reformat option that truncates data values could produce unexpected
results. This may occur in circumstances where one or more commands follow or
surround the data (@_$_.) references in the !Format event. Truncating the data may
also result in the loss of the subsequent commands. If processing does not occur as
expected, we recommend that you determine whether the reformat option is the cause.
For example:

To redirect the data to another field name, use:


^define group:Input_Amount!Format \fieldOutput_Amount.@_$_.

The initial field name must exist in order for the !Format event to execute.

To output the data for a field named Balance and print a positive value in yellow and a
negative value in red, use:
^define group:Balance!Format
@(if("@_$_."<0,"\cnred.","")).@_$_.\cndefault.

This example demonstrates the use of Inline Text Control commands within the expression
for a fieldname!Format event. For more information about Inline Text Control commands,
see the Print Agent Reference guide, or the Web Output Pak PDF Agent Reference guide.

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

160

To put the value of a non-global field into a global field so that you can use it in a subsequent
calculation, the data stream may have the following commands:
^inline on
^define group:Amount!Format
@_$_.\defineresolveglobal:SaveAmount,"@_$_.".
^field Amount
235.69
^field Total
@(@SaveAmount. * 1.08).

fieldname!OnOverflow (Field Overflow)


The output Agent activates this event when data spills out of a field. The occurrence of the
fieldname!OnOverflow event handler is closely related to the current reformat option. The
reformat options that rewrap lines cause field overflow events to take place at the character
position in the data stream that overflows the field.
The most common usage of the fieldname!OnOverflow event is to lay down another line of a
large text field that fluctuates in size.
For more information about the reformat option, refer to either the Print Agent Reference guide,
or the Web Output Pak PDF Agent Reference guide.
Note: A global field cannot trigger the !OnOverflow event.

fieldname!FldNotAvail (Field Not Available)


This event occurs when the data stream instructs the output Agent to position to a field that
does not exist on the current template page or subform. The field list from only a single page or
subform is available to the output Agent at any one time. For example, a ^field ITEM
command in the data stream, where the field named ITEM is not on the current subform or
template page, causes the event to occur.
You specify the event as:
^define group:ITEM!FldNotAvail \page3\fieldITEM.

In this example, the field event handler activates page 3 when the output Agent encounters a
field in the data stream that is not on the current template page or subform. Processing
proceeds with \fieldITEM on page 3.
Note: The !FldNotAvail event takes precedence over the -afx option. For more information
about discarding unknown fields, see the Print Agent Reference guide or the Web
Output Pak PDF Agent Reference guide.

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

161

!REPLACE! (REPLACE LINE)


To replace an entire input line of text with a new replacement line of text, include the !Replace!
command either on the command line or in the preamble in the template. Typically, !Replace!
is used to:

Replace ^field A with ^global A (globalize).

Replace ^field A with ^global DiscardThis (discard).

Replace ^field A with ^field B (rename).

Replace ^group x with ^file x (get more data).

!Replace! is useful when the result of an XML conversion to field-nominated data does not
provide quite what you want. For example, you might let the XML conversion produce ^field
commands and the use !Replace! to change these commands to ^file or ^global commands.
Another use for !Replace! is to do interim processing. For example, you could change ^field A
to ^group A which does some setup before handling \fieldA.

Command Line Syntax


To include !Replace! on the command line, use the syntax:
-advgroup:!Replace!=1 "-advgroup:!Replace!Original!Line=Replacement
Line"

where:
-advgroup:!Replace!=1 is a literal, which activates !Replace! processing. It is required
once, before any !Replace! commands. Without -advgroup:!Replace!=1, !Replace!
commands are ignored.
"-advgroup:!Replace!Original!Line=Replacement Line" is the construct of the
!Replace! command. There must not be a space between -advgroup:!Replace! and
Original!Line. The contents of Original!Line must not include spaces or any control
character (a character with a hexadecimal value of 20 or less). If the text in the original line
includes spaces or the specified control characters, replace the spaces and control characters
with ! (exclamation points) as a placeholder.

You can include any number of !Replace! commands on the command line.
For example,
-advgroup:!Replace!=1 "-advgroup:!Replace!^group!G_CoverLetter1=^form
CoverLetter1.mdf" "-advgroup:!Replace!^field!Description=^field Desc"

In this example, ^group G_CoverLetter1 is replaced with ^form CoverLetter1.mdf, and


^field Description is replaced with ^field Desc.

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

162

Preamble Syntax
To include !Replace! in the preamble in the template, use the syntax:
^define group:!Replace! 1
^define group:!Replace!Original!Line Replacement!Line

where:
^define group:!Replace! 1 is a literal, which activates !Replace! processing. It is
required once, before any !Replace! commands. Without ^define group:!Replace! 1,
!Replace! commands in the preamble are ignored.
^define group:!Replace!Original!Line Replacement!Line is the construct of the
!Replace! command. There must not be a space between ^define group:!Replace! and
Original!Line. The contents of Original!Line must not include spaces or any control
character (a character with a hexadecimal value of 20 or less). If the text in the original line
includes spaces or the specified control characters, replace the spaces and control characters
with ! (exclamation points) as a placeholder. You can include any number of !Replace!
commands in the preamble.

For example,
^define group:!Replace! 1
^define group:!Replace!^field!Date ^global Date
^define group:!Replace!^field!Payment ^global Ignore

In this example, ^field Date is changed to a global field and ^field Payment is discarded.

!Replace! Considerations
Keep these considerations in mind when using !Replace!:

!Replace! can only be used to replace input lines in the raw data file; it will not replace lines
in the preamble.

!Replace! does not apply to inline commands.

!Replace! applies after XML has been converted to DAT.

You can put a ~ (tilde) in the replacement text. Because the Print Agent interprets a tilde as
a newline character, it is possible to replace a single line with multiple lines. Using tildes
provides an easy mechanism for inserting additional input lines. For example, replacing
^field x with ^field Dept~Shipping~^field x inserts two input lines before ^field x.

The Print Agent must activate !Replace! processing before reading the data file. Therefore,
the command to activate !Replace! must be provided either on the command line or in the
preamble in the template. Including !Replace! in a preamble external to the template, that is
one identified to the Print Agent with the -apr command line option, will have no effect.

Caution: Ensure you activate !Replace! processing only when needed, as it will increase
your processing overhead. !Replace! examines every line in the data file and does
a dictionary look-up for each of those lines. Once !Replace! processing is activated
for a data file, it cannot be turned off.

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

163

INTELLIGENT PAGINATION COMMANDS


Intelligent Pagination commands control the pagination of a template. The Intelligent Pagination
commands are summarized below. For a complete description of their use and syntax, see the
Print Agent Reference guide, or the Web Output Pak PDF Agent Reference guide.
Command

Syntax and Description

\checksurface

Checks which surface of a page is currently being output.


\checksurface

For example:
^define group:SECTION\checksurface\page1\fieldPOS

\defineresolve

Assigns a value to a dictionary variable. Variable substitution occurs even


as the variable is being defined, let alone when it is being used.
\defineresolvedictionary:name,value.

For example:
\defineresolveglobal:Amount,@(@Amount.+1).\defineresolv
eglobal:Tax,@(@Amount.*2).

\field

Sets the pen position to a specific field.


\fieldfieldname

For example:
\fieldUSERNAME

\form

Closes the currently open template (.mdf) file and opens the named (.mdf)
file.
\formMDFname[,options]

For example:
\form"newform.mdf"

\graph

Prints a logo or raster graphic.


\graphfilename[type type][,resolution value][,gamma
value]

For example:
\graph"logo.pcx","resolution 600","gamma 2.2"

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

Command

Syntax and Description

\group

Calls the specified group, group event, or script.


\group[groupname][eventname]

For example:
\groupPODETAIL!FldUsed

\page

Moves to a new page in the template.


\pagenn[,options]

Options include:
trayin
Print from a specific input tray.
\pagenn[trayout,{traynum|*ptrstring|
+encoded-ptrstring}]

For example:
\page7,"trayin 4"

trayout
Direct output to a specific tray.
\pagenn[trayout,{traynum|*ptrstring|
+encoded-ptrstring}]

For example:
\page7,"trayout 4"

duplex
Handle two-sided printing.
\pagenn[,duplex{off|on|left|long|top|short|
*ptrstring|+encoded-ptrstring}]

For example:
\page3,"duplex long"

164

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

Command

Syntax and Description

\position

Change placement of data.


\postionoptions

Options include:
[absolute]
Place an object in a specific location on the page.
\position[absolute],x,y[,units]

For example:
\positionabsolute,1,"5.5",in
\subform2

up|down
Set an object up or down from the last placed object on the page.
\positionup|down,y[,units]

For example:
\positionUP,"1.0",in

relative
Place an object a specific distance from the current position.
\positionrelative,x,y[,units]

For example:
\positionrelative,"-3.125",".5",in
\subform4

left|right
Place an object at the left or right of the page.
\positionleft|right,x[,units]

For example:
\positionright,"3.5",in

restore
Return to a specific location on the page.
\positionrestore,save_id

For example:
\positionrestore,"jump_spot"

save
Save the current location on the page.
\positionsave,save_id

For example:
\positionsave,"jump_spot"

165

Adobe Output Designer


Developing Templates

Intelligent Pagination Reference

166

Command

Syntax and Description

\reserve

Reserves the specified amount of vertical space for the subform or group.
\reserveoptions

Options include:
n
Adds a specific amount of vertical space to the current pen position.
\reserven[,units]

For example:
\reserve"2.5",in

subform
Determines the amount of vertical space required to print the subform.
\reservesubform,page

For example:
\reservesubform,3

\subform

Places a subform at the current pen position on the page.


\subformsubformname[,MDFname]

For example:
subformdependent,"newform.mdf"

\trace

Passes text to the log file. Use this command for debugging purposes.
\trace"text"

For example:
\trace"This text appears in the log file."

\$page

Changes the current page number for use in $PAGE fields.


\$pagenn

For example:
\$page2

Dictionaries
The output Agents use various dictionaries to store variables for controlling processing. For
example, standard global fields are variables contained in the Global dictionary. The ^define
command enables you to assign a value to a variable that remains until the end of the output
Agent session. You can store variables in dictionaries other than the Global dictionary so that
no conflict occurs between a global field and a variable of the same name.

GLOBAL DICTIONARY
The Global dictionary stores global variables. To define global variables, use the ^global or
^define command in the following forms:
^global CLIENT_NAME
Chris Brown

- or ^define global:CLIENT_NAME Chris Brown

- or ^define global:CLIENT_NAME
Chris Brown

In the ^define examples, global is the dictionary name and CLIENT_NAME is the variable
name. Chris Brown is the value assigned to CLIENT_NAME. You require a : colon
separator between the dictionary name and the variable name.
To retrieve the value from the Global dictionary, use the variable substitution command in one
of these forms. The : (colon) is the separator between the dictionary name and the variable
name. The period after the variable delimits the command.
^field Salutation
Dear @global:CLIENT_NAME.

- or ^field Salutation
Dear @CLIENT_NAME.

Values from the Global dictionary automatically populate like-named global fields in a subform.

Adobe Output Designer


Developing Templates

Dictionaries

168

GROUP DICTIONARY
The Group dictionary stores the group event and field event handlers for processing a data
stream. For additional information, see The Group Dictionary on page 152.

USER DICTIONARY
The User dictionary is an alternate dictionary that can be used to store variables to prevent
conflicts with like-named variables in the Global dictionary. When you do not supply a dictionary
name, this is the default dictionary that the output Agent uses to define a variable value. For
example:
^define CLIENT_NAME
Chris Brown

stores the value Chris Brown in the dictionary variable CLIENT_NAME. Since the example
does not specify a dictionary, the User dictionary is implied.
To retrieve the value from the User dictionary, use the variable substitution command in one of
these forms. The : (colon) is the separator between the dictionary name and the variable
name. The period after the variable delimits the command.
^field Salutation
Dear @user:CLIENT_NAME.

- or ^field Salutation
Dear @:CLIENT_NAME.

Note that omitting the : from Dear @:CLIENT_NAME. would make this a reference to
global:CLIENT_NAME.

ENVIRONMENT DICTIONARY
The Environment dictionary is read-only, and provides a method of retrieving information that is
normally external to the output Agent. You can use the Environment dictionary to retrieve any
environment string set in the UNIX shell or in DOS by a variable substitution call from the
Environment dictionary.
For example, if a DOS environment variable called LOGIN_NAME is assigned to a login
identifier, you can retrieve it with the command:
^field Salutation
Dear @env:LOGIN_NAME.,

Note that the : (colon) is the separator between the dictionary name and the variable name.
The period after the variable delimits the command.

Adobe Output Designer


Developing Templates

Dictionaries

169

You can also retrieve command line options passed to the output Agent from the Environment
dictionary by referencing these variable names:
Variable Description
$0 ... $n returns command line arguments 0 through n. $0 returns the executable
program name. For Microsoft Windows, this includes the full path
specification. $1 through $n represent the position of the argument within
the command line.
For example, for the command line:
jfmerge poform poform.dat -m42 -l
^field ARG1 @env:$1 returns the form name, poform,
^field ARG2 @env:$2 returns the transaction file name, poform.dat,
^field ARG3 @env:$3 returns the command line option, -m42,
and so on.

$$

returns the complete command line.

$#

returns the number of command line arguments.

DOCVAR DICTIONARY
The DocVar dictionary is read-only, and provides a method of retrieving the template
information values, set for the template in Output Designer. You can retrieve any of the values
by a variable substitution call to the DocVar dictionary, by referencing these variable names.
This variable substitution is case-insensitive.
Value

Variable Substitution

Contact

@docvar:contact

Creation date

@docvar:creationdate

Custom name
Custom value

To retrieve a Custom value, use the Custom name value in the


variable substitution. For example, to retrieve the Custom
value for a Custom name of Terms_and_Conditions, use:
@docvar:Terms_and_Conditions

Description

@docvar:description

Designer

@docvar:designer

Name

@docvar:formname

Version

@docvar:version

Version date

@docvar:versiondate

Adobe Output Designer


Developing Templates

Dictionaries

170

For example, to retrieve the template name, version, and the Custom value for a Custom name
of Purchase_Order, include these commands in the data stream:
^field FORM_NAME
@docvar:formname
^field FORM_VERSION
@docvar:version
^field CUSTOM_VALUE
@docvar:Purchase_Order

FAX DICTIONARY
The Fax dictionary provides the means for storing faxing information specified by a ^fax
command, a ^define command, or an -adv command line option. The output Agent uses the
information to output one or more faxes, as specified by the options provided.
When you use the ^fax command, the output Agent automatically adds all of the faxing
information to the Fax dictionary. For details, see the Print Agent Reference guide.
When you use the other methods for specifying faxing information, you name the Fax dictionary
directly. For example:
^define fax:TO_FAX_NUM_1="1-234-555-6789"

-or-advfax:TO_FAX_NUM_1="1-234-555-6789"

In these examples, fax is the dictionary name, TO_FAX_NUM_1 is one of the keywords for the
^fax command that is supported by your faxing software, and 1-234-555-6789 is the value
assigned to the keyword, in this case, the fax telephone number. You require a : colon
separator between the dictionary name and the variable name.

SYS DICTIONARY
UP

TE
DA

The Sys dictionary is reserved for internal use in Print Agent, so any use other than as
documented could conflict with internal use. Users are NOT to use it for general data storage
and retrieval.
The Sys dictionary stores system variables, which can be defined with the ^define command.
For example, to define a value for the initial display setting when opening a PDF file in Adobe
Reader, use this command:
^define sys:pdfLayout Continuous

In the ^define example, sys is the dictionary name and pdfLayout is the variable name.
Continuous is the value assigned to pdfLayout. You require a : colon separator between
the dictionary name and the variable name.

Adobe Output Designer


Developing Templates

Dictionaries

To retrieve a value from the sys dictionary, use the format:


@SYS:Variablename

For example, to retrieve the value of pdfLayout from the sys dictionary, use the variable:
@sys:pdfLayout.

which returns:
Continuous

Values for the following variables can be stored in the Sys dictionary:
pdfLock

pdfAllowPrint

pdfZoom

pdfEncryptionLevel

pdfAllowMod

pdfLayout

pdfUser

pdfAllowCopy

pdfOpenToPage

pdfOwner

pdfAllowAdd

staple

trimBmk

171

Supported Graphics Formats


Output Designer supports a range of graphic formats that you can use with the Logo and Trace
Template commands:
Format

Description

BMP

Windows Bitmap
Output Designer supports all compression types. Files with RLE compression
print without grayscale information.

CGM

Computer Graphics Metafile


Output Designer supports ANSI, MIL-D-28003 (CALS), Lotus Freelance Plus
(v.3.01), and Harvard Graphics (v. 2.3).

DXF

Autodesk Drawing Interchange


Objects rendered in 3-D print and display as 2-D renderings.

EPS

Encapsulated PostScript (vector only)

GIF

Graphics Interchange Format

HGL

HP Graphics Language

JPG

JPEG - JFIF Compliant


Output Designer supports files with Regular compression.

LGO

Output Designer Logo

PCX

Zsoft Paintbrush
Output Designer supports compression types 2 and 5.

TIFF

Tagged Image Format

WMF

Windows Metafile

Defining Custom Finish Options


Output Designer includes a mechanism to select the PJL staple capability on these printers:

HP LaserJet 4350 DTNSL (PostScript L3) - hp4350p.ics

HP LaserJet 4350 DTNSL (PCL5) - hp4350.ics

Lexmark T632 (PostScript L3) - lex632p.ics

Lexmark T632 1200 dpi - lex632.ics

The .ICS files for each of these printers include the staple finish option and its PJL value
defined as CustomString1. The PJL value is referenced in the reset sequence as the variable
@SYS:STAPLE.
As long as your printer supports PJL, you can define finish options for any of the features
available on your printer. Use the staple finish option from one of the above noted .ICS files as
a guide and the following steps to implement a custom finish option.
To define finish options in the printer reset sequence
1. Find the PJL required to implement the feature on the designated printer. This can be done
by generating output from the Windows driver for that printer. Select the option in the printer
options dialog and print the output to file.
2. In the .ICS file for your printer, define the @SYS variable by creating a new custom string
and adding the PJL to it. Ensure you use \x20 to represent spaces, \x0D\x0A to represent
carriage return and line feed, and that you start your custom string with the text
/FinishName/.
For example, the staple custom string from the hp4350.ics file is:
CustomString1
/STAPLE/\x0D\x0A@PJL\x20SET\x20PROCESSINGTYPE="STAPLING"\x0D\x0A@PJL
\x20SET\x20PROCESSINGOPTION="ONE_STAPLE"\x0D\x0A@PJL\x20SET\x20PROCE
SSINGBOUNDARY=MOPY

This custom string includes this PJL:


@PJL SET PROCESSINGTYPE="STAPLING"
@PJL SET PROCESSINGOPTION="ONE_STAPLE"
@PJL SET PROCESSINGBOUNDARY=MOPY
3. Insert the PJL comment lines, including the @SYS variable referencing your finish option,
into the reset sequence in the order required by the printer. The first PJL command must not
have a newline character preceding it. Each subsequent PJL command must be on a new
line. The last PJL command must be @PJL ENTER LANGUAGE = lang.

Adobe Output Designer


Developing Templates

Defining Custom Finish Options

174

4. For example, the reset sequence from the hp4350.ics file is:
Reset
\E%-12345X@PJL\x20RDYMSG\x20DISPLAY="%s"\x0D\x0A@PJL\x20COMMENT
\x20@SYS:STAPLE.\x0D\x0A@PJL\x20ENTER\x20LANGUAGE\x20=\x20PCL\x0D
\x0A\E&l1T\E*t1200R\E&u1200D

The reset sequence includes @SYS:STAPLE., the variable which references the PJL defined
in the custom string. Notice the . (period) after @SYS:STAPLE. The period after the
variable is required, as it delimits the command.
5. Save your .ICS file.

Recompiling the .ICS File


Once your .ICS file is updated, it will need to be recompiled before it can be used. Recompiling
the .ICS file is done by accessing the Font Setup for the presentment target associated with
your .ICS file and reapplying the font cartridges.
To recompile the .ICS file
1. Open Output Designer.
2. Click File > Presentment Targets. On the Presentment Target Selection dialog, select the
presentment target associated with the changed .ICS file and click Set as Default Target.
3. Click Font Setup, to display the Property sheets for the target.
4. Click OK. You are returned to the Presentment Target Selection dialog and the .ICS file is
now recompiled.
Note: You must recompile all forms compiled for the presentment target associated with the
changed .ICS file to have these forms take advantage of the new finish options.

PRINTING USING CUSTOM FINISH OPTIONS


To have Print Agent access the finish option in the .ICS file and send it to the printer, you must
reference the finish option in a command line option of the format:
-aFinishnFinishOption

where:
n is a number from 0 - 9. This allows for up to 10 finish options on a command line.
FinishOption is the custom defined finish option whose name appears in the custom string in
the .ICS file.

Adobe Output Designer


Developing Templates

Defining Custom Finish Options

175

For example, -aFinish1Staple will allow Print Agent to access the finish option called STAPLE.
When Print Agent encounters this command line option, it creates an variable in its Sys
dictionary named @SYS:STAPLE. The value of @SYS:STAPLE is the value of the Staple
custom string from the .ICS file.
When the Print Agent processes the data file that includes the -aFinish1Staple command line
option, it inserts the value of @SYS:STAPLE into the printer reset sequence and a new line
with the PJL staple command is inserted in the print file.
If @SYS:Staple is not defined when the Print Agent processes the data file, then a PJL
comment line is inserted in the print file.

Glossary
A
argument
A value that you provide for a command option.

B
boilerplate
Static or fixed objects, including text or graphics,
that provide the visual background of a template.
Unlike data fields, the information in the boilerplate
never changes.

C
child subform
A subform reference that is subordinate to another
subform reference in a dynamic template design.
Each child subform has a parent subform. Also
called a nested subform.
comma-delimited
A data format where the data for each field is
separated from the next by a comma.

dynamic form
See dynamic template
Dynamic Merge commands
These commands are the base from which output
Agents process a data stream. The commands
control functions such as subform processing and
pagination. These commands have a ^ (caret) as
the default prefix.
dynamic template
A template that presents different combinations of
boilerplate and data on the output. A dynamic
template consists of one or more subforms. The
contents of the data determines which subforms
appear on the output. Sometimes called a dynamic
form.

E
electronic template
A representation of a paper form that you design
using a computer. Simply called a template.
end-of-page

A storage area resident in memory where the output


Agent maintains a variety of variables. When
required, the output Agent retrieves information
from its dictionaries as it processes a template and
data.

The condition that an output Agent recognizes when


it encounters either the end of the data file, or a
^eject or ^page command. If an output Agent is
processing Inline Text Control commands, an
end-of-page occurs when it encounters a \page, or
\reserve. At the end-of-page, the output Agent
populates global fields and any Output Designer
special field names, increments the page counter,
and then ejects the page.

duplex printing

end-of-subform

Some printers are able to print on both sides of the


page. The printer prints one side of the page,
reverses the paper, and prints the second side
before ejecting the page.

The condition that the output Agent recognizes


when it encounters either the end of the data file, or
a ^eject, ^page, ^subform, or ^form command. If
the output Agent is processing Inline Text Control
commands, an end-of-subform occurs when it

D
dictionary

Adobe Output Designer


Developing Templates

encounters a \page, \subform, or \form command.


At end-of-subform, the output Agent populates local
fields and any Output Designer special field names.
event
A condition, such as running out of space on the
page, that occurs as the output Agent populates a
page with data. Using Intelligent Pagination
commands, the output Agent performs one or more
actions when it detects the event, if an event
handler is defined for that event.
event handler
The preamble code designed to handle a specific
event. For example, the !OnBOF event specifies the
actions to take when running out of space on the
page. The output Agent looks for a specific event
handler when a group or field event occurs. The
event handler is defined in the Group dictionary
using the ^define command. When the event
handler is called, the output Agent executes the
event handlers associated actions.

Glossary

177

fixed record
A data format where a line of data contains the
values for more than one field. Record data is
identified by the ^data command and must be
preceded in the data stream by its record structure.
form
See template
form object
See template object
foundation page
The background page on which all subforms lay.
The page can be blank or can contain static objects.
Any objects on this page appear on every page of
the output document. Output Designer automatically
creates a blank foundation page. You can create
multiple foundation pages if necessary. Also called
a watermark page.

G
F
field
The area of a template into which the output Agent
merges data.
field data
Data merged into the fields on the current page or
subform of the output template that the output Agent
is processing.
field-nominated
A data format where the data appears in the data
stream as a ^field command, followed by a field
name, followed by a <CR/LF>. The data for the field
appears on the next line of the data stream (after
the <CR/LF>).
field overflow
A condition that occurs when there is more data to
fill a field on the template page than the physical
size of the field permits.

global field
A field that occurs on more than one page or
subform in the template. The data for all
occurrences of the field is specified in the data
stream, and stored as a variable in the Global
dictionary. The output Agent populates global fields
after all other fields on the page or subform have
been filled.
graphical object
A non-textual element of a template design, such as
a line, box, circle, arc, or logo.
greeking
Graphical symbols that represent text characters
on-screen. Greeking occurs when the resolution of
your monitor is not sufficient to display the
characters as you type them, usually at full-page
view of your template design.

Adobe Output Designer


Developing Templates

Glossary

178

multipart template

Inline Text Control commands

An electronic template that contains more than one


version of the same page, simulating multipart
preprinted forms with carbons.

These commands override the formatting specified


for a field in Output Designer. The commands are
placed in the data stream directly before and after
the data they affect. Like Intelligent Pagination
commands, these commands have a \ (backslash)
as the default prefix.
Intelligent Pagination commands
Commands that dynamically control the
construction of a page in a template. Intelligent
Pagination commands are stored in the template.
You could include them at the start of the data
stream, though this is not recommended. Like Inline
Text Control commands, these commands have a
\ (backslash) as the default prefix.

M
macro
A series of escape sequences and control codes
that defines the boilerplate for a portion of a
template. A macro can be downloaded into printer
memory for faster throughput.
macro number
A number assigned to a macro when the macro is
downloaded to the printer. Macro number 1
specifies that the macro is temporary; it is removed
from the printer memory at the end of the print job. A
macro number greater than 1 downloads the
template macro to the printer as a permanent
macro; the template macro remains in the printer
memory until the printer is reset.

N
nested subform
A subform reference that is subordinate to another
subform reference in a template design. Each
nested subform has a parent subform. Also called a
child subform.
NoPrint font
A font you can use for fields that should not be
printed. Typically, a template designer will include
no-print fields on a template to receive data that is
used for calculations at print time. The NoPrint font
can be used in text to record notes intended for the
template designer on the template design itself.

O
object
An element of a template design. An object can be
text, such as a text block or text label; a field; or a
graphical object, such as a logo, a line or a box.
Also called a template object.
object group
One or more objects grouped together. You can
manipulate the objects as a group move, size,
change attributesor store in the Template Object
Library. You can also modify individual objects
within the group.

monospaced font

output Agent

A font in which all characters have uniform width.

An Agent in Central or Web Output Pak that


processes the output template according to the
rules set out in the preamble file, and merges the
template with data. Print Agent is an output Agent of
Central. PDF Agent and HTML Agent are output
Agents of Web Output Pak. In this guide, output
Agent refers only to Print Agent and PDF Agent.

multiline field
A field on a template that contains more than one
line of data.
multipage template
A template that contains more than one page. The
pages of a template can be entirely different from
one another.

Adobe Output Designer


Developing Templates

Glossary

179

overflow field

presentment target

A field that needs to accommodate varying amounts


of data. Such a field is designed to overflow into a
subsequent field when the amount of data
surpasses its own physical capacity.

The output device you select for the merged


template and data. Supported output targets include
printers, fax machines, PDF files, and HTML pages.
Print Agent input tray number

P
parent subform
A subform that has a hierarchical relationship to
another subform (child) in a template design.
physical page
A full page, including the non-printable areas.
picas and points
Measurements used by typesetters. A Pica is 1/6th
of an inch. A Point is 1/72nd of an inch.
pick
The act of selecting an object using the Pick tool.
When you pick an object, pick handles appear
around the object.
pick area
The rectangular area encompassing multiple picked
objects. When you pick more than one object on the
page, pick handles appear around the picked
objects.

A printer-independent identifier that Print Agent of


Central uses to translate the input tray number into
the number assigned to the printer by the printer
manufacturer.
printable area
The area of the page where you place template
objects that you wish to appear on printed output.
The printable area is inside the unprintable area of
the page.
proportional font
A font in which the width of the characters vary. For
example, m is wider than i.

R
record
A complete set of information for one transaction.
For example, for a single purchase order.
record structure

Little square boxes that show you the pick area.

The layout of the data contained in a fixed record. A


record structure is defined with a ^record
command. Each field in the structure must be
assigned a field name and a physical size.

preamble file

A file containing the processing rules for the


template. The output Agent processes the preamble
file before the contents of the data stream.

special field name

pick handles

prefix character
The character that defines whether the command is
a Dynamic Merge command or an Inline Text
Control command. By default, Dynamic Merge
commands are identified by a ^ (caret), and Inline
Text Control commands by a \ (backslash).

A field assigned one of the $DATE, or $TIME, or


$PAGE field names in Output Designer. Print Agent
of Central and PDF Agent of Web Output Pak
recognize the field name and automatically fill the
field with the current date, time or page number in
the appropriate format.
static template
An electronic template that always has the same
page layout. Also referred to as a static form.

Adobe Output Designer


Developing Templates

Glossary

subform

text object

A page or section of a dynamic template. A subform


may contain a collection of boilerplate text,
graphics, and fields.

An element of a template design, such as a text


label or text block.

T
template
An electronic output document that provides the
layout for presenting variable data. It consists of
pages and subforms, and information for the printer.
The output template (.mdf) file is the compiled
version of the template design (.ifd) file. The output
Agent processes the template file with a data
stream to produce the final output. Also called a
form.
template design
The modifiable layout of a template that you create
in Output Designer. The template design (.ifd) file is
the source for the compiled output template (.mdf)
file. Once you compile the template design, you
deploy it for use with other Adobe products. If you
need to make changes to the template, you make
them to the template design file using Output
Designer.
template object
An element of a template design. A template object
can be text, a field, or a graphical object, such as a
logo, a line or a box. Also referred to as an object or
form object.

180

U
unprintable area
An area at the perimeter of a page where no
objects print, owing to the limitations of the printer.
The size of the unprintable margins varies by
printer.

V
variable
A value contained in a storage location in memory.
variable substitution
Variables are stored in Print Agent or PDF Agent
dictionaries. When the output Agent encounters an
@ (at) in the data stream, it retrieves the value for
the memory variable and substitutes the value.

W
watermark page
See foundation page

Index
!
!DuplexBack (at duplex page back) group event handler 155
!DuplexFront (at duplex page front) group event handler 155
!EndData (End Data Processing) 157
!eventhandler 153
!FldNotAvail (field not available) field event handler 160
!FldUsed (field used) field event handler 158
!Format event
built-in functions 146
creating 147
described 145
examining the preamble after compiling 150
how it works 147
parts of the expression 145
where to specify 146
!OnBOF (at bottom of page) group event handler 155
!OnEntry (at activation of field) field event handler 157
!OnEntry (at activation of group) group event handler 156
!OnExit (at exit current group) group event handler 156
!OnOverflow (field overflow) field event handler 160
!OnTOF (at top of page) group event handler 156
!Replace! (replace line) 161
!Simplex (at simplex mode) group event handler 157

$
$daten (system date) 92
$DocForm templates 113
$page (page number) 91
$POSITION 108
$timen (system time) 93

.
.dat 79
.ifd file 38
.mdf file 38
.sdf 130

@
@variables, processing 150

\
\$page (page number) 166
\checksurface (duplex mode and surface) 163
\defineresolve (assign resolved value to memory variable) 163
\field (move to specific field) 163
\form (open template) 163

\graph (print logo or raster graphic) 163


\group (execute specified group) 164
\page (move to new page in template) 164
\position (change placement of data) 165
\reserve (reserve space for subform) 166
\subform (activate subform) 166
\trace (trace facility) 166

^
^define command 152
syntax 152
^global command 89

3
3D view 32

A
about Output Designer 9
absolute positioning of subforms 109
access privileges for the Template Object Library 128
actions, commands associated with groups and events 152
add text 26
adding design information to a field 66
adding objects 57
field 60
graphic 72
table 68
text 69
Adobe Central Output Server 9
designing templates for 40
Adobe Web Output Pak 10
designing templates for 40
aligning objects 58
analyzing the requirements of a template design 44
Associated Text option 66
Autofont soft font cartridges 118
automatic compiling using JFBatch 123

B
Barcode tool 26
Barcodes, formatting a field 67
batch processing 123
BizTalk XML files, source for schema definition file 133
blocking off subforms 98
boilerplate fields
adding to the template design 90
described 90

Adobe Output Designer


Developing Templates

Index

modifying data for use with 91

setting drawing options 34


setting the view 32
setting up Test Presentment 37
specifying file locations 35
Toolbar and Toolbox 30

C
cartridges
creating soft font 118
plugged into a printer 116
soft font 117
types of soft font 117
Change Area Font command 59
character-delimited data 46
Check Box fields 62
Check Box tool 28
Circle tool 25
collating options
multipart 54
multipart sorted 54
overview 53
single-part 53
single-part with repeating page 53
Color button 20
color settings 37
color, allowing color output for graphics 82
commands
!Replace! (replace line) 161
compiling a template design 80
allow color for output of logo graphics 82
automatically 123
create separate HTML file 82
default compile options 80
default number of copies 84
default options you can set 81
embed logo files 82
embedding soft fonts 85
for multiple presentment targets 87
how !Format events are handled 150
input tray numbers 86
printer macros 84
process 86
setting default resolution for logo graphics 82
specifying a file name 86
specifying the compile rules 84
subform order in a dynamic template 104
Control Bar 17
Color button 20
Go To Page button 20
Page and Subform Name drop-list 20
Tear-offs 17
copying objects 58
creating the static template 48
custom finish options, defining 173
custom properties
for job tickets 137
JFPREAMBLE and JFPREAMBLE_1 139
customer support 13
customizing fonts 116
customizing the workspace 29
color 37
enabling job tickets 36

D
data presentment tools 28
data requirements for a template design 45
data requirements in a dynamic template 111
data types
character-delimited 46
field-nominated 47
fixed-record 46
template dependent data 46
template independent data 46
transforming to field-nominated .dat 79
XML 47
default font 70
defining
custom finish options 173
deploying the compiled template 87
designing a template
benefits of a dynamic template 94
data requirements 45
design phases 39
drawing the template 56
dynamic versus static 42
elements 41
field information 47
graphics requirements 48
multipart 54
multipart sorted 54
organizational requirements 45
plan and analyze 44
single-part 53
single-part with repeating page 53
specifying of presentment targets 48
specifying the presentment target 49
static 43
tips 56
user requirements 45
using global fields 89
using schema definition files 130
zooming in and out 60
Detail subforms
about 101
processing 143
development tools 123
Diagonal Line tool 25
dictionary 167
DocVar 169
Environment 168
Fax 170
Global 167
Sys 170
User 168
disk soft font cartridges 120

182

Adobe Output Designer


Developing Templates
displaying elements in the template design 33
document variable 169
DocVar dictionary 169
double-byte font support for label printers 122
downloading soft font cartridges 119
disk 120
permanent 119
temporary 120
drawing tools
overview 72
usage example 72
dynamic templates 114
!Format event 147
about 43
advanced techniques 138
benefits 94
blocking off subforms 98
compiling 114
controlling paging 106
create static template first 97
creating subforms 99
creation process 96
foundation pages 109
intelligent pagination 150
JFPREAMBLE 139
JFPREAMBLE_1 139
locating a subform 100
planning 96
positioning fields 108
priority of processing rules 141
processing rules 138, 139
subform processing 142
subforms as the building-blocks 95
testing 111
testing the static template first 98
understanding the data 111

E
Edit Text tool 26
electronic templates 38
elements of the Output Designer window 15
Embed soft fonts in template option 119
embedding graphics 74
Enable Template Object Library command 126
Environment dictionary 168
event handler
field 157
!FldNotAvail (field not available) 160
!FldUsed (field used) 158
!OnEntry (at activation of field) 157
!OnOverflow (field overflow) 160
group
!DuplexBack (at duplex page back) 155
!DuplexFront (at duplex page front) 155
!OnBOF (at bottom of page) 155
!OnEntry (at activation of group) 156
!OnExit (at exit current group) 156
!OnTOF (at top of page) 156

Index
!Simplex (at simplex mode) 157
JfEndData!EndData (end data processing) 157
events
about 151
actions 152
expandable fields
about 143
creating 144

F
Fax dictionary 170
field attributes
Associated Text 66
Barcode 67
font 65
height 65
name 64
Picture clause 66
rotate 65
specifying type 62
width 65
field event handler 157
!FldNotAvail (field not available) 160
!FldUsed (field used) 158
!OnEntry (at activation of field) 157
!OnOverflow (field overflow) 160
field events
about 152
defining 152
syntax 152
field names shown on the template 112
field objects 60
field order, changing 76
Field Tear-off 18
Field tool 28
field types
Check Box 62
Graphics 63
Numeric 63
Radio Button 64
specifying 62
Text 64
field-nominated data 47
fields
!Format event syntax 147
boilerplate 90
changing the order 75
creating an expandable field 144
field name 64
formatting 61
global 88
information required for designing a template 47
names shown on the template 112
ordering 75
overflow 143
placing on the template design 61
positioning 108
retrieving from the Template Object Library 126

183

Adobe Output Designer


Developing Templates
rotating 65
selecting by using the Library Tear-off 127
size 65
special 88
specifying a !Format event for 146
specifying a Graphics field 74
submitting to the Template Object Library 126
file formats
output template (.mdf) 38
template design (.ifd) 38
file locations 35
finish options, defining 173
fixed-record data 46
font cartridges
plugged into a printer device 116
selecting and creating soft 118
using soft 117
Font Cartridges tab 118
font mapping
about 120
for alternate presentment targets 121
jfontmap.ini 121
options 121
Font Tear-off 18
fonts
Adobe Type 1 116
customizing 116
default font for a text object 70
for individual text objects 71
global changes 59
in fields 65
mapping fonts for production use 121
resident 116
soft 116
soft font cartridges 118
specifying font mapping rules 120
using jfontmap.ini 121
formatting a template design
collating options 53
reference information 52
specify the presentment target(s) 48
formatting fields
!Format event functions 146
as a Barcode 67
Associated Text 66
Check Box 62
fonts 65
setting the Expand attribute 143
specifying a Picture clause for a Numeric field 66
using a !Format event 145
width and height 65
formatting objects 57
fields 61
global font changes 59
graphics 74
grouping 59
pages 55
tables 68
text 70
formatting pages

Index

184

setting output options 56


specifying a name 55
foundation page
about 109
creating 109
creating multiple 110
JFMain 109
SWITCHPAGE 110
view on subsequent pages during design of template 109
functions
in a !Format event 146
processing 150
further reading 11

G
generating .sdf
from sample data 132
user-created 132
generic printer driver 51
Global dictionary 167
global fields 88
creating 88
design considerations 89
processing 89
Go To Page button 20
graphic images 26
graphic objects 72
graphics
color output 82
embedding in the template 74
formatting 74
in fields 74
in the boilerplate 74
logo files 85
placing on the template 73
planning use of in a template design 48
setting image prefix for graphics in HTML 83
using drawing tools 72
Graphics fields 63
Graphics Tear-off 19
graphics tools 25
Grids 22
Group dictionary 152
group event handler
!DuplexBack (at duplex page back) 155
!DuplexFront (at duplex page front) 155
!OnBOF (at bottom of page) 155
!OnEntry (at activation of group) 156
!OnExit (at exit current group) 156
!OnTOF (at top of page) 156
!Simplex (at simplex mode) 157
JfEndData!EndData (end data processing) 157
group events
about 152
defining 152
syntax 152
group SWITCHPAGE 110
grouping objects 59

Adobe Output Designer


Developing Templates
groupname 153
guidelines on the Output Designer workspace 31

H
Header subforms
about 101
processing 142
height of a field 65
HTML
controlling font scaling 83
create read-only fields during compile 83
create separate file during compile 82
output only the body during compile 83
setting prefix for images 83
specifying pixels 83
HTML Agent (Web Output Pak) 40
HTML output during testing 77

I
image prefix (HTML) 83
importing template designs 129
input tray numbers 86
integrating Output Designer into a solution 9
intelligent pagination
about 150
invoking in a dynamic template 151
overriding JFPREAMBLE_1 151
Intelligent Pagination commands
list of 163
syntax 154
introduction to Output Designer 8

J
JFBatch utility
about 123
how it works 123
JfEndData!EndData (end data processing) group event handler
157
JFMain 108, 109
jfontmap.ini 121
JFPREAMBLE 139
modifying to override JFPREAMBLE_1 140
JFPREAMBLE_1 139
automatically generated Intelligent Pagination
commands 151
overriding the processing rules 140, 151
job tickets 36
about 134
creating 135
document variables 137
enabling 36
how they work 134
text file created by Output Designer 136

Index

L
Library Tear-off
about 19
using to select an object or field 127
Line tool 25
logo graphics 85
color output 82
default resolution 82
embed within the template 82
Logo tool 74

M
macro numbers, printer 84
mapping fonts 121
Menu Bar 16
Microsoft Windows presentment targets 49
moving and resizing objects 28
multipart sorted templates 54
multipart templates 54

N
Numeric fields 63

O
objects 57
adding field objects 61
adding text 69
aligning 58
copying 58
creating using drawing tools 72
field 60
graphic 72
grouping 59
modifying in a subform 100
placing fields on the template design 73
retrieving from the Template Object Library 126
selecting by using the Library Tear-off 127
submitting to the Template Object Library 126
table 68
text blocks 70
text labels 69
ordering fields 75
output Agents
in Central 40
in Web Output Pak 40
matching data to a subform 95
Output Designer
introduction to 9
related documentation 11
using with Central 9
using with Web Output Pak 10
Output Designer window
Control Bar 17
Grids 22
Menu Bar 16

185

Adobe Output Designer


Developing Templates
overview of the window 15
Status Bar 23
Tear-offs 17
Title Bar 16
Toolbar 16
Toolbox 24
output devices. See presentment targets
output settings for individual pages 56
output template (.mdf) 38
overflow fields 143

P
Page and Subform Name drop-list 20
Page button 22
page number ($page) 91
pages
adding to a template design 57
and subforms 95
formatting 55
naming 55
output settings 56
password, for the Template Object Library 124
PCL soft font cartridges 117
PDF Agent (Web Output Pak) 40
PDF output during testing 77
permanent soft font cartridges 119
Pick tool 27
Picture clause 66
pixels (setting for HTML display) 83
planning the template
analyzing requirements 44
considerations for dynamic templates 96
presentment target requirements 45
points (screen resolution for HTML display) 83
position of a subform 105
Position Tear-off 19
positioning fields
$POSITION 108
about 107
automatic creation 107
how they work 108
preamble file
events 151
groups 151
prioritizing processing order 141
processing @variables 150
processing functions 150
processing rules 139
presentment targets
compiling for multiple 87
downloading the soft font cartridge 119
mapping fonts to alternate presentment targets 121
specify early in the template design process 48
types 48, 49
using generic 51
printer macros, described 84
printers. See presentment targets
printing the template design without data 79

Index
processing @variables 150
processing a dynamic template 138
processing functions in the preamble 150
processing rules for a dynamic template 138, 142
Detail subforms 143
Header subforms 142
overriding JFPREAMBLE_1 140
priority of preamble files 141
Trailer subforms 143

R
Radio Button field 64
Radio Button tool 28
reference materials 11
re-order subforms 103
replace line, !Replace! 161
Report with Fields command 76
reports
generating for a template design 76
generating in the Template Object Library 129
requirements for a template design
analyzing 44
business application 45
reserved field names
overview 91
page number ($page) 91
system date ($daten) 92
system time ($timen) 93
resident fonts 116
resolution of logo graphics 82
rotating
fields 65
text labels 71
rulers and ruler guidelines 21
rules for processing a dynamic template 139

S
schema definition files
generated from sample data 132
how to use 130
supported sources 130
user-created 132
using BizTalk XML files 133
using in a template design 130
selection tools 27
setting default options for compiling a template design 81
showing field names on the template 112
single-part templates 53
single-part templates with a repeating page 53
size of a subform 105
soft font cartridges
about 117
AutoFont 118
creating and selecting 118
disk 120
downloading 119
downloading to the presentment target 119

186

Adobe Output Designer


Developing Templates
PCL 117
permanent 119
selecting and creating 118
temporary 120
TrueType 117
Type 1 117
types 117
using 117
soft fonts 116
embedding in template 85
specifying at compile time 85
when to embed in the template 119
special fields 88
boilerplate 90
global 88
reserved field names 91
static templates
about 42
create as first step in dynamic template 97
how to create 48
testing 78
Status Bar 23
subforms
about 95
absolute positioning 109
blocking off 98
controlling the paging 106
creating 99
creating a positioning field 108
how the output Agent matches data to the subform 95
how they correspond to pages 95
locating specific 100
modifying objects inside 100
order after compiling 104
processing 142
processing rules for Detail subforms 143
processing rules for Header subforms 142
processing rules for Trailer subforms 143
re-order 103
setting attributes 100
size and position 105
specifying the type 101
SWITCHPAGE 110
symbol sets, specifying for Windows printers 122
Sys dictionary 170
system date ($daten) 92
system time ($timen) 93

T
table objects 68
adding 68
formatting 68
Table tool 29
tdf (transformation definition file) 79
Tear-offs 17
Field 18
Font 18
Graphics 19

Index
Library 19
Position 19
template dependent data 46
template designs
.ifd 38
adding pages 57
adding text objects 69
analyzing requirements 44
application requirements 45
boilerplate fields 90
changing the field order 75
compile options 80
compile process 86
compile rules 84
compiling 80
compiling for multiple presentment targets 87
create a static 48
default options for compiling 81
deploying a compiled template 87
drawing the template 56
dynamic 43
editing text objects 71
elements 41
embedding graphics 74
files 38
formatting pages 56
formatting text objects 70
global fields 88
importing 129
integrating with Central 40
integrating with Web Output Pak 40
introduction to creating a basic 38
logo graphics 85
placing fields 61
placing graphics 73
printing without data 79
retrieving from the Template Object Library 127
specifying collating options 53
specifying creator and version 52
specifying field types 62
specifying printer macros at compile time 84
static 42
steps to create and deploy 44
submitting to the Template Object Library 127
template dependent data 46
template independent data 46
testing 76
tips for creating 56
types 42
understanding the data 46
understanding the design phase 39
using drawing tools 72
using tables 68
using the Template Object Library 60
template independent data 46
Template Object Library 37, 60
about 124
access privileges 128
activating from Output Designer 126
managing 128

187

Adobe Output Designer


Developing Templates
opening 124
report generation 129
retrieving fields 126
retrieving objects 126
retrieving templates 127
submitting fields 126
submitting objects 126
submitting templates 127
using 125
using the Library Tear-off 127
workspace 125
template with fields 112
templates as part of a larger solution 39
temporary soft font cartridges 120
Test Presentment
default settings 79
dialog box 77
how to use with static templates 78
output to HTML 77
output to PDF 77
presentment options 79
template with fields 112
transform data to .dat 79
Test Presentment tool 37
testing a template design 76
dynamic 111
generating a report 76
printing without data 79
setting up the Test Presentment tool 37
template with fields 112
using Test Presentment 77
view as HTML 77
view as PDF 77
with your own data 79
Text fields 64
text file, created for job tickets 136
text objects
adding to a template design 69
default font 70
editing 71
formatting 70
rotating text labels 71
setting the font for individual objects 71
text blocks 70
text labels 69
types 69
text tools 26
Title Bar 16
Toolbar
about 16
customizing 30
Toolbox
about 24
customizing 30
tools
additional development 123
Barcode 26
Check Box 28

Index

188

Circle 25
data presentment 28
Diagonal Line 25
Edit Text 26
Field 28
graphics 25
Line 25
Pick 27
Radio Button 28
selection 27
Table 29
Text 26
tracing a paper form 60
Trailer subforms
about 101
processing 143
transformation definition file (.tdf) 79
transforming data to .dat for use with Test Presentment 79
tray numbers, Print Agent 86
TrueType soft font cartridges 117
Type 1 fonts 116

U
Use input tray numbers option 86
User dictionary 168
User id, for the Template Object Library 124
user requirements when planning a template design 45
user-created schema definition files 132
using fields from the Template Object Library 126
using objects from the Template Object Library 126
UTF-8 78

V
validating the field order 76
view settings 32

W
width of a field 65
Windows printers, specifying symbol sets 122

X
Xerox
about job tickets 134
enabling job tickets 36
XML data 47
using BizTalk files as source for schema definition file 133

Z
Zoom command 60

Das könnte Ihnen auch gefallen