Gotcha. Perhaps in the future we can push that
implementation-necessity down to the porting layer, rather than
forcing that detail to be in the portable layer.

Again, I'm just looking for a way to have round-rects look antialiased
(and therefore not clipped).

On 1/9/07, David Hyatt <[EMAIL PROTECTED]> wrote:
The problem I ran into with box-shadow is that the shadow cannot show
up anywhere within the contents of the box.  It has to be clipped
out.  Maybe there's a clever way to get the same result that I'm not
thinking of though.   Note that CG draws shadows in response to other
drawing operations (in this case a fill).  As far as I can tell with
CG, I can't just draw a shadow in a vacuum.  It has to be implicitly
cast by some other drawing operation.  So I'm basically doing a fill,
which casts the shadow, and then ensuring that the entire fill is
clipped out so that it isn't seen.

dave

On Jan 9, 2007, at 7:04 AM, Mike Reed wrote:

> Do we need to use clips for round-rects? In my implementation these
> are always hard-edged (no antialiasing). Is that true for Qt as well?
> CG? I would prefer being asked to draw round-rects (filled or stroked)
> directly with no clipping...
>
> On 1/8/07, David Hyatt <[EMAIL PROTECTED]> wrote:
>> I just landed support for the CSS3 box-shadow property.  This
>> entailed adding a few new methods to GraphicsContext.  I stubbed
>> these methods out on Qt but did not implement them.
>>
>> They are:
>>
>> void clipOut(const IntRect&);
>>         Excludes the specified rect from the clipping region.
>>
>> void clipOutEllipseInRect(const IntRect&);
>>         Same, but for an ellipse drawn inside the specified rect.
>>
>> void fillRoundedRect(const IntRect&, const IntSize& topLeft, const
>> IntSize& topRight, const IntSize& bottomLeft, const IntSize&
>> bottomRight, const Color&);
>>          Fills a rounded rect (with elliptical curvature in the four
>> corners) with the specified color.
>>
>> Note that the fillRoundedRect method arguably should be cross-
>> platform, relying on primitives instead.   This is an area for
>> improvement, if someone wants to rework it to use the cross-platform
>> Path class etc.
>>
>> dave
>> ([EMAIL PROTECTED])
>>
>> _______________________________________________
>> webkit-dev mailing list
>> [email protected]
>> http://lists.webkit.org/mailman/listinfo/webkit-dev
>>


_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to