I spend a fair bit of time manually shrinking icons then trying to
touch them up to look decent.
I figure this process aught to be automatable.
1. when shrinking it does antialiasing.
2. when shrinking it does antialiasing with background transparency
(png).
3. maybe if it were really clever it could try to extract regions of
the icon logically, then blow the icon up and smooth the regions and
sharpen the edge using spline curves, then start from that point to
shrink down again, rather than trying to match the precise pixel grid
of the original.
the idea might be you create icons on a large scale, perhaps starting
with photos, and let the software deal with much of the work of
dealing with low res pixelation, much the way PostScript fonts are
rendered.
has anyone tackled a project like this?

Signature
Canadian Mind Products, Roedy Green.
http://mindprod.com Java custom programming, consulting and coaching.
Luc The Perverse - 29 Jan 2006 09:31 GMT
>I spend a fair bit of time manually shrinking icons then trying to
> touch them up to look decent.
[quoted text clipped - 18 lines]
>
> has anyone tackled a project like this?
I had annoying problems with background transparency colors, when I was
trying to make a spinning object. The stupid paint program antialiased the
background color leaving a horrible tracer around the spinning object.
I looked for something [free] that would mind a transparency and found
nothing.
--
LTP
:)
Chris Uppal - 29 Jan 2006 12:01 GMT
> 3. maybe if it were really clever it could try to extract regions of
> the icon logically, then blow the icon up and smooth the regions and
> sharpen the edge using spline curves, then start from that point to
> shrink down again, rather than trying to match the precise pixel grid
> of the original.
Not quite the same, but I have experimented a little with using
PostScript to define icons' content.
I haven't really got it to "production" quality yet, but I use Aladdin
Ghostscript to render the images at different depths and resolutions
(anti-aliased for both text and graphics) and then assemble the results
into a Windows .ICO file. That's all done programmatically. I don't
have a solution for transparency, though, since Ghostscript doesn't
(yet?) understand alpha-blending.
-- chris
Thomas Weidenfeller - 30 Jan 2006 08:42 GMT
> the idea might be you create icons on a large scale, perhaps starting
> with photos, and let the software deal with much of the work of
> dealing with low res pixelation, much the way PostScript fonts are
> rendered.
PostScript fonts are vector data, that is something completely different
than pixels. Also, good fonts have so called hints (data in the font
file), which is additional information for the font-rendering in a
particular size. Which means, their resizing is not done fully automatic
from just the vector data. Instead at one point the font designer sat
down and optimized the font resizing for particular sizes by providing
the hinting.
> has anyone tackled a project like this?
It's a long time ago that I looked into something like this. Shrinking a
raster image is actually a re-sampling of the image data, which involves
our good old friend, the Nyquist-Shannon sampling theorem. So the
classic way to calculate a smaller image (consisting of fewer samples
than the original), is to run a digital filter to get things
mathematically right. However, getting things mathematically right does
not guarantee that things look nice.
Any book about image processing should contain a bunch of typical
filters which you might want to try.
/Thomas

Signature
The comp.lang.java.gui FAQ:
ftp://ftp.cs.uu.nl/pub/NEWS.ANSWERS/computer-lang/java/gui/faq
http://www.uni-giessen.de/faq/archiv/computer-lang.java.gui.faq/