Copyright © 2008, 2009 Arndt Roger Schneider
Designing icons is never an easy task. No icon inside
a Graphical User Interface stands alone. Any icon is surrounded by other
icons. Thus an icon can never be designed by itself.
Most icons are based on a real-world metaphor, such as
a floppy-disk for "Save". These metaphors often become
extinct. As with the floppy-disk example. Forcing the
user to learn another computer-idiosyncratic symbol.
Designing an icon-set for an application is similar to
crafting a font.
The art of printing is interwoven with font design.
There are extremely few font designers in the
entire history of printing.
Font design has a huge inherent complexity,
which requires to test and combine various glyphs with
each other. An icon-set burdens similar demands on the
designers. And all to often the designer lacks the
necessary skills.
Creating a font means to repeat
certain characteristics in each glyph, and above all
to design them for being a part of an icon-set.
Font design is always devoid of colour, which is
helpful during designing an icon-set,too. The first
design phase can thus concentrate on »shape«,
»outline«, »white space« and repeating characteristics
for each »glyph«.
For Goolbar and Gstripes everything needed is done
at this point. You may deploy the resulting glyph as
you see fit, and do not have to care about
»resolution« or »colour« anymore.
As a bonus, drawing the icon-set is incredible
fast. The font renderer are the fastest vectorization
frameworks inside of software. It is faster to
render a font then mapping an image on screen. This is
due to the memory footprint of images. Not the CPU or
GPU determine the speed of an excessively bitmapped
interface, the memory does.
Well, »glyph«s are monochrome and perhaps the application
needs some spot-colour to lighten things a bit –or just
for marketing reasons.
Then it is time to create a vector. Currently there
are two vector types possible a) based on Tk canvas.
And b) based on TkZinc 3.3.6. These vector types are not
compatible to each other.
In addition, TkPath can be used inside a Tk canvas,
and is strongly recommended –forget about quality
when designing vectors inside of a vanilla Tk canvas!
TkZinc 3.3.6
vectors are supported through the Zoolbar, only.
TkPath 0.3 introduces »groups«. A vector should be founded on
a group. Only the group shall receive the provided tags. Any
element inside the group must not use the provided
tags. Transformations can be used on elements inside the
vector-group –not on the founding group.
Colour is a powerful design tool, and can destroy a
design! Try to use the same spot colour in your icon-set.
Perhaps, two spot colours! Otherwise rely on gradients
and shading of these spot colours to differentiate certain
aspects.
The BLT package features vector images
based on Encapsulated PostScript®. Consider using BLT, whenever the
application requires it anyway.