Currently SVGFonts rendering in a helper GtkWindow is working ok for glyphs
described using the path descrition ("path:d") attribute. Once we move the
rendering to the canvas, arbitrary chunks of SVG will be added to the
glyphs. Currently glyph kerning and missing-glyph nodes are also properly
handled and rendered.
I am using the helper GtkWindow because we still don't have pango+userfonts
integration. So I am using cairo+userfonts directly on the GtkWindow. Once
pango supports userfonts, I will remove the GtkWindows and render SVGFonts
on the correct place (directly in the canvas). Since my work now depends a
lot on this pango support, it has been evolving very slowly. I am thinking
of doing some user interface work while we are stuck with pango.
So, this thread is intended to discuss ideas and mockups on what people want
to see for the SVGFonts user interface.
Mental told me yesterday that it should be possible to edit glyphs on canvas
directly on the rendered text in an "edit fonts" mode. I agree that this is
the ideal thing to do, i.e. have things rendered in real time as much as
possible. For example, when the text "Felipe" is rendered using an SVGFont
and the user goes to "font edit mode", then editing the content of one of
the "e" glyphs would make both "e" glyphs to be visually modified as if they
were clones. That is the desired "real time" on-canvas bahaviour.
But I also think that there should be an off-canvas glyph-editing user
interface. There must be a dialog where the user can define the glyph-names,
metadata such as font-family name and all the other font descriptors, the
missing-glyph curves, and all of the glyph-kerning rules. Also, in this
off-canvas UI, we could/should have helper lines indicating font metrics
information such as base-line, top-line, etc. just like a font-editor would
be.
I also have in mind a unicode codepoint selector widget to be used for the
u1 and u2 attributes in the kerning rules dialog.
Please, feel free to offer new ideas or to say my ideas are crap or
whatever. I am open to discussion.
JucaBlues