bulia byak wrote:
Ah, so this is more similar to the "variable stroke width" idea. We had been discussing this for a long time. Basically, with no SVG support, we will have to "hack" it on top of SVG in back-compatible way.
Now that I think of it, it can be done via the Path Effects mechanism that we're now working on. Aaron: this would be an effect where one parameter holds an array of comma-separated distance-along-path/width pairs. From this data and from the original-d, the effect would create a double-tracked path which would look as a variable-width stroke which follows the original path. The algorithm for creating the stroke from widths can be lifted wholesale from the Calligraphic pen, and the same tool can be used to create such objects using pressure sensitivity. This will give us for free all the advantages of path effects: SVG compatibility, editability of the source path in node tool, etc. Overall I think it's a quite clean way to approach this, and not too difficult to implement (at least after the path effects framework is in place). What do you think?
<snip />
Unfortunately this looks like it's very difficult, if possible at all, to implement in SVG-compatible way. We have an absolute requirement that any Inkscape SVG file must display the same in any compliant SVG renderer, and we're not planning to drop this requirement.
I think path effects would be a great SoC project. I think we'll soon see this mechanism open up all sorts of possibilities for advanced abilities built on top of what SVG provides. But using what SVG provides is the key. While the SVG limitation can be, well, limiting, it also gives us a great chance to exercise our creativity.
Aaron Spike