On Mon, Jun 06, 2016 at 04:27:25PM +0200, Tavmjong Bah wrote:
...Inkscape now respects the 'strut' value in
the block element per CSS. In plain English, that means that the
minimum spacing between lines is defined by the <text> or <flowtext>
element that wraps all the text. The minimum spacing is the value of
the 'line-height' property times the value of the 'font-size' property.
There was a comment in the code saying that this was not implemented in
Inkscape because none of the browsers were doing it this way... but
that was a long time ago. All the browsers now implement this correctly
according to CSS (at least for HTML since SVG 1.1 doesn't have multi-
line text).
CSS line spacing is definitely a mess (and the CSS group seems to
recognize it). But having a strut value is useful as it means being
able to define a well know spacing between the lines (see:
http://tavmj
ong.free.fr/blog/?p=1632 ).
The problem for Inkscape is how can the user know what is the value of
the 'strut' and how can they change it? We definitely need a better
interface. I would consider this a blocker.
And we need to be able to control how CSS properties are written into
the SVG file; at the moment writing a property into a block element
causes the property to be written into all the children elements which
is not really desirable in many cases.
I wanted to follow up on this issue Tav. It seems there are several bug
reports relating to line spacing:
Spacing between baselines not saving
https://bugs.launchpad.net/inkscape/+bug/1590141
If you change interline width or interline unit only, you must do save as to save the
changes.
https://bugs.launchpad.net/inkscape/+bug/1587340
In Trunk text lines spacing increases suddently if text is selected while saving the
document
https://bugs.launchpad.net/inkscape/+bug/1569945
1590141 in particular is being listed as a blocker bug. Obviously all
bugs are unfortunate, but some have to wait for future releases. Would
it be possible for us to leave the line spacing problems as Known Issues
and hope they can be fixed for 0.92.1?
If not, and assuming fixing all the problems is not a short-term
achievable prospect, what is the minimum that *must* be fixed? And who
would be a good person to be on point for the implementation work?
Thanks,
Bryce