Constrained document layout
First Claim
Patent Images
1. A method of laying out a page which is to contain a plurality of discrete document elements, comprising:
- receiving a hierarchical page description describing layout of the discrete document elements on the page, wherein the hierarchical page description contains two or more hierarchical levels and, for each hierarchical level, the page description contains a description of discrete documents from the plurality of discrete document elements in the hierarchical level and at least one constraint for arranging the discrete documents in the hierarchical level, andfor a particular hierarchical level of the two or more hierarchical levels, the at least one constraint for that particular hierarchical level is only applicable for that particular hierarchical level;
for each hierarchical level, optimizing layout of the page described by the hierarchical page description, one hierarchal level at a time, by rearranging the plurality of discrete elements in a single hierarchical level at a same time using the at least one constraint for the hierarchical level, to minimize the value of a cost function; and
laying out the discrete document elements on the page for each hierarchal level, one hierarchal level at a time, according to the optimized hierarchical page description layout for each hierarchal level.
1 Assignment
0 Petitions
Accused Products
Abstract
A description of document elements to be laid out on a page, include two or more hierarchical levels. Each document element is placed at one of the hierarchical levels. Elements at a lower hierarchical level are associated with a document element at a next higher hierarchical level. Page layout according to such a document description may be optimised discretely at different hierarchical levels without affecting constraints.
22 Citations
21 Claims
-
1. A method of laying out a page which is to contain a plurality of discrete document elements, comprising:
-
receiving a hierarchical page description describing layout of the discrete document elements on the page, wherein the hierarchical page description contains two or more hierarchical levels and, for each hierarchical level, the page description contains a description of discrete documents from the plurality of discrete document elements in the hierarchical level and at least one constraint for arranging the discrete documents in the hierarchical level, and for a particular hierarchical level of the two or more hierarchical levels, the at least one constraint for that particular hierarchical level is only applicable for that particular hierarchical level; for each hierarchical level, optimizing layout of the page described by the hierarchical page description, one hierarchal level at a time, by rearranging the plurality of discrete elements in a single hierarchical level at a same time using the at least one constraint for the hierarchical level, to minimize the value of a cost function; and laying out the discrete document elements on the page for each hierarchal level, one hierarchal level at a time, according to the optimized hierarchical page description layout for each hierarchal level. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computer-readable storage medium having one or more instructions, which when executed by a processor, to perform operations of laying out a page which is to contain a plurality of discrete document elements comprising:
-
two or more hierarchical levels; wherein each document element is placed at one of the hierarchical levels, and for each hierarchical level, the page description contains a description of discrete documents from the plurality of discrete document elements in the hierarchical level and at least one constraint for arranging the discrete documents in the hierarchical level; for a particular hierarchical level of the hierarchical levels, the constraint for that particular hierarchical level is only applicable for that particular hierarchical level;
said description further comprising, in association with at least one of the document elements, a further constraint individually placed on said at least one document element and specifying how said at least one document element should be laid out on the page; andthe hierarchical levels in the description are representable as a tree with a primitive document element at each leaf node and with a representation of a group of document elements in one of the hierarchical levels at each branching node, and wherein each branching node represents a constraint placed on the elements of the group that is represented at that branching node, and for each hierarchical level, optimizing layout of the page described by the hierarchical page description, one hierarchal level at a time, by rearranging the plurality of discrete elements in a single hierarchical level at a same time using the at least one constraint for the hierarchical level, to minimize the value of a cost function; and laying out the discrete document elements on the page for each hierarchal level, one hierarchal level at a time, according to the optimized hierarchical page description layout for each hierarchal level. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A method of generating a description of document elements to be laid out on a page, comprising:
-
identifying primitive document elements to be laid out on the page; identifying constraints on the layout of the primitive document elements on the page; constructing a hierarchical page description with a plurality of hierarchical levels, each primitive document element being placed at one of the hierarchical levels, and each document element at a lower hierarchical level being linked by one of the constraints to a document element at a next higher hierarchical level; storing, in said description and in association with at least one of the document elements, a further constraint individually placed on said at least one document element and specifying how said at least one document element should be laid out on the page; and for each hierarchical level, optimizing layout of the page described by the hierarchical page description, one hierarchal level at a time, by rearranging the plurality of discrete elements in a single hierarchical level at a same time using the at least one constraint for the hierarchical level, to minimize the value of a cost function; and laying out the discrete document elements on the page for each hierarchal level, one hierarchal level at a time, according to the optimized hierarchical page description layout for each hierarchal level. - View Dependent Claims (20, 21)
-
Specification