Patent ID: 6915484

Claim:
A computer program product, tangibly stored on a computer-readable medium, for reflowing a page, the product comprising instructions operable to cause a programmable processor to: receive a page represented in a page description language, the page including a plurality of columns of text positioned side-by-side on the page, each of the plurality of columns having a width and a length, the page further including a graphical element having a vertical position on the page, adjacent to a vertical side of one of and outside each of the columns; for each of the plurality of columns, associate an item of text in the column with the graphical element, the item and the graphical element having a spatial relationship in that the item has a vertical position corresponding to the vertical position of the graphical element; for at least one of the plurality of columns, change a size of the text, the width of the column, or both so that the relationship between the size of the text and the width of the column is changed, and then reflow text in the plurality of columns so that the item of text in each of the columns has a new vertical position as a result of the reflow; for each of the items, calculate a change in vertical position resulting from the reflow; and reposition the graphical element on the page according to the new vertical position of the item of text having the greatest change in vertical position.