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.
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. 3. A method as recited in claim 1 , wherein identifying as a valid text area within the proposed text rectangle a valid rectangle, if any, that is not within the bounds in the x-direction of an area of intersection between the proposed text rectangle and the graphic includes determining the bounds in the x-direction of each area of intersection and considering each such area of intersection to be a hole within which text may not be included.