Electronic documents are created in many different ways. For example, desktop application programs, such as Microsoft Word, Quark Design, and Adobe InDesign, frequently are used to create electronic documents. These electronic documents contain various types of content arranged with a particular layout and style.
Template-based electronic document formats describe a predefined layout arrangement of fields that are capable of accepting variable content. In some approaches, the size, shape and placement of the template fields are fixed. In another approach, an electronic document is represented as an adaptive layout template that contains predefined content areas whose positions and sizes may be varied within specified ranges. In particular, the content areas are defined by variables with respective value domains that define the size, position, and content of the content areas. A user specifies constraints that limit variable ranges and define relationships between variables and values. A constraint solver typically generates a final document that satisfies all of the specified constraints.
In general, the templates that are used to describe the look and feel of template-based electronic documents are generated manually using a process that is labor-intensive and uses significant computer graphics skills.