On Sun, Nov 02, 2014 at 03:40:27PM -0800, Josh Andler wrote:
On Sun, Nov 2, 2014 at 2:58 PM, Tavmjong Bah <tavmjong@...47...> wrote:
SVG 2 features is a huge project that needs to be broken down into smaller parts. SVG 2 compliant flowed text is a great start and has the advantage that there is a natural SVG 1.1 fallback. It will be an implementation challenge as one needs to understand the current text code.
I guess part my though with the SVG2 / Flowed Text project is that I considered a partial rewrite of some of the text code as something that would be needed to "do it right". For me, it would make sense to include that in the scope of this project since it is paid work on a very important part of the codebase.
Per Bryce's request, I'd be willing to start working on fleshing out a proposal for the SVG2 Text work... I will definitely need help refining it though. Either way, I think there has been enough discussion in the past for me to get together a good list of requirements. Tav, since you're the most familiar with the text code and proposed svg spec related to it, your input will be greatly helpful once I get to that point.
Cheers, Josh
Since Martin is hoping to get staging pushed live, I've done a rough sketch of a description for this project, although I don't know enough about flowed text in SVG2 to do it justice:
------------------------------------------------------------------------ SVG 1.1 Flowed Text allows arranging strings of text along arbitrary paths. The text is fully editable and the glyphs individually formattable. This is already implemented in Inkscape and you should first become familiar with the current text code that enables it.
SVG2 adds new functionality including wrap margin and padding, inside and outside shapes, exclusions, and some whitespace control settings, pre-wrap and pre-line. See http://tavmjong.free.fr/SVG/TEXT_FLOW/.
This project aims to implement these new SVG2 flowed text features for Inkscape, and also providing logical fallback to SVG1.1 if the user saves the document in that format. ------------------------------------------------------------------------
View it here: http://staging.inkscape.org/en/project/svg2-compliant-flowed-text/
You can edit the project here: http://staging.inkscape.org/en/admin/projects/project/3/
Comments: * I couldn't find a formal list of exactly what SVG2 specifies, so the second paragraph may be an incomplete list. It should be made complete. * The third paragraph just wishy-washy says "implement me". Really it should give the developer more specific guidance, but I don't know what. * The project system requires a logo of 150x150 and a banner of 120x920. The former shows up at http://staging.inkscape.org/en/project/ and the latter at http://staging.inkscape.org/en/project/svg2-compliant-flowed-text/ I dummied up a couple graphics but they're both crap so you should create something better. * When you edit the project, you can see the completion criteria I picked, which is all pretty generic. You might add to it, such as specifying rendering tests that should be passed, performance goals to be achieved, tutorials to write, etc.
Bryce