1. A method performed by a physical computing system for arranging a plurality of graphic objects on a page, the method comprising: receiving said plurality of graphic objects in said physical computing system, said plurality of graphic objects comprising a number of variable graphic objects and a number of fixed graphic objects; for each of said fixed graphic objects, creating a number of discrete dimension sets, said fixed graphic objects being treated as having variable dimensions during creation of said discrete dimension sets; generating a number of binary trees, each of said binary trees representing a unique layout for said plurality of graphic objects in which each of said fixed graphic object exhibits one of said discrete dimension sets; assigning a score to each of said binary trees; and arranging said graphic objects according to said layout represented by a binary tree selected from said number of generated binary trees based on said score; wherein the assigning a score to each said binary tree comprises: assigning an initial height and an initial width to each graphic object in said binary tree, said fixed graphic objects being treated as having variable dimensions during said assignment of said initial height and said initial width; adjusting the height and width of each graphic object such that the height and width of said fixed graphic objects match their specified dimensions; and computing a numerical score for said binary tree based on the adjusted areas of the graphic objects.