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. 6. A method as recited in claim 1 , wherein the graphic comprises an exclusion polygon determined by uniting with an original graphic a set of margin shapes calculated to extend the outer boundary of the original graphic by an amount equal to a desired margin between text flowing around the graphic, on the one hand, and the original graphic as and when rendered on the page, on the other hand.