mirror of https://github.com/GNOME/gimp.git
123 lines
4.3 KiB
Plaintext
123 lines
4.3 KiB
Plaintext
====================
|
|
Icon themes for GIMP
|
|
====================
|
|
|
|
---------------
|
|
Released Themes
|
|
---------------
|
|
|
|
GIMP 2.10 comes with 4 icon themes:
|
|
|
|
(1) Symbolic: the default icon theme (made for dark themes).
|
|
We follow GNOME guidelines when possible:
|
|
https://developer.gnome.org/hig/stable/icons-and-artwork.html.en
|
|
|
|
(2) Symbolic-Inverted: programmatically generated from the "Symbolic"
|
|
icon theme by inverting colors. Icon designers should not create icons
|
|
specifically for "Symbolic-Inverted".
|
|
|
|
Note: exceptions on the icon generation can be applied.
|
|
For instance "gimp-default-colors" and "gimp-toilet-paper" icons are not
|
|
inverted. And "gimp-color-picker-black" is generated by inverting
|
|
"gimp-color-picker-white" and reciprocally.
|
|
Ask for developer help when such exceptions are needed.
|
|
|
|
(3) Color: a new color icon theme, also designed with vector graphics.
|
|
|
|
(4) Legacy: this icon theme which contains the old GIMP 2.8 icons. It is
|
|
not maintained anymore and we are not expecting new icons for Legacy.
|
|
Yet since we keep them in the source tree for now, we would accept
|
|
updates.
|
|
|
|
The Symbolic icon theme are our main target since they are considered
|
|
better suited for graphics work (less visual distraction). Color icons
|
|
are kept as fall-over since some users still prefer them.
|
|
|
|
----------------
|
|
Adding new icons
|
|
----------------
|
|
|
|
- Add new icons in the single SVG file inside their respective
|
|
directories, i.e. `icons/Symbolic/symbolic-scalable.svg` for symbolic
|
|
icons and `icons/Color/color-scalable.svg` for color icons.
|
|
|
|
A single file allows easier reuse of material, and easy overview of all
|
|
existing icons which simplifies consistent styling…
|
|
|
|
- The contents of the SVG file should be organized for easy management
|
|
and easy contribution. You can visually group similar icons, make use
|
|
of layers, whatever is necessary for organization.
|
|
|
|
- You should group all parts of a single icon into a single object and
|
|
id this object with the icon name. For instance the object containing
|
|
the Move Tool icon should be id-ed: "gimp-tool-move".
|
|
|
|
- Make sure the object has the right expected size. A good trick is to
|
|
group with a square of the right size, made invisible.
|
|
|
|
- Export the icon as PNG and SVG into the appropriate size directory.
|
|
|
|
Ideally this step should be done at build time, but we could not find
|
|
yet a reliable way to extract icons out of the single SVG file without
|
|
using crazy build dependencies (like Inkscape). So this is done by hand
|
|
for the time being.
|
|
|
|
- Add the icons in `icons/icon-list.mk`.
|
|
This file is shared by all 3 maintained icon themes (Symbolic,
|
|
Symbolic-Inverted and Color), so you must make sure that you have the
|
|
Symbolic as well as the Color icons drawn before adding them.
|
|
|
|
Pixel perfection
|
|
----------------
|
|
|
|
Even as vector images, icons should be pixel-perfect when possible.
|
|
Therefore the first step before making an icon is to determine which
|
|
size it is supposed to appear at.
|
|
If the icon could appear in several sizes:
|
|
|
|
- if the sizes are multiples, just design the smaller size. The bigger
|
|
icon will stay pixel-perfect when scaled by a multiple. So for instance,
|
|
if you want the icon to be 12x12 and 24x24, just design the 12x12 icon.
|
|
|
|
- of course, if the size difference is big enough, you may want to
|
|
create a new version with added details, even when this is a multiple
|
|
(i.e. 12x12 and 192x192 may be different designs). These are design
|
|
choices.
|
|
|
|
- when sizes are no multiple (i.e. 16x16 and 24x24), it is preferred to
|
|
have 2 pixel-perfect versions.
|
|
|
|
- if time is missing, creating the smaller size only is a first step
|
|
and is acceptable.
|
|
|
|
Sizes
|
|
-----
|
|
|
|
Some known sizes:
|
|
|
|
- tool icons: 16x16 and 22x22.
|
|
- dock tab icons: 16x16 and 24x24.
|
|
- menu icons: 16x16.
|
|
[…]
|
|
|
|
-------------
|
|
Testing icons
|
|
-------------
|
|
|
|
Menu items and buttons are not supposed to have icons any longer. Yet
|
|
our actions have icons and some desktop environments would enable them
|
|
in menus and buttons regardless. To test how we do on systems which do
|
|
so, set the environment variable `GIMP_ICONS_LIKE_A_BOSS`.
|
|
|
|
For instance, start GIMP like this:
|
|
|
|
GIMP_ICONS_LIKE_A_BOSS=1 gimp-2.99
|
|
|
|
To test high (or low) density icons, without having to change the
|
|
scaling factor of your whole desktop, just change the `GDK_SCALE`
|
|
environment variable.
|
|
For instance, run GIMP like this to simulate a scaling factor of 2
|
|
(every icons and text would typically double):
|
|
|
|
GDK_SCALE=2 gimp-2.99
|