Re: [Inkscape-devel] GSoC13: Text Tool Improvements

As far as the text-tool drop-down is concerned, I totally think it should steal the interface Krita uses to manage paint modes. Mock-up: http://i49.tinypic.com/eq1fep.png
Fonts would be stored in categories, and within categories, you can check a box to make the font appear in the "favourites" category on top. Uncheck to make it disappear again.
This could solve pre-rendering issues: fonts will only render once you open a category. I'm not a font expert so I don't know how they should be categorized though.
I'm aware that Inkscape doesn't have that widget, but it totally should, especially for managing the fonts drop-down. It's really handy for managing the dozens of modes in Krita, I just have 5~6 favourites and I can ignore the rest, but still access them easily on the rare occasions when I need them.
------------------------------
Message: 3 Date: Thu, 18 Apr 2013 13:10:58 +0200 From: Stojan Dimitrovski <sdimitrovski@...400...> Subject: [Inkscape-devel] GSoC13: Text Tool Improvements To: inkscape-devel@lists.sourceforge.net Message-ID: <CALTcmgnhPXwOv+9tFNO3A+7G7nK7sYOw2V1u1euT2LMhCuVtvA@...401...> Content-Type: text/plain; charset="utf-8"
Hello everyone,
I'm Stojan Dimitrovski, a sophomore from Macedonia. I'm currently studying Computer Science at Ss. Cyril and Methodius University in Skopje.
I am considering applying for Inkscape on GSoC13.
I have a few ideas on improving the current text tool, particularly its user interface and some of its underlying features and implementation.
Here are some of those ideas:
- Typefaces' names should be rendered in the glyphs they describe if such exist. Example: Helvetica should be rendered in Helvetica, Garamond in Garamond, etc. Icon typefaces are rendered by the fallback GUI typeface on the system.
- There should be a live preview / comparison of typefaces interface which will allow for a better and faster typeface selection. Inspired by typeface pickers like the one in TypeKit or similar.
- There should be a character-preview of a typeface, which will show all of the glyphs in a typeface that are defined for it (and make it easy for those glyphs to be inserted into text). This is primarily useful when using icon typefaces (like Font Awesome from Twitter Bootstrap fame).
- Improved handling of different variants, weights, styles of typefaces. (Current implementation is a bit flaky handling this.)
- Implement a system for SVG font typesetting (actually be able to use the SVG fonts to render text inside Inkscape).
- Improve the SVG font interfaces, they really need some love.
I'd like to hear your suggestions and comments before I embark on doing mockups of the interface and thinking about the implementation.
I should also mention that I'm fluent in the technologies that Inkscape uses, especially in GTK+ (2, 3), GObject, GLib, C / C++. I have general knowledge of the SVG standard.
I've been using Inkscape since version 0.45 and have an understanding of its features and workflow.
The free-software movement, communities and development philosophies are not new to me.
Regards, Stojan Dimitrovski

On Thu, 18 Apr 2013 08:03:01 -0700 (PDT) Valerie <valerie_vk@...36...> wrote:
Fonts would be stored in categories, and within categories, you can check a box to make the font appear in the "favourites" category on top. Uncheck to make it disappear again.
Maybe tags instead of categories? Fonts will occur in many categories (heavy, bold, antique, cursive, festive, etc.) so while each font could occur multiple times, in different categories, an interface which used tags rather than categories would make it easier to find "heavy, antique, cursive" fonts for example.
Cheers -Terry

Good point, that's even better! Then you can just tag your favourite brushes and leave the corresponding tag in the search field for fast filtering.
________________________________ From: Terry Brown <terry_n_brown@...36...> To: inkscape-devel@lists.sourceforge.net Cc: Valerie <valerie_vk@...36...> Sent: Thursday, April 18, 2013 11:15 PM Subject: Re: [Inkscape-devel] GSoC13: Text Tool Improvements
On Thu, 18 Apr 2013 08:03:01 -0700 (PDT) Valerie <valerie_vk@...36...> wrote:
Fonts would be stored in categories, and within categories, you can check a box to make the font appear in the "favourites" category on top. Uncheck to make it disappear again.
Maybe tags instead of categories? Fonts will occur in many categories (heavy, bold, antique, cursive, festive, etc.) so while each font could occur multiple times, in different categories, an interface which used tags rather than categories would make it easier to find "heavy, antique, cursive" fonts for example.
Cheers -Terry

I'd like to thank all of you for providing your input. Shows that the text tool needs improvement.
Firstly, I believe I wasn't clear enough. I'm thinking primarily on reworking the text-tool dialogs and such (almost anything under the Text menu). Not so much the toolbar of the text tool, although I see some improvements that can be made there also.
Responses inline:
On Thu, Apr 18, 2013 at 2:30 PM, Tavmjong Bah <tavmjong@...8...> wrote:
- Typefaces' names should be rendered in the glyphs they describe
if such exist. Example: Helvetica should be rendered in Helvetica, Garamond in Garamond, etc. Icon typefaces are rendered by the fallback GUI typeface on the system.
I am not so sure about this one. What if the typeface doesn't include the glyphs (say a Hindi font)?
There are, of course, ways around this that can properly clarify the situation for the user. I'm thinking that it would probably be much wiser to have the name of the font (system typeface) displayed alongside of a sample text of the font. There can and should be a subset analysis done to see which characters the font allows for, and have the display text set according to that and the user's locale. If all else fails, the display of the typeface can just be a standard list of glyphs (icon typefaces).
Such an example would be, say having the text: Good morning, הבוקר טוב (Hebrew for Good morning), Добро утро (Macedonian), καλημέρα (Greek).
According to the subset of the glyphs supported by the typeface and the user's locale we could have: a full LGC typeface would display either Good morning, καλημέρα or Добро утро to a user that has their locale set to the languages of that text. If the typeface supports a subset of LGC Inkscape could, for example, choose the more appropriate text for that subset disregarding the locale, and if that fails, we can have glyphs shown as they appear in the character set of the typeface.
On Thu, Apr 18, 2013 at 3:00 PM, Martin Owens <doctormo@...400...> wrote:
Some people have thousands of fonts. This might slow down the menu.
Some pre-rendering and heavy sorting and filtering could solve this.
Yes, this feature will probably not work for the menu. Pre-rendering and other smarts can only help, but I doubt it that those will be useful. I wouldn't add such a feature to the text tool font selection menu in the toolbar. A far better idea would be to have a preview, either in the toolbar (not a personal favorite, has issues), as a popup window on item hover (useful, but maybe distracting) displaying sample text or sample text from the current selected text element being edited, or an immediate preview on hover inside the Inkscape document (may be somewhat slow).
On Thu, Apr 18, 2013 at 3:00 PM, Martin Owens <doctormo@...400...> wrote:
Regarding weights and styles, there seems to be a lot of work to do to properly reign in the fonts selection. When I go to select a font, either I know the name of the font I'm after and I can type it in, or I don't know the name and what I really want is to browse.
This browsing work-flow needs, I think, to be implemented using a tree-type structure. Something akin to submenus where top level would be descriptive e.g. Serif, Symbol, Sans Serif, Comic etc. and from there I can select a font inside. The actual categorisation should use data available in the font definition and is debatable.
Actually what I'd like is something clever where the number of fonts is considered. If you only have < 20 fonts, a direct menu isn't a problem. If you have > 100 fonts in the serif category, then a further breakdown should be done somehow.
I agree, and this is pretty much what I had in mind.
We use Pango for text layout and Pango does not have the ability to handle
Surely the answer is to stop using pango for text layout? Even if it took a large project or several GSoC projects to make a full switch. I'm not sure patching pango up when we already use cairo makes much sense.
Pango does have limitations, but the truth is we don't need to handle user fonts. We need to handle system fonts (fonts in ~/.fonts are system fonts), of which Pango does a remarkably great job. Now, on that note there could probably be more intense work in the field of opening font files and reading them on our own to probably extract more information. I will need to research this further.
For now, I think Pango satisfies the needs.
On Thu, Apr 18, 2013 at 5:15 PM, Terry Brown <terry_n_brown@...36...> wrote:
On Thu, 18 Apr 2013 08:03:01 -0700 (PDT) Valerie <valerie_vk@...36...> wrote:
Fonts would be stored in categories, and within categories, you can check a box to make the font appear in the "favourites" category on top. Uncheck to make it disappear again.
Maybe tags instead of categories? Fonts will occur in many categories (heavy, bold, antique, cursive, festive, etc.) so while each font could occur multiple times, in different categories, an interface which used tags rather than categories would make it easier to find "heavy, antique, cursive" fonts for example.
Yes, this is a great idea!
Again, thank you all for the suggestions!
Regards, Stojan

El 18/04/13 18:25, Stojan Dimitrovski escribió:
I'd like to thank all of you for providing your input. Shows that the text tool needs improvement.
From my user point of view the text tool indeed needs improvements, but in other areas. The fonts handling could use some improvements, of course, but there are things that are far more important than that for an everyday user. Flowed text management is one of those things. Currently the flowed text management is extremely limited, so limited that it becomes almost useless. It doesn't have hyphenation/word break, there is no way to add line spacing before and after paragraphs, styling text inside a paragraph is quite painful, etc. It would be nice also to be able to use columns and margins inside the text block.
Don't get me wrong, I'm not against the proposed enhancements (although I have some doubts about some of them), but as a professional designer using Inkscape for my job, I can live without them, but having to work without proper flowed text is a serious limitation (I end up composing my paragraph text in Scribus, and as you may know there is no way to bring that text back to inkscape and keep it editable).
I think there are better uses for a GSoC slot.
Gez.
participants (4)
-
Guillermo Espertino (Gez)
-
Stojan Dimitrovski
-
Terry Brown
-
Valerie