- From: Nikos Andronikos <Nikos.Andronikos@cisra.canon.com.au>
- Date: Fri, 16 Dec 2016 00:03:21 +0000
- To: www-svg <www-svg@w3.org>
https://www.w3.org/2016/12/15-svg-minutes.html
[1]W3C
[1] http://www.w3.org/
- DRAFT -
SVG Working Group Teleconference
15 Dec 2016
[2]Agenda
[2] https://lists.w3.org/Archives/Public/www-svg/2016Dec/0007.html
See also: [3]IRC log
[3] http://www.w3.org/2016/12/15-svg-irc
Attendees
Present
nikos, shepazu, Tav, stakagi, AmeliaBR
Regrets
Chair
Nikos
Scribe
nikos
Contents
* [4]Topics
1. [5]Publish FPWD SVG Animations
2. [6]Extending SVG - pain points
3. [7]Testing
4. [8]marker directionality
* [9]Summary of Action Items
* [10]Summary of Resolutions
__________________________________________________________
<scribe> scribe: nikos
Publish FPWD SVG Animations
We talked about publishing FPWD of SVG Animations
[11]http://andronikos.id.au/svgwg-spec/animations/Overview.html
[11] http://andronikos.id.au/svgwg-spec/animations/Overview.html
This is the animation chapter from SVG 1.1 which wasn't copied
into SVG 2
scribe: There's some additions, but I expect they will be
dropped before CR
... so this will be purely what's implemented now
AmeliaBR: Have you been in touch with Brian?
... is he ok publishing as is?
nikos: Yes I have, he is supportive of eventually publishing
without the extra additions
... though he doesn't have time to do any substantive editing
... Note this was listed as level 2 before, but I removed that
version number because we'll be removing the new features like
discard, etc
... There's a changes appendix that lists what has changed in
this document since it was taken out of SVG 1.1
RESOLUTION: Publish FPWD of SVG Animations
Extending SVG - pain points
<Tav> [12]http://tavmjong.free.fr/SVG/POLYFILL/
[12] http://tavmjong.free.fr/SVG/POLYFILL/
Tav: My plan for polyfilling fills - particularly mesh
gradients, is to create a canvas the size of the fill inside
the object
... so insert a foreignObject that is the size of the mesh you
want. Put a canvas inside that fO and clip to the shape you're
filling
... then render the stroke on top of that
... I came across a few problems
... problem number one is that Canvas is not rendered at the
same places in all browsers
... You can see this in my 'Test'
... In Chrome you're not seeing the purple, which is the
background to the foreignObject
... On Firefox you see two Canvas objects - the green and the
yellow
... Once you're in the foreignObject it's treated as HTML so
objects get stacked
... But if you look at he Chrome version, you do not see the
Canavs objects inside the foreignObject
nikos: Yeah I can see them, but they're not inside the square
AmeliaBR: foreignObject is horribly buggy
Tav: In Chrome I won't be able to paint my fill with the way
it's currently working
AmeliaBR: My recommendation would be to avoid foreignObject and
use an offscreen canvas, extract it as an image and use a data
URI
<AmeliaBR> Compare with conic-gradient:
[13]http://tavmjong.free.fr/SVG/POLYFILL/canvas_in_svg_clipped.
svg
[13] http://tavmjong.free.fr/SVG/POLYFILL/canvas_in_svg_clipped.svg
<AmeliaBR> [14]https://leaverou.github.io/conic-gradient/
[14] https://leaverou.github.io/conic-gradient/
AmeliaBR: leaverou didn't have an option of using an on screen
Canvas because this is a CSS feature
... so she had to get an image that could be used by another
CSS function
... you could look at the way she's extracting the image from
the offscreen canvas
... think she gets an offscreen canvas, generates a data uri,
and puts it in an SVG so it's scalable
Tav: that sounds like a good solution
AmeliaBR: It does remind us that we need better testing suites
for foreignObject
nikos: Don't know exactly where the right place to put your
test is, but it would be worth turning it into a reftest and
submitting to web-platform-tests
Tav: second problem I think isn't such a problem
... it's to do with clipping to self, but I don't think I need
to do that
... it would be nice because you could do stroke-inside that
way
... in this case Chrome does it correctly but Firefox does not
AmeliaBR: I've found this before when using the use element.
Found you need a defs elsewhere so circular reference tests
don't discard it
Tav: It's nice to be able to clip to self, but not neccessary
AmeliaBR: you can get around it by using a 'pattern' as the
basis for the polyfill
nikos: Cool, sounds promising for being able to complete this
AmeliaBR: this is interesting and exciting!
Tav: The next version of Inkscape will definitely have mesh
gradients
... Have a nice way of colouring where you spray and it affects
the vertices
... or sample the colours from some picture underneath
... Should have release candidate done by the end of the year
Testing
nikos: I had a little play with running Firefox tests in Webkit
... ran into some silly flaky script issues
... so I don't have a full list of results
... but the tests transfer over easily - just need to rename
the refs for Webkit
... but Webkit runs WPT, or at least a subset ( I need to
check)
... so a better path is to get firefox tests into WPT
... the concern with importing tests into WPT is the manpower
needed to check they're correct
... so not too much to report, but I created another PR for
some new marker tests
AmeliaBR: were you able to find solutions that didn't have the
anti aliasing issue?
nikos: So first off I removed the viewBox so everything maps to
the parent document space
... I also restructured the tests so they differ minimally by
what is being tested
... rather than making the reference out of only path elements
for example
... but even just removing the viewBox helped a lot to make
things more consistent
... I haven't updated the guidelines yet, but I'll do that
AmeliaBR: going forward it will probably mean less work setting
up the references if we are just trying minimise the difference
between the ref and the test
... the key then is to make sure we have the proper sequence of
tests
nikos: In one of my tests I used a clip-path to simulate a
viewBox - I made the marker sizes different so that at least if
viewBox and clip-path weren't doing their job the test would
still fail
AmeliaBR: so the shape outside the overflow was different in
each case?
nikos: Yes
AmeliaBR: The other thing with this topic is setting up so we
can have maximum community sourced involvement
... would it make sense to set up a CG that is SVG testing?
... is there an underutilised group we can take over?
... when I tweeted that SVG 2 is dying I got a lot of questions
about how to help
... one option is take an SVG 1.1 test and make a new reference
nikos: That's a good way to get the community to help out -
basically we want to minimise the barrier to jumping in
... probably need to make a list of candidate tests
... and some step by step instructions
shepazu: We could make a community group or we could just try
to do it on github
AmeliaBR: certainly one option is to create a whole set of
Github issues
shepazu: I'd be perfectly happy doing an SVG testing community
group
... think we should coordinate with the W3C on that
... I feel Github has the lowest barrier to entry
... community group does have that centrality and officialness
AmeliaBR: think it's a matter of a combination - create a
community group with a mailing list for central command
... use github to track test by test
... with Github for tracking what tests are needed - anyone can
file that without getting involved in the CG
shepazu: I'm happy to create the CG. THink this is something we
should do in January
... think the CG might be a good place to talk about the
polyfill
nikos: Don't know if I'll be around, but that should be the
topic for the first telcon in January
AmeliaBR: the other thing that may be worth trying again is
seeing if we can get more involvement from browsers - if it's
clear that the focus is on testing and interop
nikos: Yeah we might get a different set of involved people -
like gsnedders
shepazu: if it is a CG we might get more people too
nikos: Yeah we could totally open up the telcons - if we need
to have a 15 minute official one we can do that
... think that would be a good way to keep people who are
submitting engaged
shepazu: We want an easy way for people who find problems or
gaps to bring those up and then we can push the changes to
resolve that
marker directionality
[15]https://github.com/w3c/svgwg/issues/300
[15] https://github.com/w3c/svgwg/issues/300
AmeliaBR: The issue is when you have a closed path with a sharp
corner at the start/end
... should markers auto angles be calculated the same way they
are at any other sharp corner?
... which is what we say in the spec
... when Nikos tested this, browsers are inconsistent in their
result
nikos: I haven't double checked 1.1 but I assume this is a
clarification for something that was vague
Tav: thought we had resolved that mid angle should only be used
on marker-mid
AmeliaBR: You can't put a mid marker on the start/end point of
a closed path
... ideally you'd put marker-start and marker-mid and that
would cover ever corner
nikos: I think we definitely want to keep the SVG 2 specced
behaviour
Tav: Yeah you do want to use the in and out when it's closed
... I did some tests on this a couple of months ago - there's a
difference in how you close
... if the closing segment is zero length there were issues
with some browsers
AmeliaBR: that's partly why we added clarifications about
ignoring zero length paths when working out directionality
nikos: The other thing I was questioning in the issue is
whether auto-start-reverse should always be 180 degrees, even
on a closed path
AmeliaBR: I say that yes it should
Tav: I agree
AmeliaBR: then we just need to confirm what auto is to get
consistency
nikos: In terms of what auto is, I'm very happy with the way
that SVG 2 is currently specced
AmeliaBR: that closed corners are treated like any other
corner?
nikos: yes
Tav: I agree
... and if you want different behaviour, don't close the path
nikos: That's what the tests I submitted to WPT verify so no
changes needed there
<AmeliaBR> [16]https://jsfiddle.net/dodgeyhack/7h0csof5/
[17]https://usercontent.irccloud-cdn.com/file/VzrLWTTg/MS%20Edg
e%20results%20for%20marker%20test
[16] https://jsfiddle.net/dodgeyhack/7h0csof5/
[17] https://usercontent.irccloud-cdn.com/file/VzrLWTTg/MS Edge results for marker test
nikos: So they do follow the SVG 2 spec, but don't support
auto-start-reverse at all
AmeliaBR: We need to note in the PR for the tests that it's
expected that browsers are all different for one of those tests
Summary of Action Items
Summary of Resolutions
1. [18]Publish FPWD of SVG Animations
[End of minutes]
The information contained in this email message and any attachments may be confidential and may also be the subject to legal professional privilege. If you are not the intended recipient, any use, interference with, disclosure or copying of this material is unauthorised and prohibited. If you have received this email in error, please immediately advise the sender by return email and delete the information from your system.
Received on Friday, 16 December 2016 00:04:00 UTC