1. A method for providing text flow around a non-rectangular graphic, comprising: using a processor to find a two-dimensional area of intersection, if any, between a proposed text rectangle and the graphic; using the processor to determine a bounding rectangle of the two-dimensional area of intersection; using the processor to subtract the bounding rectangle of the two-dimensional area of intersection from the proposed text rectangle; and using the processor to identify as a valid text area within the proposed text rectangle a valid rectangle, if any, that remains after the bounding rectangle has been subtracted from the proposed rectangle.