W3C home > Mailing lists > Public > www-style@w3.org > August 2012

Re: [css3-exclusions] remove <fill-rule> from "polygon()" syntax

From: Rik Cabanier <cabanier@gmail.com>
Date: Tue, 28 Aug 2012 15:51:51 -0700
Message-ID: <CAGN7qDAbjfXwQzxe_ZLX2Ls0k4qai7Sp-+e8Q=X=VLF+ZJn2cA@mail.gmail.com>
To: Dirk Schulze <dschulze@adobe.com>
Cc: Alan Stearns <stearns@adobe.com>, Bear Travis <betravis@adobe.com>, "Tab Atkins Jr." <jackalmage@gmail.com>, www-style list <www-style@w3.org>
I think fill/clip-rule should stay with the marking operator in CSS.
It makes much more sense to keep them there than making them part of the
graphics state and it will make the implementation much easier.
(I know this is different from SVG.)

Rik

On Tue, Aug 28, 2012 at 3:28 PM, Dirk Schulze <dschulze@adobe.com> wrote:

>
> On Aug 28, 2012, at 1:55 PM, Alan Stearns <stearns@adobe.com> wrote:
>
> > (I hope I fixed the quoting correctly)
> >
> > On 8/28/12 12:17 PM, "Bear Travis" <betravis@adobe.com> wrote:
> >
> >> On 8/28/12 11:29 AM, "Dirk Schulze" <dschulze@adobe.com> wrote:
> >>
> >>> On Aug 28, 2012, at 8:50 AM, Tab Atkins Jr. <jackalmage@gmail.com>
> wrote:
> >>>
> >>>> On Tue, Aug 28, 2012 at 6:45 AM, Dirk Schulze <dschulze@adobe.com>
> >>>> wrote:
> >>>>> Hi,
> >>>>> I think the keywords for <fill-rule> should be removed from the
> syntax
> >>>>> of 'polygon()'[1]. I think the shapes on the exclusion spec can be
> >>>>> reused in other contexts as well. One example is <shape> as shorthand
> >>>>> for 'clip-path' in the CSS Masking[2] spec. But for 'clip-path' we
> >>>>> already have the 'clip-rule' property with the values 'nonzero' and
> >>>>> 'evenodd' [3].
> >>>>> I would suggest using the 'fill-rule' property from SVG [4] to
> specify
> >>>>> the fill rule on 'polygon()'. This property is already implemented by
> >>>>> all browsers anyway.
> >>>>
> >>>> I don't see how that works, if shape functions are going to be usable
> >>>> in multiple properties.
> >>>
> >>> We have clip-rule and fill-rule. So where is the problem?
> >>
> >> What would the effect be on CSS Exclusions? [1]
> >>
> >> It seems like the css for specifying a shape-inside [2] would change
> from
> >> {
> >> shape-inside: polygon(evenOdd, 0 0, 10px 0, 5px 10px 0 0);
> >> }
> >> To
> >> {
> >> shape-inside: polygon(0 0, 10px 0, 5px 10px, 0 0);
> >> fill-rule: evenOdd;
> >> }
> >>
> >> Is this correct?
> >>
> >> -Bear
> >>
> >> [1] http://dev.w3.org/csswg/css3-exclusions/
> >> [2] http://dev.w3.org/csswg/css3-exclusions/#shape-inside-property
> >
> > Bear,
> >
> >
> > I believe that's what Dirk is asking for. But it sounds to me like it
> > would need to be an additional property per
> > property-that-accepted-shape-syntax (fill-rule, clip-rule - what about
> > shape-inside-rule and shape-outside-rule?). And these new properties
> would
> > only apply if the polygon syntax was used. I think it might be better
> kept
> > as a parameter in the polygon function.
> >
> Yes, you might be right.
>
> Basic shapes could be a good fit for 'clip-path'. For 'clip-path' we have
> the 'clip-rule' property which sets the fill-rule. The keyword for the
> fill-rule on 'polygon()' is optional but nonzero by default. I would like
> to use the value of the 'clip-rule' property if no keyword was set on
> 'polygon()'. Is it possible that CSS Exclusions also let other
> specifications and properties define the clip rule then? E.g.
>
> clip-rule: evenodd;
> clip-path: polygon(25% 25%, 50% 50%, 75% 25%);
>
> The clip rule would be evenodd for the polygon(), since 'clip-rule'
> property defines it.
>
> If the rule was set on the polygon(), it overrides any other property that
> aims to set the fill rule.
>
> Does that sound reasonable for you?
>
> Greetings,
> Dirk
>
> > Thanks,
> >
> > Alan
> >
>
>
>
Received on Tuesday, 28 August 2012 22:52:19 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:59 GMT