1. A method for determining a logical order of a document, comprising: (a) assigning a page of the document to be a block having a width along a first direction and a length along a second direction perpendicular to the first direction; the block having a plurality of layout objects arranged therein; (b) identifying a first set of hypothetical cuts, substantially between layout object boundaries, that span the width of the block; the first set of hypothetical cuts defining a set of sub-blocks with each sub-block having a width along the first direction and a length along the second direction; (c) identifying a second set of hypothetical cuts, substantially between layout object boundaries, that span the length of sub-blocks in the set of sub-blocks; (d) computing arrangement criteria of layout objects ordered according to the first and the second sets of hypothetical cuts; (e) modifying cuts in the first and second sets of hypothetical cuts, using the computed arrangement criteria, to merge cuts that span two or more sub-blocks along the second direction; (f) determining the logical order of the document using cuts between layout objects in the block remaining in the first and second sets of hypothetical cuts after performing (e).