~inkscape.dev/inkscape/trunk

Viewing all changes in revision 7029.

  • Committer: JucaBlues
  • Date: 2008-12-28 18:35:14 UTC
  • Revision ID: jucablues@users.sourceforge.net-20081228183514-1matvj5e410np8a2
Now users can design a font within inkscape, save it and then open the 
SVG file in Fontforge in order to export a truetype font (or other 
system font formarts fontforge supports).
This improves previous workflow of font design using Inkscape which 
involved creating one SVG for each glyph. Now user only needs to create 
a single SVG file containing an SVGFont.

Glyph kerning settings for the font can also be defined withing Inkscape 
itself with live preview. The kerning management still needs some 
improvements but is currently functional at least.

Improvements in the SVGFonts dialog:

* In Global Settings tab you can define the font family name. Other 
attributes should be added to this tab in the future.
* Glyphs tab allows the user to:
** see a list (combobox) of glyphs available in the currently selected 
font.
** add/remove glyphs
** edit glyph name and unicode
** set the glyph curves based on a given path (selected from canvas). 
Same feature for the missing glyph.
* Kerning tab allows user to:
** add new kerning pairs
** adjust kerning values of selected kerning pair
** live preview while adjusting the kerning values

Code refactoring:

* Inner classes DocumentProperties::SignalObserver and 
FilterEffectsDialog::SignalObserver were duplicated code and another 
instance would be needed in SVGFonts dialog. So, I moved it to 
Inkscape::XML::SignalObserver (in helper-observer.{cpp,h})
* changed SPGlyph->glyph_name and SPGlyph->unicode from char* to 
Glib::ustring
* added sp_remove_resource to the release method in sp-font.cpp
* glyph curves used to be stored (in d attribute) and rendered 
upside-down. Now that bug is fixed.

Sorry about this huge commit. I got one week away from the Internet 
during a xmas travel. The lack of 'net connection made me work more 
intensely in Inkscape :-D

Felipe Sanches

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: