Once, early in my career, I needed a high resolution version of my company’s logo. Any hand drawing of this logo would have been ugly, so I decided to write a small program in Tcl/Tk that drew the image and generated PostScript. This had the advantage of producing an infinitely scalable, mathematically perfect version of the company logo (which happened to be quite regular).
Well, times have changed, but I’m still doing company logos for projects that I’m working on. Now I have a new tool in my belt: the Gimp (http://www.gimp.org). The Gimp is a powerful, Photoshop-like image manipulation program with a plug-in interface. Unlike Photoshop, this plug-in interface is self-documenting and extensible. Also, the Gimp allows programmers complete control from their favorite language. Mine is Perl, of course, but APIs also exist for Scheme, C, and C++.
As an introduction to the Gimp and its Perl interface, I will go over what you might want to do with the Gimp. If you’re familiar with the Gimp, you might want to skip this section. Then I’ll discuss where you can get the tools you need, and finally I’ll walk you through a simple Gimp/Perl script that generates the logo for my current company (nothing like a shameless plug). Figure 29-1 shows the beginning of this process. This is a very simple example, but it has the advantage of being small enough to analyze in depth.
The Gimp (which is an acronym for GNU Image Manipulation Program) ...