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.
I don't have time to review this completely now. I'll do it when I get
back home next week.
The specification text for flowed text is found at:
I will be revising this text over the next month in response to a very
useful discussion we had yesterday at the joint CSS/SVG meeting. I'll be
adding a property to dictate how text wrapping works when there are
holes in a shape as well as a method allow text to wrap into multiple
shapes.
Tav